packages feed

fltkhs (empty) → 0.1.0.0

raw patch · 402 files changed

+76405/−0 lines, 402 filesdep +basedep +bytestringdep +fltkhsbuild-type:Customsetup-changedbinary-added

Dependencies added: base, bytestring, fltkhs, process

Files

+ .git/HEAD view
@@ -0,0 +1,1 @@+ref: refs/heads/master
+ .git/config view
@@ -0,0 +1,11 @@+[core]+	repositoryformatversion = 0+	filemode = true+	bare = false+	logallrefupdates = true+[remote "origin"]+	url = http://github.com/deech/fltkhs+	fetch = +refs/heads/*:refs/remotes/origin/*+[branch "master"]+	remote = origin+	merge = refs/heads/master
+ .git/description view
@@ -0,0 +1,1 @@+Unnamed repository; edit this file 'description' to name the repository.
+ .git/hooks/applypatch-msg.sample view
@@ -0,0 +1,15 @@+#!/bin/sh+#+# An example hook script to check the commit log message taken by+# applypatch from an e-mail message.+#+# The hook should exit with non-zero status after issuing an+# appropriate message if it wants to stop the commit.  The hook is+# allowed to edit the commit message file.+#+# To enable this hook, rename this file to "applypatch-msg".++. git-sh-setup+test -x "$GIT_DIR/hooks/commit-msg" &&+	exec "$GIT_DIR/hooks/commit-msg" ${1+"$@"}+:
+ .git/hooks/commit-msg.sample view
@@ -0,0 +1,24 @@+#!/bin/sh+#+# An example hook script to check the commit log message.+# Called by "git commit" with one argument, the name of the file+# that has the commit message.  The hook should exit with non-zero+# status after issuing an appropriate message if it wants to stop the+# commit.  The hook is allowed to edit the commit message file.+#+# To enable this hook, rename this file to "commit-msg".++# Uncomment the below to add a Signed-off-by line to the message.+# Doing this in a hook is a bad idea in general, but the prepare-commit-msg+# hook is more suited to it.+#+# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p')+# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1"++# This example catches duplicate Signed-off-by lines.++test "" = "$(grep '^Signed-off-by: ' "$1" |+	 sort | uniq -c | sed -e '/^[ 	]*1[ 	]/d')" || {+	echo >&2 Duplicate Signed-off-by lines.+	exit 1+}
+ .git/hooks/post-update.sample view
@@ -0,0 +1,8 @@+#!/bin/sh+#+# An example hook script to prepare a packed repository for use over+# dumb transports.+#+# To enable this hook, rename this file to "post-update".++exec git update-server-info
+ .git/hooks/pre-applypatch.sample view
@@ -0,0 +1,14 @@+#!/bin/sh+#+# An example hook script to verify what is about to be committed+# by applypatch from an e-mail message.+#+# The hook should exit with non-zero status after issuing an+# appropriate message if it wants to stop the commit.+#+# To enable this hook, rename this file to "pre-applypatch".++. git-sh-setup+test -x "$GIT_DIR/hooks/pre-commit" &&+	exec "$GIT_DIR/hooks/pre-commit" ${1+"$@"}+:
+ .git/hooks/pre-commit.sample view
@@ -0,0 +1,50 @@+#!/bin/sh+#+# An example hook script to verify what is about to be committed.+# Called by "git commit" with no arguments.  The hook should+# exit with non-zero status after issuing an appropriate message if+# it wants to stop the commit.+#+# To enable this hook, rename this file to "pre-commit".++if git rev-parse --verify HEAD >/dev/null 2>&1+then+	against=HEAD+else+	# Initial commit: diff against an empty tree object+	against=4b825dc642cb6eb9a060e54bf8d69288fbee4904+fi++# If you want to allow non-ascii filenames set this variable to true.+allownonascii=$(git config hooks.allownonascii)++# Redirect output to stderr.+exec 1>&2++# Cross platform projects tend to avoid non-ascii filenames; prevent+# them from being added to the repository. We exploit the fact that the+# printable range starts at the space character and ends with tilde.+if [ "$allownonascii" != "true" ] &&+	# Note that the use of brackets around a tr range is ok here, (it's+	# even required, for portability to Solaris 10's /usr/bin/tr), since+	# the square bracket bytes happen to fall in the designated range.+	test $(git diff --cached --name-only --diff-filter=A -z $against |+	  LC_ALL=C tr -d '[ -~]\0' | wc -c) != 0+then+	echo "Error: Attempt to add a non-ascii file name."+	echo+	echo "This can cause problems if you want to work"+	echo "with people on other platforms."+	echo+	echo "To be portable it is advisable to rename the file ..."+	echo+	echo "If you know what you are doing you can disable this"+	echo "check using:"+	echo+	echo "  git config hooks.allownonascii true"+	echo+	exit 1+fi++# If there are whitespace errors, print the offending file names and fail.+exec git diff-index --check --cached $against --
+ .git/hooks/pre-push.sample view
@@ -0,0 +1,53 @@+#!/bin/sh++# An example hook script to verify what is about to be pushed.  Called by "git+# push" after it has checked the remote status, but before anything has been+# pushed.  If this script exits with a non-zero status nothing will be pushed.+#+# This hook is called with the following parameters:+#+# $1 -- Name of the remote to which the push is being done+# $2 -- URL to which the push is being done+#+# If pushing without using a named remote those arguments will be equal.+#+# Information about the commits which are being pushed is supplied as lines to+# the standard input in the form:+#+#   <local ref> <local sha1> <remote ref> <remote sha1>+#+# This sample shows how to prevent push of commits where the log message starts+# with "WIP" (work in progress).++remote="$1"+url="$2"++z40=0000000000000000000000000000000000000000++IFS=' '+while read local_ref local_sha remote_ref remote_sha+do+	if [ "$local_sha" = $z40 ]+	then+		# Handle delete+	else+		if [ "$remote_sha" = $z40 ]+		then+			# New branch, examine all commits+			range="$local_sha"+		else+			# Update to existing branch, examine new commits+			range="$remote_sha..$local_sha"+		fi++		# Check for WIP commit+		commit=`git rev-list -n 1 --grep '^WIP' "$range"`+		if [ -n "$commit" ]+		then+			echo "Found WIP commit in $local_ref, not pushing"+			exit 1+		fi+	fi+done++exit 0
+ .git/hooks/pre-rebase.sample view
@@ -0,0 +1,169 @@+#!/bin/sh+#+# Copyright (c) 2006, 2008 Junio C Hamano+#+# The "pre-rebase" hook is run just before "git rebase" starts doing+# its job, and can prevent the command from running by exiting with+# non-zero status.+#+# The hook is called with the following parameters:+#+# $1 -- the upstream the series was forked from.+# $2 -- the branch being rebased (or empty when rebasing the current branch).+#+# This sample shows how to prevent topic branches that are already+# merged to 'next' branch from getting rebased, because allowing it+# would result in rebasing already published history.++publish=next+basebranch="$1"+if test "$#" = 2+then+	topic="refs/heads/$2"+else+	topic=`git symbolic-ref HEAD` ||+	exit 0 ;# we do not interrupt rebasing detached HEAD+fi++case "$topic" in+refs/heads/??/*)+	;;+*)+	exit 0 ;# we do not interrupt others.+	;;+esac++# Now we are dealing with a topic branch being rebased+# on top of master.  Is it OK to rebase it?++# Does the topic really exist?+git show-ref -q "$topic" || {+	echo >&2 "No such branch $topic"+	exit 1+}++# Is topic fully merged to master?+not_in_master=`git rev-list --pretty=oneline ^master "$topic"`+if test -z "$not_in_master"+then+	echo >&2 "$topic is fully merged to master; better remove it."+	exit 1 ;# we could allow it, but there is no point.+fi++# Is topic ever merged to next?  If so you should not be rebasing it.+only_next_1=`git rev-list ^master "^$topic" ${publish} | sort`+only_next_2=`git rev-list ^master           ${publish} | sort`+if test "$only_next_1" = "$only_next_2"+then+	not_in_topic=`git rev-list "^$topic" master`+	if test -z "$not_in_topic"+	then+		echo >&2 "$topic is already up-to-date with master"+		exit 1 ;# we could allow it, but there is no point.+	else+		exit 0+	fi+else+	not_in_next=`git rev-list --pretty=oneline ^${publish} "$topic"`+	/usr/bin/perl -e '+		my $topic = $ARGV[0];+		my $msg = "* $topic has commits already merged to public branch:\n";+		my (%not_in_next) = map {+			/^([0-9a-f]+) /;+			($1 => 1);+		} split(/\n/, $ARGV[1]);+		for my $elem (map {+				/^([0-9a-f]+) (.*)$/;+				[$1 => $2];+			} split(/\n/, $ARGV[2])) {+			if (!exists $not_in_next{$elem->[0]}) {+				if ($msg) {+					print STDERR $msg;+					undef $msg;+				}+				print STDERR " $elem->[1]\n";+			}+		}+	' "$topic" "$not_in_next" "$not_in_master"+	exit 1+fi++<<\DOC_END++This sample hook safeguards topic branches that have been+published from being rewound.++The workflow assumed here is:++ * Once a topic branch forks from "master", "master" is never+   merged into it again (either directly or indirectly).++ * Once a topic branch is fully cooked and merged into "master",+   it is deleted.  If you need to build on top of it to correct+   earlier mistakes, a new topic branch is created by forking at+   the tip of the "master".  This is not strictly necessary, but+   it makes it easier to keep your history simple.++ * Whenever you need to test or publish your changes to topic+   branches, merge them into "next" branch.++The script, being an example, hardcodes the publish branch name+to be "next", but it is trivial to make it configurable via+$GIT_DIR/config mechanism.++With this workflow, you would want to know:++(1) ... if a topic branch has ever been merged to "next".  Young+    topic branches can have stupid mistakes you would rather+    clean up before publishing, and things that have not been+    merged into other branches can be easily rebased without+    affecting other people.  But once it is published, you would+    not want to rewind it.++(2) ... if a topic branch has been fully merged to "master".+    Then you can delete it.  More importantly, you should not+    build on top of it -- other people may already want to+    change things related to the topic as patches against your+    "master", so if you need further changes, it is better to+    fork the topic (perhaps with the same name) afresh from the+    tip of "master".++Let's look at this example:++		   o---o---o---o---o---o---o---o---o---o "next"+		  /       /           /           /+		 /   a---a---b A     /           /+		/   /               /           /+	       /   /   c---c---c---c B         /+	      /   /   /             \         /+	     /   /   /   b---b C     \       /+	    /   /   /   /             \     /+    ---o---o---o---o---o---o---o---o---o---o---o "master"+++A, B and C are topic branches.++ * A has one fix since it was merged up to "next".++ * B has finished.  It has been fully merged up to "master" and "next",+   and is ready to be deleted.++ * C has not merged to "next" at all.++We would want to allow C to be rebased, refuse A, and encourage+B to be deleted.++To compute (1):++	git rev-list ^master ^topic next+	git rev-list ^master        next++	if these match, topic has not merged in next at all.++To compute (2):++	git rev-list master..topic++	if this is empty, it is fully merged to "master".++DOC_END
+ .git/hooks/prepare-commit-msg.sample view
@@ -0,0 +1,36 @@+#!/bin/sh+#+# An example hook script to prepare the commit log message.+# Called by "git commit" with the name of the file that has the+# commit message, followed by the description of the commit+# message's source.  The hook's purpose is to edit the commit+# message file.  If the hook fails with a non-zero status,+# the commit is aborted.+#+# To enable this hook, rename this file to "prepare-commit-msg".++# This hook includes three examples.  The first comments out the+# "Conflicts:" part of a merge commit.+#+# The second includes the output of "git diff --name-status -r"+# into the message, just before the "git status" output.  It is+# commented because it doesn't cope with --amend or with squashed+# commits.+#+# The third example adds a Signed-off-by line to the message, that can+# still be edited.  This is rarely a good idea.++case "$2,$3" in+  merge,)+    /usr/bin/perl -i.bak -ne 's/^/# /, s/^# #/#/ if /^Conflicts/ .. /#/; print' "$1" ;;++# ,|template,)+#   /usr/bin/perl -i.bak -pe '+#      print "\n" . `git diff --cached --name-status -r`+#	 if /^#/ && $first++ == 0' "$1" ;;++  *) ;;+esac++# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p')+# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1"
+ .git/hooks/update.sample view
@@ -0,0 +1,128 @@+#!/bin/sh+#+# An example hook script to blocks unannotated tags from entering.+# Called by "git receive-pack" with arguments: refname sha1-old sha1-new+#+# To enable this hook, rename this file to "update".+#+# Config+# ------+# hooks.allowunannotated+#   This boolean sets whether unannotated tags will be allowed into the+#   repository.  By default they won't be.+# hooks.allowdeletetag+#   This boolean sets whether deleting tags will be allowed in the+#   repository.  By default they won't be.+# hooks.allowmodifytag+#   This boolean sets whether a tag may be modified after creation. By default+#   it won't be.+# hooks.allowdeletebranch+#   This boolean sets whether deleting branches will be allowed in the+#   repository.  By default they won't be.+# hooks.denycreatebranch+#   This boolean sets whether remotely creating branches will be denied+#   in the repository.  By default this is allowed.+#++# --- Command line+refname="$1"+oldrev="$2"+newrev="$3"++# --- Safety check+if [ -z "$GIT_DIR" ]; then+	echo "Don't run this script from the command line." >&2+	echo " (if you want, you could supply GIT_DIR then run" >&2+	echo "  $0 <ref> <oldrev> <newrev>)" >&2+	exit 1+fi++if [ -z "$refname" -o -z "$oldrev" -o -z "$newrev" ]; then+	echo "usage: $0 <ref> <oldrev> <newrev>" >&2+	exit 1+fi++# --- Config+allowunannotated=$(git config --bool hooks.allowunannotated)+allowdeletebranch=$(git config --bool hooks.allowdeletebranch)+denycreatebranch=$(git config --bool hooks.denycreatebranch)+allowdeletetag=$(git config --bool hooks.allowdeletetag)+allowmodifytag=$(git config --bool hooks.allowmodifytag)++# check for no description+projectdesc=$(sed -e '1q' "$GIT_DIR/description")+case "$projectdesc" in+"Unnamed repository"* | "")+	echo "*** Project description file hasn't been set" >&2+	exit 1+	;;+esac++# --- Check types+# if $newrev is 0000...0000, it's a commit to delete a ref.+zero="0000000000000000000000000000000000000000"+if [ "$newrev" = "$zero" ]; then+	newrev_type=delete+else+	newrev_type=$(git cat-file -t $newrev)+fi++case "$refname","$newrev_type" in+	refs/tags/*,commit)+		# un-annotated tag+		short_refname=${refname##refs/tags/}+		if [ "$allowunannotated" != "true" ]; then+			echo "*** The un-annotated tag, $short_refname, is not allowed in this repository" >&2+			echo "*** Use 'git tag [ -a | -s ]' for tags you want to propagate." >&2+			exit 1+		fi+		;;+	refs/tags/*,delete)+		# delete tag+		if [ "$allowdeletetag" != "true" ]; then+			echo "*** Deleting a tag is not allowed in this repository" >&2+			exit 1+		fi+		;;+	refs/tags/*,tag)+		# annotated tag+		if [ "$allowmodifytag" != "true" ] && git rev-parse $refname > /dev/null 2>&1+		then+			echo "*** Tag '$refname' already exists." >&2+			echo "*** Modifying a tag is not allowed in this repository." >&2+			exit 1+		fi+		;;+	refs/heads/*,commit)+		# branch+		if [ "$oldrev" = "$zero" -a "$denycreatebranch" = "true" ]; then+			echo "*** Creating a branch is not allowed in this repository" >&2+			exit 1+		fi+		;;+	refs/heads/*,delete)+		# delete branch+		if [ "$allowdeletebranch" != "true" ]; then+			echo "*** Deleting a branch is not allowed in this repository" >&2+			exit 1+		fi+		;;+	refs/remotes/*,commit)+		# tracking branch+		;;+	refs/remotes/*,delete)+		# delete tracking branch+		if [ "$allowdeletebranch" != "true" ]; then+			echo "*** Deleting a tracking branch is not allowed in this repository" >&2+			exit 1+		fi+		;;+	*)+		# Anything else (is there anything else?)+		echo "*** Update hook: unknown type of update to ref $refname of type $newrev_type" >&2+		exit 1+		;;+esac++# --- Finished+exit 0
+ .git/index view

binary file changed (absent → 35792 bytes)

+ .git/info/exclude view
@@ -0,0 +1,6 @@+# git ls-files --others --exclude-from=.git/info/exclude+# Lines that start with '#' are comments.+# For a project mostly in C, the following would be a good set of+# exclude patterns (uncomment them if you want to use them):+# *.[oa]+# *~
+ .git/logs/HEAD view
@@ -0,0 +1,1 @@+0000000000000000000000000000000000000000 dd91a893ef0896be0748af993a8bc2b654f68de5 deech <aditya.siram@gmail.com> 1424483718 -0600	clone: from http://github.com/deech/fltkhs
+ .git/logs/refs/heads/master view
@@ -0,0 +1,1 @@+0000000000000000000000000000000000000000 dd91a893ef0896be0748af993a8bc2b654f68de5 deech <aditya.siram@gmail.com> 1424483718 -0600	clone: from http://github.com/deech/fltkhs
+ .git/logs/refs/remotes/origin/HEAD view
@@ -0,0 +1,1 @@+0000000000000000000000000000000000000000 dd91a893ef0896be0748af993a8bc2b654f68de5 deech <aditya.siram@gmail.com> 1424483718 -0600	clone: from http://github.com/deech/fltkhs
+ .git/objects/pack/pack-81ea553411e65ea3b77abc8b515369312788978a.idx view

binary file changed (absent → 106156 bytes)

+ .git/objects/pack/pack-81ea553411e65ea3b77abc8b515369312788978a.pack view

binary file changed (absent → 2041759 bytes)

+ .git/packed-refs view
@@ -0,0 +1,3 @@+# pack-refs with: peeled fully-peeled +8943336c272ff8dab557abb3ee781cb1d209bd32 refs/remotes/origin/ABI+dd91a893ef0896be0748af993a8bc2b654f68de5 refs/remotes/origin/master
+ .git/refs/heads/master view
@@ -0,0 +1,1 @@+dd91a893ef0896be0748af993a8bc2b654f68de5
+ .git/refs/remotes/origin/HEAD view
@@ -0,0 +1,1 @@+ref: refs/remotes/origin/master
+ .gitignore view
@@ -0,0 +1,23 @@+*.a+*.o+.\#*+executables/*+lib/*+./+*~+Makefile+aclocal.m4+autom4te.cache+config.guess+config.log+config.status+config.sub+configure+config.h+config.h.in+fltkhs.buildinfo+autoscan.log+object_files/*+c-examples/Makefile+c-src/Makefile+dist/*
+ LICENSE view
@@ -0,0 +1,21 @@+The MIT License (MIT)++Copyright (c) 2013 Aditya Siram ++Permission is hereby granted, free of charge, to any person obtaining a copy+of this software and associated documentation files (the "Software"), to deal+in the Software without restriction, including without limitation the rights+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+copies of the Software, and to permit persons to whom the Software is+furnished to do so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in+all copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN+THE SOFTWARE.
+ Makefile.in view
@@ -0,0 +1,22 @@+EXECUTABLEDIR = executables+LIBDIR = c-lib+SRC = c-src+SHARED_OBJECT_FILES = shared_object_files+STATIC_OBJECT_FILES = static_object_files+EXAMPLES = c-examples+DIRS = $(SRC) $(EXAMPLES)+CLEANUPDIRS = $(EXECUTABLEDIR) $(LIBDIR) $(OBJECT_FILES) $(SHARED_OBJECT_FILES) $(STATIC_OBJECT_FILES)+.SILENT:+.PHONY: src all clean+src:+	cd $(SRC); $(MAKE) all+examples: src+	cd $(EXAMPLES); $(MAKE) all+all: examples+clean:+	for dir in $(CLEANUPDIRS); do\+	 	echo "=== removing $$dir ===";\+		if [ -d "./$$dir" ];then     \+	 	  rm -rf $$dir; \+                fi \+	done
+ README.md view
@@ -0,0 +1,32 @@+Fltkhs - A Haskell Binding to the FLTK GUI Library+=============================================++Fltkhs aims to be a complete Haskell binding to the [FLTK GUI library] [1].++The rest of the documentation (including installation instructions and usage) is located in+src/Examples/Graphics/UI/LowLevel/FLTK/FLTKHS.hs. This is the primary module that needs to be+imported by every Fltkhs app and the entry point into the application.++This package does not yet install on Windows.++Abbreviated installation instructions are reproduced here:++- Download [FLTK 1.3.3] [2].+- Install with:+```+    > ./configure+    > make+    > make install+```++- Clone and install this repo:+```+    > git clone https://github.com/deech/fltkhs+    cabal install+```++- Test your installation by invoking: 'fltkhs-hello-world'.+++  [1]: http://www.fltk.org/index.php      "FLTK"+  [2]: http://www.fltk.org/software.php
+ Setup.hs view
@@ -0,0 +1,189 @@+import Data.Maybe(fromJust)+import Data.List(partition, isPrefixOf)+import Distribution.Simple.Compiler+import Distribution.Simple.Build+import Distribution.Simple.Configure+import Distribution.Simple.LocalBuildInfo+import Distribution.PackageDescription+import Distribution.Simple+import Distribution.System+import Distribution.Simple.Setup+import Distribution.Simple.Utils+import Distribution.Verbosity+import Distribution.Simple.Program(requireProgram, arProgram)+import Distribution.Simple.PreProcess+import System.IO.Unsafe (unsafePerformIO)+import qualified Distribution.Simple.Program.Ar    as Ar+import qualified Distribution.ModuleName as ModuleName+import Distribution.Simple.BuildPaths+import System.Directory(getCurrentDirectory, getDirectoryContents, copyFile, doesDirectoryExist)+import System.FilePath ( (</>), (<.>), takeExtension,+                         takeDirectory, replaceExtension, splitExtension, combine, takeBaseName)+import System.IO+import Debug.Trace+import Data.Graph+import qualified Distribution.Simple.GHC  as GHC+import qualified Distribution.Simple.JHC  as JHC+import qualified Distribution.Simple.LHC  as LHC+import qualified Distribution.Simple.UHC  as UHC++main = defaultMainWithHooks autoconfUserHooks {+         preConf = myPreConf,+         buildHook = myBuildHook,+         cleanHook = myCleanHook,+         copyHook = copyCBindings+       }++myPreConf args flags = do+   putStrLn "Running autoheader ..."+   rawSystemExit normal "autoheader" []+   putStrLn "Running autoconf ..."+   rawSystemExit normal "autoconf" []+   preConf autoconfUserHooks args flags++fltkcdir = unsafePerformIO getCurrentDirectory ++ "/c-lib"+fltkclib = "fltkc"+headerdir = unsafePerformIO getCurrentDirectory ++ "/c-src"+currentdir = unsafePerformIO getCurrentDirectory+getHeaders = unsafePerformIO $ do+  contents <- getDirectoryContents headerdir+  let headerFiles = filter (\f -> takeExtension f == ".h" -- keep the headers+                                  &&+                                  not (takeBaseName f `isPrefixOf` "Derived") -- but not the extra classes+                           ) contents+  return headerFiles+objectFileDir = unsafePerformIO getCurrentDirectory ++ "/static_object_files"+getObjectFileDirContents = getDirectoryContents objectFileDir++addIncludeDirs pd =+  let lib = (fromJust . library) pd+      bi = libBuildInfo lib+      ids = includeDirs bi+      bi' = bi {includeDirs = ids ++ [headerdir, currentdir]}+      lib' = lib {libBuildInfo = bi'}+  in+  pd {library = Just lib'}++addHeaders pd =+  let lib = (fromJust . library) pd+      bi = libBuildInfo lib+      is = includes bi+      headers = getHeaders+      bi' = bi {includes = is ++ headers}+      lib' = lib {libBuildInfo = bi'}+  in+  pd {library = Just lib'}++withFltkc op pd =+  let lib = (fromJust . library) pd+      bi = libBuildInfo lib+      elds = extraLibDirs bi+      els = extraLibs bi+      bi' = bi {extraLibs = els `op` [fltkclib], extraLibDirs = elds `op` [fltkcdir]}+      lib' = lib {libBuildInfo = bi'}+  in+    pd {library = Just lib'}++removeExecutables pd = pd {executables = []}++getHaskellObjects :: Library -> LocalBuildInfo+                  -> FilePath -> String -> Bool -> IO [FilePath]+getHaskellObjects lib lbi pref wanted_obj_ext allow_split_objs+  | splitObjs lbi && allow_split_objs = do+        let splitSuffix = if compilerVersion (compiler lbi) <+                             Version [6, 11] []+                          then "_split"+                          else "_" ++ wanted_obj_ext ++ "_split"+            dirs = [ pref </> (ModuleName.toFilePath x ++ splitSuffix)+                   | x <- libModules lib ]+        objss <- mapM getDirectoryContents dirs+        let objs = [ dir </> obj+                   | (objs',dir) <- zip objss dirs, obj <- objs',+                     let obj_ext = takeExtension obj,+                     '.':wanted_obj_ext == obj_ext ]+        return objs+  | otherwise  =+        return [ pref </> ModuleName.toFilePath x <.> wanted_obj_ext+               | x <- libModules lib ]++-- This copy-pasta is required because Distribution.Simple.Build does+-- not export buildExe.+buildExe :: Verbosity -> Distribution.Simple.Setup.Flag (Maybe Int)+                      -> PackageDescription -> LocalBuildInfo+                      -> Executable         -> ComponentLocalBuildInfo -> IO ()+buildExe verbosity numJobs pkg_descr lbi exe clbi =+  case compilerFlavor (compiler lbi) of+    GHC  -> GHC.buildExe  verbosity numJobs pkg_descr lbi exe clbi+    JHC  -> JHC.buildExe  verbosity         pkg_descr lbi exe clbi+    LHC  -> LHC.buildExe  verbosity         pkg_descr lbi exe clbi+    UHC  -> UHC.buildExe  verbosity         pkg_descr lbi exe clbi+    _    -> die "Building is not supported with this compiler."++myBuildHook pkg_descr local_bld_info user_hooks bld_flags =+  do fltkcBuilt <- doesDirectoryExist fltkcdir+     if not fltkcBuilt then+       do putStrLn "==Compiling C bindings=="+          rawSystemExit normal "make" ["src"]+       else return ()+     -- (buildHook autoconfUserHooks) pkg_descr local_bld_info user_hooks bld_flags+     let new_pkg_descr+           = removeExecutables . addHeaders . addIncludeDirs . withFltkc (++) $ pkg_descr+         new_local_bld_info = local_bld_info{localPkgDescr = new_pkg_descr}+         (libs, nonlibs)+           = partition+               (\ c ->+                  case c of+                      (CLibName, _, _) -> True+                      _ -> False)+               (componentsConfigs new_local_bld_info)+         lib_lbi = new_local_bld_info{componentsConfigs = libs}+     buildHook autoconfUserHooks new_pkg_descr lib_lbi user_hooks bld_flags+     let distPref = fromFlag (buildDistPref bld_flags)+         dbFile = distPref </> "package.conf.inplace"+         verbosity = fromFlag (buildVerbosity bld_flags)+         with_in_place+           = local_bld_info{withPackageDB =+                              withPackageDB local_bld_info ++ [SpecificPackageDB dbFile]}+         pref = buildDir local_bld_info+     withAllComponentsInBuildOrder pkg_descr with_in_place $+       \ comp clbi ->+         case comp of+             (CLib lib) -> do cobjs <- getObjectFileDirContents >>=+                                         return .+                                           map (combine objectFileDir) .+                                             filter (\ f -> takeExtension f == ".o")+                              hobjs <- getHaskellObjects lib with_in_place pref objExtension True+                              let staticObjectFiles = hobjs ++ cobjs+                              (arProg, _ ) <- requireProgram verbosity arProgram+                                               (withPrograms with_in_place)+                              let vanillaLibFilePath+                                    = pref </> mkLibName (head $ componentLibraries clbi)+                              Ar.createArLibArchive verbosity with_in_place vanillaLibFilePath+                                staticObjectFiles+             (CExe exe) -> do preprocessComponent pkg_descr comp+                                with_in_place+                                False+                                verbosity+                                []+                              buildExe verbosity (buildNumJobs bld_flags) pkg_descr+                                with_in_place+                                exe+                                clbi+             _ -> return ()++copyCBindings :: PackageDescription -> LocalBuildInfo -> UserHooks -> CopyFlags -> IO ()+copyCBindings pkg_descr lbi uhs flags = do+    (copyHook autoconfUserHooks) pkg_descr lbi uhs flags+    let libPref = libdir . absoluteInstallDirs pkg_descr lbi+                . fromFlag . copyDest+                $ flags+    rawSystemExit (fromFlag $ copyVerbosity flags) "cp"+        ["c-lib/libfltkc.a", libPref]+    case buildOS of+     Linux -> rawSystemExit (fromFlag $ copyVerbosity flags) "cp"+              ["c-lib/libfltkc.so", libPref]+     _ -> return ()++myCleanHook pd x uh cf = do+  rawSystemExit normal "make" ["clean"]+  cleanHook autoconfUserHooks pd x uh cf
+ c-examples/Makefile.in view
@@ -0,0 +1,79 @@+FLTKCONFIG=@FLTKCONFIG@+CXX = $(shell $(FLTKCONFIG) --cxx) $(shell $(FLTKCONFIG) --cxxflags) -Wall -DINTERNAL_LINKAGE -g -Icpp+LD = $(CXX) -shared+CC = $(shell $(FLTKCONFIG) --cc) $(shell $(FLTKCONFIG) --cflags) -Wall -g -I../c-src -I../ -I./+CXXLDFLAGS = @FLTKCONFIGCOMMAND@+ifeq '$(OS)' "Windows_NT"+EXEEXT = .exe+endif++EXAMPLES= \+  sanity_check.c \+	arc.c \+	bitmap.c \+	boxtype.c \+	browser.c \+	button.c \+	buttons.c \+	clock.c \+	colbrowser.c \+	color_chooser.c \+	cube.c \+	cursor.c \+	curve.c \+	device.c \+	doublebuffer.c \+	file_chooser.c \+	fonts.c \+	howto-add_fd-and-popen.c \+	howto-browser-with-icons.c \+	howto-drag-and-drop.c \+	howto-parse-args.c \+	howto-text-over-image-button.c \+	list_visuals.c \+	make_button_with_callback.c \+	make_input.c \+	make_tree.c \+	make_window.c \+	make_window_fullscreen.c \+	make_window_hide.c \+	make_window_resize.c \+	make_window_with_callback.c \+	make_window_with_width_height.c \+	menubar-add.c \+	nativefilechooser-simple-app.c \+	progress-simple.c \+	rgb.txt \+	table-as-container.c \+	table-simple.c \+	table-sort.c \+	table-spreadsheet.c \+	table-spreadsheet-with-keyboard-nav.c \+	table-with-keynav.c \+	tabs-simple.c \+	textdisplay-with-colors.c \+	texteditor-simple.c \+	tree-of-tables.c \+	tree-simple.c \+	wizard-simple.c++.SUFFIXES: .c $(EXEEXT)+.SILENT:+EXECUTABLEDIR = ../executables+LIBDIR = ../c-lib+OBJECTS = $(EXAMPLES:.c=$(EXEEXT))++all: $(OBJECTS)+.c$(EXEEXT):+	@echo "*** Building $@"+	$(CC) -c $^ -o $@.o+	test -d $(EXECUTABLEDIR) || mkdir $(EXECUTABLEDIR)+	test -d $(EXECUTABLEDIR)/pixmaps || cp -r pixmaps $(EXECUTABLEDIR)+	test -f $(EXECUTABLEDIR)/rgb.txt || cp rgb.txt $(EXECUTABLEDIR)+	$(CXX) -o $(EXECUTABLEDIR)/$@ $@.o $(LIBDIR)/libfltkc.a $(CXXLDFLAGS)+	strip $(EXECUTABLEDIR)/$@++clean:+	rm *.o+	test -d $(EXECUTABLEDIR) && rm -rf $(EXECUTABLEDIR)+%.o:
+ c-examples/arc.c view
@@ -0,0 +1,75 @@+#include <stdio.h>+#include <Fl_C.h>+#include <Fl_Types.h>+#include <Fl_Double_WindowC.h>+#include <Fl_Value_SliderC.h>+#include <Fl_DrawC.h>+#include <Fl_WidgetC.h>+#include <Fl_SliderC.h>+++double my_args[6] = {140, 140, 50, 0, 360, 0};+const char* name[6] = {"X", "Y", "R", "start", "end", "rotate"};+fl_Widget d;++void draw(fl_Widget widget){+  flc_push_clip(Fl_Widget_x(widget),Fl_Widget_y(widget),Fl_Widget_w(widget),Fl_Widget_h(widget));+  flc_set_color(FL_DARK3);+  flc_rectf(Fl_Widget_x(widget),Fl_Widget_y(widget),Fl_Widget_w(widget),Fl_Widget_h(widget));+  flc_push_matrix();+  if (my_args[5]) {+    flc_translate(Fl_Widget_x(widget)+Fl_Widget_w(widget)/2.0, Fl_Widget_y(widget)+Fl_Widget_h(widget)/2.0);+    flc_rotate(my_args[5]);+    flc_translate(-(Fl_Widget_x(widget)+Fl_Widget_w(widget)/2.0), -(Fl_Widget_y(widget)+Fl_Widget_h(widget)/2.0));+  }+  flc_set_color(FL_WHITE);+  flc_translate(Fl_Widget_x(widget),Fl_Widget_y(widget));+  flc_begin_complex_polygon();+  flc_arc_by_radius(my_args[0],my_args[1],my_args[2],my_args[3],my_args[4]);+  flc_gap();+  flc_arc_by_radius(140,140,20,0,-360);+  flc_end_complex_polygon();+  flc_set_color(FL_RED);+  flc_begin_line();+  flc_arc_by_radius(my_args[0],my_args[1],my_args[2],my_args[3],my_args[4]);+  flc_end_line();+  flc_pop_matrix();+  flc_pop_clip();+}+++void slider_cb(fl_Widget o, void* v) {+  fl_Slider s = (fl_Slider)o;+  int idx = (fl_intptr_t)v;+  my_args[idx] = Fl_Slider_value(s);+  Fl_Widget_redraw(d);+}++int main(int argc, char** argv) {+  fl_Widget_Virtual_Funcs* fs = Fl_Widget_default_virtual_funcs();+  fs->draw = &draw;+  fl_Double_Window window = (fl_Double_Window)Fl_Double_Window_New(300,500);+  Fl_Double_Window_begin(window);+  fl_Widget widget = (fl_Widget)Fl_OverriddenWidget_New(10,10,280,280,fs);+  d = widget;+  int y = 300;+  int n = 0;+  for (; n<6; n++) {+    fl_Hor_Value_Slider s= (fl_Hor_Value_Slider)Fl_Hor_Value_Slider_New_WithLabel(50,y,240,25,name[n]);+    y += 25;+    if (n<3) {Fl_Value_Slider_set_minimum(s,0); Fl_Value_Slider_set_maximum(s,300);}+    else if (n==5) {Fl_Value_Slider_set_minimum(s,0); Fl_Value_Slider_set_maximum(s,360);}+    else {Fl_Value_Slider_set_minimum(s,-360); Fl_Value_Slider_set_maximum(s,360);}+    Fl_Value_Slider_set_step(s,1);+    Fl_Value_Slider_set_value(s,my_args[n]);+    Fl_Value_Slider_set_align(s,FL_ALIGN_LEFT);+#ifdef __LP64__+    Fl_Value_Slider_set_callback_with_user_data(s,slider_cb, (void*)(long long) n);+#else+    Fl_Value_Slider_set_callback_with_user_data(s,slider_cb, (void*) n);+#endif+  }+  Fl_Double_Window_end(window);+  Fl_Double_Window_show_with_args(window, argc, argv);+  return (Fl_run());+}
+ c-examples/bitmap.c view
@@ -0,0 +1,128 @@+#include "Fl_C.h"+#include "Fl_Double_WindowC.h"+#include "Fl_ButtonC.h"+#include "Fl_BitmapC.h"+#include <stdio.h>+#include "Fl_Toggle_ButtonC.h"++#define sorceress_width 75+#define sorceress_height 75+fl_Toggle_Button leftb,rightb,topb,bottomb,insideb,overb,inactb;+fl_Button b;+fl_Double_Window w;++uchar sorceress_bits[] = {+   0xfc, 0x7e, 0x40, 0x20, 0x90, 0x00, 0x07, 0x80, 0x23, 0x00, 0x00, 0xc6,+   0xc1, 0x41, 0x98, 0xb8, 0x01, 0x07, 0x66, 0x00, 0x15, 0x9f, 0x03, 0x47,+   0x8c, 0xc6, 0xdc, 0x7b, 0xcc, 0x00, 0xb0, 0x71, 0x0e, 0x4d, 0x06, 0x66,+   0x73, 0x8e, 0x8f, 0x01, 0x18, 0xc4, 0x39, 0x4b, 0x02, 0x23, 0x0c, 0x04,+   0x1e, 0x03, 0x0c, 0x08, 0xc7, 0xef, 0x08, 0x30, 0x06, 0x07, 0x1c, 0x02,+   0x06, 0x30, 0x18, 0xae, 0xc8, 0x98, 0x3f, 0x78, 0x20, 0x06, 0x02, 0x20,+   0x60, 0xa0, 0xc4, 0x1d, 0xc0, 0xff, 0x41, 0x04, 0xfa, 0x63, 0x80, 0xa1,+   0xa4, 0x3d, 0x00, 0x84, 0xbf, 0x04, 0x0f, 0x06, 0xfc, 0xa1, 0x34, 0x6b,+   0x01, 0x1c, 0xc9, 0x05, 0x06, 0xc7, 0x06, 0xbe, 0x11, 0x1e, 0x43, 0x30,+   0x91, 0x05, 0xc3, 0x61, 0x02, 0x30, 0x1b, 0x30, 0xcc, 0x20, 0x11, 0x00,+   0xc1, 0x3c, 0x03, 0x20, 0x0a, 0x00, 0xe8, 0x60, 0x21, 0x00, 0x61, 0x1b,+   0xc1, 0x63, 0x08, 0xf0, 0xc6, 0xc7, 0x21, 0x03, 0xf8, 0x08, 0xe1, 0xcf,+   0x0a, 0xfc, 0x4d, 0x99, 0x43, 0x07, 0x3c, 0x0c, 0xf1, 0x9f, 0x0b, 0xfc,+   0x5b, 0x81, 0x47, 0x02, 0x16, 0x04, 0x31, 0x1c, 0x0b, 0x1f, 0x17, 0x89,+   0x4d, 0x06, 0x1a, 0x04, 0x31, 0x38, 0x02, 0x07, 0x56, 0x89, 0x49, 0x04,+   0x0b, 0x04, 0xb1, 0x72, 0x82, 0xa1, 0x54, 0x9a, 0x49, 0x04, 0x1d, 0x66,+   0x50, 0xe7, 0xc2, 0xf0, 0x54, 0x9a, 0x58, 0x04, 0x0d, 0x62, 0xc1, 0x1f,+   0x44, 0xfc, 0x51, 0x90, 0x90, 0x04, 0x86, 0x63, 0xe0, 0x74, 0x04, 0xef,+   0x31, 0x1a, 0x91, 0x00, 0x02, 0xe2, 0xc1, 0xfd, 0x84, 0xf9, 0x30, 0x0a,+   0x91, 0x00, 0x82, 0xa9, 0xc0, 0xb9, 0x84, 0xf9, 0x31, 0x16, 0x81, 0x00,+   0x42, 0xa9, 0xdb, 0x7f, 0x0c, 0xff, 0x1c, 0x16, 0x11, 0x00, 0x02, 0x28,+   0x0b, 0x07, 0x08, 0x60, 0x1c, 0x02, 0x91, 0x00, 0x46, 0x29, 0x0e, 0x00,+   0x00, 0x00, 0x10, 0x16, 0x11, 0x02, 0x06, 0x29, 0x04, 0x00, 0x00, 0x00,+   0x10, 0x16, 0x91, 0x06, 0xa6, 0x2a, 0x04, 0x00, 0x00, 0x00, 0x18, 0x24,+   0x91, 0x04, 0x86, 0x2a, 0x04, 0x00, 0x00, 0x00, 0x18, 0x27, 0x93, 0x04,+   0x96, 0x4a, 0x04, 0x00, 0x00, 0x00, 0x04, 0x02, 0x91, 0x04, 0x86, 0x4a,+   0x0c, 0x00, 0x00, 0x00, 0x1e, 0x23, 0x93, 0x04, 0x56, 0x88, 0x08, 0x00,+   0x00, 0x00, 0x90, 0x21, 0x93, 0x04, 0x52, 0x0a, 0x09, 0x80, 0x01, 0x00,+   0xd0, 0x21, 0x95, 0x04, 0x57, 0x0a, 0x0f, 0x80, 0x27, 0x00, 0xd8, 0x20,+   0x9d, 0x04, 0x5d, 0x08, 0x1c, 0x80, 0x67, 0x00, 0xe4, 0x01, 0x85, 0x04,+   0x79, 0x8a, 0x3f, 0x00, 0x00, 0x00, 0xf4, 0x11, 0x85, 0x06, 0x39, 0x08,+   0x7d, 0x00, 0x00, 0x18, 0xb7, 0x10, 0x81, 0x03, 0x29, 0x12, 0xcb, 0x00,+   0x7e, 0x30, 0x28, 0x00, 0x85, 0x03, 0x29, 0x10, 0xbe, 0x81, 0xff, 0x27,+   0x0c, 0x10, 0x85, 0x03, 0x29, 0x32, 0xfa, 0xc1, 0xff, 0x27, 0x94, 0x11,+   0x85, 0x03, 0x28, 0x20, 0x6c, 0xe1, 0xff, 0x07, 0x0c, 0x01, 0x85, 0x01,+   0x28, 0x62, 0x5c, 0xe3, 0x8f, 0x03, 0x4e, 0x91, 0x80, 0x05, 0x39, 0x40,+   0xf4, 0xc2, 0xff, 0x00, 0x9f, 0x91, 0x84, 0x05, 0x31, 0xc6, 0xe8, 0x07,+   0x7f, 0x80, 0xcd, 0x00, 0xc4, 0x04, 0x31, 0x06, 0xc9, 0x0e, 0x00, 0xc0,+   0x48, 0x88, 0xe0, 0x04, 0x79, 0x04, 0xdb, 0x12, 0x00, 0x30, 0x0c, 0xc8,+   0xe4, 0x04, 0x6d, 0x06, 0xb6, 0x23, 0x00, 0x18, 0x1c, 0xc0, 0x84, 0x04,+   0x25, 0x0c, 0xff, 0xc2, 0x00, 0x4e, 0x06, 0xb0, 0x80, 0x04, 0x3f, 0x8a,+   0xb3, 0x83, 0xff, 0xc3, 0x03, 0x91, 0x84, 0x04, 0x2e, 0xd8, 0x0f, 0x3f,+   0x00, 0x00, 0x5f, 0x83, 0x84, 0x04, 0x2a, 0x70, 0xfd, 0x7f, 0x00, 0x00,+   0xc8, 0xc0, 0x84, 0x04, 0x4b, 0xe2, 0x2f, 0x01, 0x00, 0x08, 0x58, 0x60,+   0x80, 0x04, 0x5b, 0x82, 0xff, 0x01, 0x00, 0x08, 0xd0, 0xa0, 0x84, 0x04,+   0x72, 0x80, 0xe5, 0x00, 0x00, 0x08, 0xd2, 0x20, 0x44, 0x04, 0xca, 0x02,+   0xff, 0x00, 0x00, 0x08, 0xde, 0xa0, 0x44, 0x04, 0x82, 0x02, 0x6d, 0x00,+   0x00, 0x08, 0xf6, 0xb0, 0x40, 0x02, 0x82, 0x07, 0x3f, 0x00, 0x00, 0x08,+   0x44, 0x58, 0x44, 0x02, 0x93, 0x3f, 0x1f, 0x00, 0x00, 0x30, 0x88, 0x4f,+   0x44, 0x03, 0x83, 0x23, 0x3e, 0x00, 0x00, 0x00, 0x18, 0x60, 0xe0, 0x07,+   0xe3, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x70, 0x70, 0xe4, 0x07, 0xc7, 0x1b,+   0xfe, 0x01, 0x00, 0x00, 0xe0, 0x3c, 0xe4, 0x07, 0xc7, 0xe3, 0xfe, 0x1f,+   0x00, 0x00, 0xff, 0x1f, 0xfc, 0x07, 0xc7, 0x03, 0xf8, 0x33, 0x00, 0xc0,+   0xf0, 0x07, 0xff, 0x07, 0x87, 0x02, 0xfc, 0x43, 0x00, 0x60, 0xf0, 0xff,+   0xff, 0x07, 0x8f, 0x06, 0xbe, 0x87, 0x00, 0x30, 0xf8, 0xff, 0xff, 0x07,+   0x8f, 0x14, 0x9c, 0x8f, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x07, 0x9f, 0x8d,+   0x8a, 0x0f, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x07, 0xbf, 0x0b, 0x80, 0x1f,+   0x00, 0x00, 0xff, 0xff, 0xff, 0x07, 0x7f, 0x3a, 0x80, 0x3f, 0x00, 0x80,+   0xff, 0xff, 0xff, 0x07, 0xff, 0x20, 0xc0, 0x3f, 0x00, 0x80, 0xff, 0xff,+   0xff, 0x07, 0xff, 0x01, 0xe0, 0x7f, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x07,+   0xff, 0x0f, 0xf8, 0xff, 0x40, 0xe0, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff,+   0xff, 0xff, 0x40, 0xf0, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff,+   0x41, 0xf0, 0xff, 0xff, 0xff, 0x07};++++void button_cb(fl_Widget w,void* user_data) {+  int i = 0;+  if (Fl_Toggle_Button_value(leftb)) i |= FL_ALIGN_LEFT;+  if (Fl_Toggle_Button_value(rightb)) i |= FL_ALIGN_RIGHT;+  if (Fl_Toggle_Button_value(topb)) i |= FL_ALIGN_TOP;+  if (Fl_Toggle_Button_value(bottomb)) i |= FL_ALIGN_BOTTOM;+  if (Fl_Toggle_Button_value(insideb)) i |= FL_ALIGN_INSIDE;+  if (Fl_Toggle_Button_value(overb)) i |= FL_ALIGN_TEXT_OVER_IMAGE;+  Fl_Button_set_align(b,(Fl_Align)i);+  if (Fl_Toggle_Button_value(inactb)){+    Fl_Button_deactivate(b);+  }+  else {+    Fl_Button_activate(b);+  }+  Fl_redraw();+  // This really should work but the bitmap doesn't redraw+  /* fl_Double_Window_redraw(w); */+}++int main(int argc, char **argv) {+  fl_Double_Window _w = (fl_Double_Window) Fl_Double_Window_New(400,400);+  w = _w; +  Fl_Double_Window_begin(w);+  {+    b = (fl_Button)Fl_Button_New_WithLabel(140,160,120,120,"Bitmap");+    fl_Bitmap bitmap = (fl_Bitmap)Fl_Bitmap_New_WithUchar(sorceress_bits,sorceress_width,sorceress_height);+    Fl_Button_set_image(b, bitmap);+    leftb = (fl_Toggle_Button)Fl_Toggle_Button_New_WithLabel(25,50,50,25,"left");+    Fl_Toggle_Button_set_callback(leftb,button_cb);+    rightb = (fl_Toggle_Button)Fl_Toggle_Button_New_WithLabel(75,50,50,25,"right");+    Fl_Toggle_Button_set_callback(rightb,button_cb);+    topb = (fl_Toggle_Button)Fl_Toggle_Button_New_WithLabel(125,50,50,25,"top");+    Fl_Toggle_Button_set_callback(topb,button_cb);+    bottomb = (fl_Toggle_Button)Fl_Toggle_Button_New_WithLabel(175,50,50,25,"bottom");+    Fl_Toggle_Button_set_callback(bottomb,button_cb);+    insideb = (fl_Toggle_Button)Fl_Toggle_Button_New_WithLabel(225,50,50,25,"inside");+    Fl_Toggle_Button_set_callback(insideb,button_cb);+    overb = (fl_Toggle_Button)Fl_Toggle_Button_New_WithLabel(25,75,100,25,"text over");+    Fl_Toggle_Button_set_callback(overb,button_cb);+    inactb = (fl_Toggle_Button)Fl_Toggle_Button_New_WithLabel(125,75,100,25,"inactive");+    Fl_Toggle_Button_set_callback(inactb,button_cb);+  }+  Fl_Double_Window_set_resizable(w,w);+  Fl_Double_Window_end(w);+  Fl_Double_Window_show_with_args(w,argc,argv);+  return (Fl_run());+}
+ c-examples/boxtype.c view
@@ -0,0 +1,97 @@+#include <stdlib.h>+#include <stdio.h>+#include "Fl_C.h"+#include "Fl_Double_WindowC.h"+#include "Fl_BoxC.h"++int N = 0;+#define W 200+#define H 50+#define ROWS 14++fl_Double_Window window;++void bt(const char *name, Fl_Boxtype type, int square) {+  int x = N%4;+  int y = N/4;+  N++;+  x = x*W+10;+  y = y*H+10;+  fl_Box b = (fl_Box)Fl_Box_New_WithBoxtype(type,x,y,square ? H-20 : W-20,H-20,name);+  Fl_Box_set_labelsize(b,11);+  if (square) Fl_Box_set_align(b,FL_ALIGN_RIGHT);+}++int main (int argc, char** argv){+  window = (fl_Double_Window)Fl_Double_Window_New(4*W,ROWS*H);+  Fl_Double_Window_set_box(window,FL_FLAT_BOX);+#if 0+  Fl_args(argc,argv);+  Fl_get_system_colors();+#elif 0+  Fl_args(argc,argv);+  Fl_get_system_colors();+  Fl_background(113,113,198);+#else+  Fl_args(argc,argv);+  Fl_get_system_colors();+  Fl_Double_Window_set_color(window,12);+#endif+  bt("FL_NO_BOX",FL_NO_BOX,0);+  bt("FL_FLAT_BOX",FL_FLAT_BOX,0);+  N += 2; // go to start of next row to line up boxes & frames+  bt("FL_UP_BOX",FL_UP_BOX,0);+  bt("FL_DOWN_BOX",FL_DOWN_BOX,0);+  bt("FL_UP_FRAME",FL_UP_FRAME,0);+  bt("FL_DOWN_FRAME",FL_DOWN_FRAME,0);+  bt("FL_THIN_UP_BOX",FL_THIN_UP_BOX,0);+  bt("FL_THIN_DOWN_BOX",FL_THIN_DOWN_BOX,0);+  bt("FL_THIN_UP_FRAME",FL_THIN_UP_FRAME,0);+  bt("FL_THIN_DOWN_FRAME",FL_THIN_DOWN_FRAME,0);+  bt("FL_ENGRAVED_BOX",FL_ENGRAVED_BOX,0);+  bt("FL_EMBOSSED_BOX",FL_EMBOSSED_BOX,0);+  bt("FL_ENGRAVED_FRAME",FL_ENGRAVED_FRAME,0);+  bt("FL_EMBOSSED_FRAME",FL_EMBOSSED_FRAME,0);+  bt("FL_BORDER_BOX",FL_BORDER_BOX,0);+  bt("FL_SHADOW_BOX",FL_SHADOW_BOX,0);+  bt("FL_BORDER_FRAME",FL_BORDER_FRAME,0);+  bt("FL_SHADOW_FRAME",FL_SHADOW_FRAME,0);+  bt("FL_ROUNDED_BOX",FL_ROUNDED_BOX,0);+  bt("FL_RSHADOW_BOX",FL_RSHADOW_BOX,0);+  bt("FL_ROUNDED_FRAME",FL_ROUNDED_FRAME,0);+  bt("FL_RFLAT_BOX",FL_RFLAT_BOX,0);+  bt("FL_OVAL_BOX",FL_OVAL_BOX,0);+  bt("FL_OSHADOW_BOX",FL_OSHADOW_BOX,0);+  bt("FL_OVAL_FRAME",FL_OVAL_FRAME,0);+  bt("FL_OFLAT_BOX",FL_OFLAT_BOX,0);+  bt("FL_ROUND_UP_BOX",FL_ROUND_UP_BOX,0);+  bt("FL_ROUND_DOWN_BOX",FL_ROUND_DOWN_BOX,0);+  bt("FL_DIAMOND_UP_BOX",FL_DIAMOND_UP_BOX,0);+  bt("FL_DIAMOND_DOWN_BOX",FL_DIAMOND_DOWN_BOX,0);++  bt("FL_PLASTIC_UP_BOX",FL_PLASTIC_UP_BOX,0);+  bt("FL_PLASTIC_DOWN_BOX",FL_PLASTIC_DOWN_BOX,0);+  bt("FL_PLASTIC_UP_FRAME",FL_PLASTIC_UP_FRAME,0);+  bt("FL_PLASTIC_DOWN_FRAME",FL_PLASTIC_DOWN_FRAME,0);+  bt("FL_PLASTIC_THIN_UP_BOX",FL_PLASTIC_THIN_UP_BOX,0);+  bt("FL_PLASTIC_THIN_DOWN_BOX",FL_PLASTIC_THIN_DOWN_BOX,0);+  N += 2;+  bt("FL_PLASTIC_ROUND_UP_BOX",FL_PLASTIC_ROUND_UP_BOX,0);+  bt("FL_PLASTIC_ROUND_DOWN_BOX",FL_PLASTIC_ROUND_DOWN_BOX,0);+  N += 2;++  bt("FL_GTK_UP_BOX",FL_GTK_UP_BOX,0);+  bt("FL_GTK_DOWN_BOX",FL_GTK_DOWN_BOX,0);+  bt("FL_GTK_UP_FRAME",FL_GTK_UP_FRAME,0);+  bt("FL_GTK_DOWN_FRAME",FL_GTK_DOWN_FRAME,0);+  bt("FL_GTK_THIN_UP_BOX",FL_GTK_THIN_UP_BOX,0);+  bt("FL_GTK_THIN_DOWN_BOX",FL_GTK_THIN_DOWN_BOX,0);+  bt("FL_GTK_THIN_UP_FRAME",FL_GTK_THIN_UP_FRAME,0);+  bt("FL_GTK_THIN_DOWN_FRAME",FL_GTK_THIN_DOWN_FRAME,0);+  bt("FL_GTK_ROUND_UP_BOX",FL_GTK_ROUND_UP_BOX,0);+  bt("FL_GTK_ROUND_DOWN_BOX",FL_GTK_ROUND_DOWN_BOX,0);+  Fl_Double_Window_set_resizable(window,window);+  Fl_Double_Window_end(window);+  Fl_Double_Window_show(window);+  return (Fl_run());+}
+ c-examples/browser.c view
@@ -0,0 +1,180 @@+/*+This is a test of how the browser draws lines.+This is a second line.+This is a third.++That was a blank line above this.++@r@_Right justify+@c@_Center justify+@_Left justify++@bBold text+@iItalic text+@b@iBold Italic+@fFixed width+@f@bBold Fixed+@f@iItalic Fixed+@f@i@bBold Italic Fixed+@lLarge+@l@bLarge bold+@sSmall+@s@bSmall bold+@s@iSmall italic+@s@i@bSmall italic bold+@uunderscore+@C1RED+@C2Green+@C4Blue++	You should try different browser types:+	Fl_Browser+	Fl_Select_Browser+	Fl_Hold_Browser+	Fl_Multi_Browser+*/++#include <Fl_C.h>+#include <Fl_Select_BrowserC.h>+#include <Fl_Double_WindowC.h>+#include <Fl_ButtonC.h>+#include <Fl_Int_InputC.h>+#include <Fl_ChoiceC.h>+#include <Fl_BrowserC.h>+#include <stdio.h>+#include <string.h>+#include <errno.h>+#include <stdlib.h>+#include <unistd.h>++fl_Select_Browser browser;+fl_Button	top,+		bottom,+		middle,+		visible,+		swap,+		sort;+fl_Choice       btype;+fl_Int_Input	field;++void b_cb(fl_Widget o, void* user_data) {+  printf("callback, selection = %d, event_clicks = %d\n",+	 Fl_Browser_value((fl_Browser)o), Fl_event_clicks());+}++void show_cb(fl_Widget o, void* user_data) {+  int line = atoi(Fl_Int_Input_value(field));++  if (!line) {+    puts("Please enter a number in the text field\nbefore clicking on the buttons.");+    return;+  }++  if (o == top)+    Fl_Select_Browser_set_topline(browser,line);+  else if (o == bottom)+    Fl_Select_Browser_bottomline(browser,line);+  else if (o == middle)+    Fl_Select_Browser_middleline(browser,line);+  else+    Fl_Select_Browser_make_visible(browser,line);+}++void swap_cb(fl_Widget w, void* user_data) {+  int a = -1, b = -1;+  int t = 0;+  for ( ;t<Fl_Select_Browser_size(browser); t++ ) {	// find two selected items+    if ( Fl_Select_Browser_selected(browser,t) ) {+      if ( a < 0 )+	{ a = t; }+      else+	{ b = t; break; }+    }+  }+  Fl_Select_Browser_swap(browser,a,b);				// swap them+}++void sort_cb(fl_Widget w, void* user_data) {+  Fl_Select_Browser_sort_with_flags(browser,FL_SORT_ASCENDING);+}++void btype_cb(fl_Widget w, void* user_data) {+  int t = 1;+  for (; t<= Fl_Select_Browser_size(browser); t++ ) Fl_Select_Browser_select_with_val(browser,t,0);+  Fl_Select_Browser_select_with_val(browser,1,0);		// leave focus box on first line+  if      ( strcmp(Fl_Choice_text(btype),"Normal")==0)      Fl_Select_Browser_set_type(browser,FL_NORMAL_BROWSER);+  else if ( strcmp(Fl_Choice_text(btype),"Select")==0) Fl_Select_Browser_set_type(browser,FL_SELECT_BROWSER);+  else if ( strcmp(Fl_Choice_text(btype),"Hold"  )==0) Fl_Select_Browser_set_type(browser,FL_HOLD_BROWSER);+  else if ( strcmp(Fl_Choice_text(btype),"Multi" )==0) Fl_Select_Browser_set_type(browser,FL_MULTI_BROWSER);+  Fl_Select_Browser_redraw(browser);+}+++int main (int argc, char** argv){+  const char* fname =  "../examples/browser.c";+  fl_Double_Window window = (fl_Double_Window)Fl_Double_Window_New_WithLabel(560,400,fname);+  browser = Fl_Select_Browser_New_WithLabel(0,0,560,350,0);+  Fl_Select_Browser_set_type(browser,FL_MULTI_BROWSER);+  Fl_Select_Browser_set_callback(browser,b_cb);+  if (!Fl_Select_Browser_load(browser,fname)) {+    int done = 0;+#ifdef _MSC_VER+    puts("MSC_VER");+    fname = "../test/browser.cxx";+    done = Fl_Select_Browser_load(browser,fname);+#elif defined(__APPLE__)+    char buf[2048];+    strcpy(buf, argv[0]);+    char *slash = strrchr(buf, '/');+    if (slash)+#if defined(USING_XCODE)+      strcpy(slash, "/../Resources/browser.cxx");+#else+    strcpy(slash, "/../../../browser.cxx");+#endif+    done = Fl_Select_Browser_load(browser,buf);+#endif+    if ( !done )+    {+      printf("Can't load %s, %s\n", fname, strerror(errno));+      exit(1);+    }+  }++  Fl_Select_Browser_set_position(browser,0);++  field = Fl_Int_Input_New_WithLabel(55, 350, 505, 25, "Line #:");+  Fl_Int_Input_set_callback(field,show_cb);++  top = Fl_Button_New_WithLabel(0, 375, 80, 25, "Top");+  Fl_Button_set_callback(top,show_cb);++  bottom = Fl_Button_New_WithLabel(80, 375, 80, 25, "Bottom");+  Fl_Button_set_callback(bottom,show_cb);++  middle = Fl_Button_New_WithLabel(160, 375, 80, 25, "Middle");+  Fl_Button_set_callback(middle,show_cb);++  visible = Fl_Button_New_WithLabel(240, 375, 80, 25, "Make Vis.");+  Fl_Button_set_callback(visible,show_cb);++  swap = Fl_Button_New_WithLabel(320, 375, 80, 25, "Swap");+  Fl_Button_set_callback(swap,swap_cb);+  Fl_Button_set_tooltip(swap,"Swaps two selected lines\n(Use CTRL-click to select two lines)");++  sort = Fl_Button_New_WithLabel(400, 375, 80, 25, "Sort");+  Fl_Button_set_callback(sort,sort_cb);++  btype = Fl_Choice_New(480, 375, 80, 25);+  Fl_Choice_add_with_name(btype,(char*)"Normal");+  Fl_Choice_add_with_name(btype,(char*)"Select");+  Fl_Choice_add_with_name(btype,(char*)"Hold");+  Fl_Choice_add_with_name(btype,(char*)"Multi");+  Fl_Choice_set_callback(btype,btype_cb);+  Fl_Choice_set_value_with_index(btype,3);+  Fl_Choice_set_tooltip(btype,"Changes the browser type()");++  Fl_Double_Window_set_resizable(window,browser);+  Fl_Double_Window_show_with_args(window,argc,argv);+  return (Fl_run());+}
+ c-examples/button.c view
@@ -0,0 +1,39 @@+#include <stdlib.h>+#include <stdio.h>+#include <Fl_C.h>+#include <Fl_AskC.h>+#include <Fl_WindowC.h>+#include <Fl_ButtonC.h>++void beepcb(fl_Widget w,void* user_data) {+  flc_beep();+  fflush(stdout);+}++void exitcb(fl_Widget w, void* user_data) {+  exit(0);+}++#if 0+// test Fl::add_fd()...+void stdin_cb(int i, void* user_data) {+  char buf[1000];+  fgets(buf, sizeof(buf), stdin);+  printf("stdin callback\n");+}+#endif++int main(int argc, char ** argv) {+  fl_Window window = (fl_Window)Fl_Window_New(320,65);+  fl_Button b1 = (fl_Button)Fl_Button_New_WithLabel(20, 20, 80, 25, "&Beep");+  Fl_Button_set_callback_with_user_data(b1,beepcb,0);+  /*Fl_Button *b2 =*/ Fl_Button_New_WithLabel(120,20, 80, 25, "&no op");+  fl_Button b3 = (fl_Button)Fl_Button_New_WithLabel(220,20, 80, 25, "E&xit");+  Fl_Button_set_callback_with_user_data(b3,exitcb,0);+  Fl_Window_end(window);+  Fl_Window_show_with_args(window,argc,argv);+#if 0+  Fl_add_fd(0, stdin_cb);+#endif+  return Fl_run();+}
+ c-examples/buttons.c view
@@ -0,0 +1,27 @@+#include <stdlib.h>+#include <stdio.h>+#include <Fl_C.h>+#include <Fl_WindowC.h>+#include <Fl_ButtonC.h>+#include <Fl_Return_ButtonC.h>+#include <Fl_Repeat_ButtonC.h>+#include <Fl_Check_ButtonC.h>+#include <Fl_Light_ButtonC.h>+#include <Fl_Round_ButtonC.h>+#include <Fl_Toggle_ButtonC.h>+#include <Fl_TooltipC.h>++int main(int argc, char ** argv) {+  fl_Window window = Fl_Window_New(320,170);+  fl_Button b = Fl_Button_New_WithLabel(10, 10, 130, 30, "Fl_Button");+  Fl_Button_set_tooltip(b,"This is a Tooltip.");+  Fl_Repeat_Button_New_WithLabel(10,50,130,30,"Fl_Repeat_Button");+  Fl_Light_Button_New_WithLabel(10,90,130,30,"Fl_Light_Button");+  Fl_Toggle_Button_New_WithLabel(10,130,130,30,"Fl_Toggle_Button");+  Fl_Return_Button_New_WithLabel(150, 10, 160, 30, "Fl_Return_Button");+  Fl_Round_Button_New_WithLabel(150,50,160,30,"Fl_Round_Button");+  Fl_Check_Button_New_WithLabel(150,90,160,30,"Fl_Check_Button");+  Fl_Window_end(window);+  Fl_Window_show_with_args(window,argc,argv);+  return Fl_run();+}
+ c-examples/clock.c view
@@ -0,0 +1,20 @@+#include <Fl_C.h>+#include <Fl_Double_WindowC.h>+#include <Fl_ClockC.h>+#include <Fl_Round_ClockC.h>++int main(int argc, char **argv) {+  fl_Double_Window window = (fl_Double_Window)Fl_Double_Window_New_WithLabel(220,220,"Fl_Clock");+  fl_Clock c1 = (fl_Clock)Fl_Clock_New(0,0,220,220);+  Fl_Double_Window_set_resizable(window,c1);+  Fl_Double_Window_end(window);+  fl_Double_Window window2 = (fl_Double_Window)Fl_Double_Window_New_WithLabel(220,220,"Fl_Round_Clock");+  fl_Round_Clock c2 = (fl_Round_Clock) Fl_Round_Clock_New(0,0,220,220); // c2.color(3,4);+  Fl_Double_Window_set_resizable(window2,c2);+  Fl_Double_Window_end(window2);+  Fl_Double_Window_set_xclass(window,"Fl_Clock");+  Fl_Double_Window_set_xclass(window2,"Fl_Clock");+  Fl_Double_Window_show_with_args(window,argc,argv);+  Fl_Double_Window_show(window2);+  return Fl_run();+}
+ c-examples/colbrowser.c view
@@ -0,0 +1,321 @@+#include <Fl_C.h>+#include <Fl_Double_WindowC.h>+#include <Fl_WindowC.h>+#include <Fl_ButtonC.h>+#include <Fl_Value_SliderC.h>+#include <Fl_Hold_BrowserC.h>+#include <Fl_BoxC.h>+#include <Fl_BrowserC.h>+#include <Fl_WidgetC.h>++#include <Fl_AskC.h>+#include <filenameC.h>+#include <FL/fl_utf8.h>++#include <stdlib.h>+#include <stdio.h>+#include <string.h>++#define MAX_RGB 3000++#define FL_FREE_COL4    ((Fl_Color)(FL_FREE_COLOR+3))+#define FL_INDIANRED	((Fl_Color)(164))+++fl_Double_Window cl;+fl_Box rescol;+fl_Button dbobj;+fl_Hold_Browser colbr;+fl_Value_Slider rs;+fl_Value_Slider gs;+fl_Value_Slider bs;++char dbname[FL_PATH_MAX];++void create_form_cl(void);+int load_browser(char *);++typedef struct { int r, g, b; } RGBdb;++RGBdb rgbdb[MAX_RGB];+++int main(int argc, char *argv[])+{+  create_form_cl();++#ifdef USING_XCODE+  // Xcode apps do not set the current directory+  strcpy(dbname, argv[0]);+  char *slash = strrchr(dbname, '/');+  if (slash)+    strcpy(slash, "/../Resources/rgb.txt");+#else+  strcpy(dbname, "./rgb.txt");+#endif++  if (load_browser(dbname))+    Fl_Button_set_label(dbobj,dbname);+  else+    Fl_Button_set_label(dbobj,"None");+  Fl_Button_redraw(dbobj);+  // cl->size_range(cl->w(),cl->h(),2*cl->w(),2*cl->h());++  fl_Window_size_range_args* sizes = Fl_Window_default_size_range_args();+  sizes->maxw = 2 * Fl_Double_Window_w(cl);+  sizes->maxh = 2 * Fl_Double_Window_h(cl);;+  Fl_Double_Window_size_range_with_args(cl, Fl_Double_Window_w(cl), Fl_Double_Window_h(cl),sizes);+  Fl_Double_Window_set_label(cl,"RGB Browser");+  Fl_Double_Window_free_position(cl);+  Fl_Double_Window_show_with_args(cl,argc,argv);++  return Fl_run();+}+++void set_entry(int i)+{+  RGBdb *db = rgbdb + i;+  Fl_set_color_rgb(FL_FREE_COL4, db->r, db->g, db->b);+  Fl_Value_Slider_set_value(rs,db->r);+  Fl_Value_Slider_set_value(gs,db->g);+  Fl_Value_Slider_set_value(bs,db->b);+  Fl_Box_redraw(rescol);+}+++void br_cb(fl_Widget ob, void* user_data)+{+  int r = Fl_Browser_value((fl_Browser)ob);++  if (r <= 0)+    return;+  set_entry(r - 1);+}+++int read_entry(FILE * fp, int *r, int *g, int *b, char *name)+{+  int  n;+  char buf[512], *p;++  if (!fgets(buf, sizeof(buf) - 1, fp))+    return 0;++  if(buf[0] == '!') {+    if (fgets(buf,sizeof(buf)-1,fp)==0) {+      /* ignore */+    }+  }++  if(sscanf(buf, " %d %d %d %n", r, g, b, &n) < 3)+    return 0;++  p = buf + n;++  /* squeeze out all spaces */+  while (*p)+  {+    if (*p != ' ' && *p != '\n')+      *name++ = *p;+    p++;+  }+  *name = 0;++  return (feof(fp) || ferror(fp)) ? 0 : 1;+}+++int load_browser(char *fname)+{+  FILE *fp;+  RGBdb *db = rgbdb, *dbs = db + MAX_RGB;+  int r, g, b,  lr  = -1 , lg = -1, lb = -1;+  char name[256], buf[256];+#ifdef __EMX__+  if (!(fp = fl_fopen(__XOS2RedirRoot(fname), "r")))+#else+    if (!(fp = fl_fopen(fname, "r")))+#endif+    {+      printf("%s\n%s\n%s","Load", fname, "Can't open");+      return 0;+    }++  /* read the items */++  for (; db < dbs && read_entry(fp, &r, &g, &b, name);)+  {+    db->r = r;+    db->g = g;+    db->b = b;++    /* unique the entries on the fly */+    if (lr != r || lg != g || lb != b)+    {+      db++;+      lr = r;+      lg = g;+      lb = b;+      sprintf(buf, "(%3d %3d %3d) %s", r, g, b, name);+      Fl_Hold_Browser_add(colbr,buf);+    }+  }+  fclose(fp);++  if (db < dbs)+    db->r = 1000;		/* sentinel */+  else+  {+    db--;+    db->r = 1000;+  }++  Fl_Hold_Browser_set_topline(colbr,1);+  Fl_Hold_Browser_select_with_val(colbr,1,1);+  set_entry(0);++  return 1;+}+++int search_entry(int r, int g, int b)+{+  register RGBdb *db = rgbdb;+  int i, j, diffr, diffg, diffb;+  unsigned int diff, mindiff;++  mindiff = (unsigned int)~0;+  for (i = j = 0; db->r < 256; db++, i++)+  {+    diffr = r - db->r;+    diffg = g - db->g;+    diffb = b - db->b;++#ifdef FL_LINEAR+    diff = (unsigned)((3.0 * (FL_abs(r - db->r)) ++                    (5.9 * FL_abs(g - db->g)) ++		       (1.1 * (FL_abs(b - db->b)))));+#else+    diff = (unsigned)((3.0 * (diffr *diffr) ++                    5.9 * (diffg *diffg) ++		       1.1 * (diffb *diffb)));+#endif++    if (mindiff > diff)+    {+      mindiff = diff;+      j = i;+    }+  }++  return j;+}+++void search_rgb(fl_Widget w, void* user_data)+{+  int r, g, b, i;+  int top  = Fl_Hold_Browser_topline(colbr);++  r = (int)(Fl_Value_Slider_value(rs));+  g = (int)(Fl_Value_Slider_value(gs));+  b = (int)(Fl_Value_Slider_value(bs));++  // fl_freeze_form(cl);+  Fl_set_color_rgb(FL_FREE_COL4, r, g, b);+  Fl_Box_redraw(rescol);+  i = search_entry(r, g, b);+  /* change topline only if necessary */+  if(i < top || i > (top+15))+    Fl_Hold_Browser_set_topline(colbr,i-8);+  Fl_Hold_Browser_select_with_val(colbr,i+1, 1);+  // fl_unfreeze_form(cl);+}+++/* change database */+void db_cb(fl_Widget  ob, void* user_data)+{+  const char *p = flc_input_with_deflt("Enter New Database Name", dbname);+  char buf[512];++  if (!p || strcmp(p, dbname) == 0)+    return;++  strcpy(buf, p);+  if (load_browser(buf))+    strcpy(dbname, buf);+  else+    Fl_Widget_set_label(ob,dbname);+}+++void done_cb(fl_Widget w, void* user_data)+{+  exit(0);+}+++void create_form_cl(void)+{+  if (cl)+    return;++  cl = Fl_Double_Window_New(400,385);+  Fl_Double_Window_set_box(cl,FL_UP_BOX);+  Fl_Double_Window_set_color_with_bg_sel(cl,FL_INDIANRED, FL_GRAY);++  fl_Box title = Fl_Box_New_WithLabel(40, 10, 300, 30, "Color Browser");+  Fl_Box_set_box(title,FL_NO_BOX);+  Fl_Box_set_labelcolor(title,FL_RED);+  Fl_Box_set_labelsize(title,32);+  Fl_Box_set_labelfont(title,FL_HELVETICA_BOLD);+  Fl_Box_set_labeltype(title,FL_SHADOW_LABEL);++  dbobj = Fl_Button_New_WithLabel(40, 50, 300, 25, "");+  Fl_Button_set_type(dbobj,FL_NORMAL_BUTTON);+  Fl_Button_set_box(dbobj,FL_BORDER_BOX);+  Fl_Button_set_color_with_bg_sel(dbobj,FL_INDIANRED,FL_INDIANRED);+  Fl_Button_set_callback_with_user_data(dbobj,db_cb, 0);++  colbr = Fl_Hold_Browser_New_WithLabel(10, 90, 280, 240, "");+  Fl_Hold_Browser_set_textfont(colbr,FL_COURIER);+  Fl_Hold_Browser_set_callback_with_user_data(colbr,br_cb, 0);+  Fl_Hold_Browser_set_box(colbr,FL_DOWN_BOX);++  rescol = Fl_Box_New_WithLabel(300, 90, 90, 35, "");+  Fl_Box_set_color_with_bg_sel(rescol,FL_FREE_COL4, FL_FREE_COL4);+  Fl_Box_set_box(rescol,FL_BORDER_BOX);++  rs = Fl_Value_Slider_New_WithLabel(300, 130, 30, 200, "");+  Fl_Value_Slider_set_type(rs,FL_VERT_FILL_SLIDER);+  Fl_Value_Slider_set_color_with_bg_sel(rs,FL_INDIANRED, FL_RED);+  Fl_Value_Slider_bounds(rs,0, 255);+  Fl_Value_Slider_precision(rs,0);+  Fl_Value_Slider_set_callback_with_user_data(rs,search_rgb, 0);+  Fl_Value_Slider_set_when(rs,FL_WHEN_RELEASE);++  gs = Fl_Value_Slider_New_WithLabel(330, 130, 30, 200, "");+  Fl_Value_Slider_set_type(gs,FL_VERT_FILL_SLIDER);+  Fl_Value_Slider_set_color_with_bg_sel(gs,FL_INDIANRED, FL_GREEN);+  Fl_Value_Slider_bounds(gs,0, 255);+  Fl_Value_Slider_precision(gs,0);+  Fl_Value_Slider_set_callback_with_user_data(gs,search_rgb, (void*)1);+  Fl_Value_Slider_set_when(gs,FL_WHEN_RELEASE);++  bs = Fl_Value_Slider_New_WithLabel(360, 130, 30, 200, "");+  Fl_Value_Slider_set_type(bs,FL_VERT_FILL_SLIDER);+  Fl_Value_Slider_set_color_with_bg_sel(bs,FL_INDIANRED, FL_BLUE);+  Fl_Value_Slider_bounds(bs,0, 255);+  Fl_Value_Slider_precision(bs,0);+  Fl_Value_Slider_set_callback_with_user_data(bs,search_rgb, (void*)2);+  Fl_Value_Slider_set_when(bs,FL_WHEN_RELEASE);++  fl_Button done = Fl_Button_New_WithLabel(160, 345, 80, 30, "Done");+  Fl_Button_set_type(done,FL_NORMAL_BUTTON);+  Fl_Button_set_callback_with_user_data(done,done_cb, 0);++  Fl_Double_Window_end(cl);+  Fl_Double_Window_set_resizable(cl,cl);+}
+ c-examples/color_chooser.c view
@@ -0,0 +1,130 @@+#include <Fl_C.h>+#include <Fl_WindowC.h>+#include <Fl_BoxC.h>+#include <Fl_ButtonC.h>+#include <fl_show_colormapC.h>+#include <Fl_Color_ChooserC.h>+#include <Fl_ImageC.h>+#include <Fl_DrawC.h>+#include <Fl_GroupC.h>+#include <Fl_AskC.h>+#include <xC.h>++#include <stdlib.h>+#include <stdio.h>+#include <fl_utf8C.h>+#if !defined(WIN32) && !defined(__APPLE__)+#include "list_visuals.h"+#endif++int width = 75;+int height = 75;+uchar *image;+void make_image() {+  uchar *image;+  image = malloc(3*width*height*sizeof(uchar));+  uchar *p = image;+  int y = 0;+  for (; y < height; y++) {+    double Y = (double)(y)/(height-1);+    int x = 0;+    for (; x < width; x++) {+      double X = (double)(x)/(width-1);+      *p++ = (uchar)(255*((1-X)*(1-Y))); // red in upper-left+      *p++ = (uchar)(255*((1-X)*Y));	// green in lower-left+      *p++ = (uchar)(255*(X*Y));	// blue in lower-right+    }+  }+}+void draw(fl_Widget w) {+  fl_Box b = (fl_Box)w;+  // use every color in the gray ramp:+  int i = 0;+  for (; i < 3*8; i++) {+    flc_set_color((Fl_Color)(FL_GRAY_RAMP+i));+    flc_line(Fl_Box_x(b)+i, Fl_Box_y(b), Fl_Box_x(b)+i, Fl_Box_y(b)+Fl_Box_h(b));+  }+}+Fl_Color c;+#define fullcolor_cell (FL_FREE_COLOR)++void cb1(fl_Widget w, void* user_data) {+  c = flc_show_colormap(c);+  fl_Box b = (fl_Box)user_data;+  Fl_Box_set_color(b,c);+  Fl_Group_redraw(Fl_Box_parent(b));+}+void cb2(fl_Widget w, void* user_data) {+  uchar r,g,b;+  Fl_get_color_rgb(c,&r,&g,&b);+  if (!flc_color_chooser_with_m("New color:",r,g,b,3)) return;+  c = fullcolor_cell;+  Fl_set_color_rgb(fullcolor_cell,r,g,b);+  fl_Box bx = (fl_Box)user_data;+  Fl_Box_set_color(bx,fullcolor_cell);+  Fl_Group_redraw(Fl_Box_parent(bx));+}+++int main(int argc, char ** argv) {+  Fl_set_color_rgb(fullcolor_cell,145,159,170);+  fl_Window window = (fl_Window)Fl_Window_New(400,400);+  fl_Box box = (fl_Box)Fl_Box_New(50,50,300,300);+  Fl_Box_set_box(box,FL_THIN_DOWN_BOX);+  c = fullcolor_cell;+  Fl_Box_set_color(box,c);+  fl_Button b1 = (fl_Button)Fl_Button_New_WithLabel(140,120,120,30,"fl_show_colormap");+  Fl_Button_set_callback_with_user_data(b1,cb1,&box);+  fl_Button b2 = (fl_Button)Fl_Button_New_WithLabel(140,160,120,30,"fl_choose_color");+  Fl_Button_set_callback_with_user_data(b2,cb2,&box);+  make_image();+  fl_Box_Virtual_Funcs* funcs = Fl_Box_default_virtual_funcs();+  funcs->draw = &draw;+  fl_Box p = (fl_Box) Fl_OverriddenBox_New_WithLabel(80,200,3*8,120,"lines",funcs);+  Fl_Box_set_align(p,FL_ALIGN_TOP);+  int i = 1;+  if (!Fl_args_with_i(argc,argv,i) || i < argc-1) {+    printf("usage: %s <switches> visual-number\n"+           " - : default visual\n"+           " r : call Fl::visual(FL_RGB)\n"+           " c : call Fl::own_colormap()\n",argv[0]);+#if !defined(WIN32) && !defined(__APPLE__)+    printf(" # : use this visual with an empty colormap:\n");+    list_visuals();+#endif+    exit(1);+  }+  printf("%d %d\n" ,argc, i);+  if (i!=argc) {+    if (argv[i][0] == 'r') {+      if (!Fl_visual(FL_RGB)) {+	printf("Fl::visual(FL_RGB) returned false.\n");+      }+    } else if (argv[i][0] == 'c') {+      Fl_own_colormap();+    } else if (argv[i][0] != '-') {+#if !defined(WIN32) && !defined(__APPLE__)+      int visid = atoi(argv[i]);+      if (!visid) puts("visid NULL");+      flc_open_display();+      XVisualInfo templt; int num;+      templt.visualid = visid;+      flc_set_fl_visual(XGetVisualInfo(fl_display, VisualIDMask, &templt, &num));+      char visid_str[10];+      sprintf(visid_str,"%d",visid);+      if (!(flc_fl_visual())) {+	flc_message_with_args("No visual with id %s",visid_str,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);+      }+      Colormap m = XCreateColormap(flc_fl_display(), RootWindow(flc_fl_display(),flc_fl_screen()),+				   (flc_fl_visual())->visual, AllocNone);+      puts("here");+      flc_set_fl_colormap(m);+      flc_xpixel(FL_BLACK); // make sure black is allocated+#else+      flc_message("Visual id's not supported on MSWindows or MacOS.");+#endif+    }+  }+  Fl_Window_show_with_args(window,argc,argv);+  return Fl_run();+}
+ c-examples/cube.c view
@@ -0,0 +1,208 @@+#include <config.h>+#include <Fl_C.h>+#include <Fl_WindowC.h>+#include <Fl_BoxC.h>+#include <Fl_ButtonC.h>+#include <Fl_Radio_Light_ButtonC.h>+#include <Fl_SliderC.h>+#include <Fl_Menu_ItemC.h>+#include <Fl_Gl_WindowC.h>+#include <stdlib.h>+#include <stdio.h>++#include <glC.h>+typedef struct instance_data {+  double lasttime;+  int wire;+  double size;+  double speed;+} instance_data;+/* The cube definition */+float v0[3] = {0.0, 0.0, 0.0};+float v1[3] = {1.0, 0.0, 0.0};+float v2[3] = {1.0, 1.0, 0.0};+float v3[3] = {0.0, 1.0, 0.0};+float v4[3] = {0.0, 0.0, 1.0};+float v5[3] = {1.0, 0.0, 1.0};+float v6[3] = {1.0, 1.0, 1.0};+float v7[3] = {0.0, 1.0, 1.0};++#define v3f(x) glVertex3fv(x)++void drawcube(int wire) {+/* Draw a colored cube */+  glBegin(wire ? GL_LINE_LOOP : GL_POLYGON);+  glColor3ub(0,0,255);+  v3f(v0); v3f(v1); v3f(v2); v3f(v3);+  glEnd();+  glBegin(wire ? GL_LINE_LOOP : GL_POLYGON);+  glColor3ub(0,255,255); v3f(v4); v3f(v5); v3f(v6); v3f(v7);+  glEnd();+  glBegin(wire ? GL_LINE_LOOP : GL_POLYGON);+  glColor3ub(255,0,255); v3f(v0); v3f(v1); v3f(v5); v3f(v4);+  glEnd();+  glBegin(wire ? GL_LINE_LOOP : GL_POLYGON);+  glColor3ub(255,255,0); v3f(v2); v3f(v3); v3f(v7); v3f(v6);+  glEnd();+  glBegin(wire ? GL_LINE_LOOP : GL_POLYGON);+  glColor3ub(0,255,0); v3f(v0); v3f(v4); v3f(v7); v3f(v3);+  glEnd();+  glBegin(wire ? GL_LINE_LOOP : GL_POLYGON);+  glColor3ub(255,0,0); v3f(v1); v3f(v2); v3f(v6); v3f(v5);+  glEnd();+}++void draw(fl_Gl_Window cube) {+  instance_data* cube_data = (instance_data*)Fl_Gl_Window_other_data(cube);+  cube_data->lasttime = cube_data->lasttime+cube_data->speed;+  Fl_Gl_Window_set_other_data(cube, cube_data);+  if (!Fl_Gl_Window_valid(cube)) {+    glLoadIdentity();+    glViewport(0,0,Fl_Gl_Window_w(cube),Fl_Gl_Window_h(cube));+    glEnable(GL_DEPTH_TEST);+    glFrustum(-1,1,-1,1,2,10000);+    glTranslatef(0,0,-10);+    flc_gl_font(FL_HELVETICA_BOLD, 16 );+  }+  glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);+  glPushMatrix();+  glRotatef((float)(cube_data->lasttime*1.6),0,0,1);+  glRotatef((float)(cube_data->lasttime*4.2),1,0,0);+  glRotatef((float)(cube_data->lasttime*2.3),0,1,0);+  glTranslatef(-1.0, 1.2f, -1.5);+  glScalef((float)(cube_data->size),(float)(cube_data->size),(float)(cube_data->size));+  drawcube(cube_data->wire);+  glPopMatrix();+  flc_gl_color(FL_GRAY);+  glDisable(GL_DEPTH_TEST);+  flc_gl_draw_with_xy(cube_data->wire ? "Cube: wire" : "Cube: flat", -4.5f, -4.5f );+  glEnable(GL_DEPTH_TEST);+}++int handle(fl_Gl_Window cube_box, int e) {+  switch (e) {+  case FL_ENTER: Fl_Gl_Window_set_cursor(cube_box,FL_CURSOR_CROSS); break;+  case FL_LEAVE: Fl_Gl_Window_set_cursor(cube_box,FL_CURSOR_DEFAULT); break;+  }+  return Fl_Gl_Window_handle_super(cube_box,e);+}+fl_Window form;+fl_Slider speed;+fl_Slider size;+fl_Button button;+fl_Button wire;+fl_Button flat;+fl_Gl_Window cube;+fl_Gl_Window cube2;++void makeform(fl_Gl_Window_Virtual_Funcs* cube_funcs, fl_Gl_Window_Virtual_Funcs* cube2_funcs) {+  Fl_Window_begin(form);+  Fl_Box_New_WithBoxtype(FL_DOWN_FRAME,20,20,350,350,"");+  Fl_Box_New_WithBoxtype(FL_DOWN_FRAME,510,20,350,350,"");+  speed = (fl_Slider)Fl_Slider_New_WithLabel(390,90,40,220,"Speed");+  Fl_Slider_set_type(speed,FL_VERT_SLIDER);+  size = (fl_Slider)Fl_Slider_New_WithLabel(450,90,40,220,"Size");+  Fl_Slider_set_type(size,FL_VERT_SLIDER);+  wire = (fl_Radio_Light_Button)Fl_Radio_Light_Button_New_WithLabel(390,20,100,30,"Wire");+  flat = (fl_Radio_Light_Button)Fl_Radio_Light_Button_New_WithLabel(390,50,100,30,"Flat");+  button = (fl_Button)Fl_Button_New_WithLabel(390,340,100,30,"Exit");+  cube = (fl_Gl_Window)Fl_OverriddenGl_Window_NewXY_WithLabel(23,23,344,344, 0,cube_funcs);+  cube2 = (fl_Gl_Window)Fl_OverriddenGl_Window_NewXY_WithLabel(513,23,344,344, 0,cube2_funcs);+  instance_data* cube_data = (instance_data*)malloc(sizeof(instance_data));+  cube_data->lasttime = 0.0;+  instance_data* cube2_data = (instance_data*)malloc(sizeof(instance_data));+  cube2_data->lasttime = 0.0;+  Fl_Gl_Window_set_other_data(cube, cube_data);+  Fl_Gl_Window_set_other_data(cube2, cube2_data);+  int x = Fl_Gl_Window_x(cube);+  int y = Fl_Slider_y(size);+  int w = Fl_Gl_Window_w(cube);+  int h = Fl_Slider_h(size);+  fl_Box b = (fl_Box)Fl_Box_New_WithBoxtype(FL_NO_BOX,x,y,w,h,0);+  Fl_Window_set_resizable(form,b);+  Fl_Box_hide(b);+  Fl_Window_end(form);+}++#include <Fl_Sys_Menu_BarC.h>+#include <Fl_PrinterC.h>++void print_cb(fl_Widget w, void* data)+{+  fl_Printer printer = (fl_Printer) Fl_Printer_New();+  fl_Window win = Fl_first_window();+  if(!win) return;+  if(Fl_Printer_start_job(printer,1) ) return;+  if(Fl_Printer_start_page(printer)) return;+  Fl_Printer_scale_with_scale_y(printer,0.5,0.5);+  Fl_Printer_print_widget(printer, win );+  Fl_Printer_end_page(printer);+  Fl_Printer_end_job(printer);+}++int main(int argc, char **argv) {+  fl_Gl_Window_Virtual_Funcs* cube_funcs = (fl_Gl_Window_Virtual_Funcs*)Fl_Gl_Window_default_virtual_funcs();+  fl_Gl_Window_Virtual_Funcs* cube2_funcs =(fl_Gl_Window_Virtual_Funcs*)Fl_Gl_Window_default_virtual_funcs();+  cube_funcs->draw = &draw;+  cube_funcs->handle = &handle;+  cube2_funcs->draw = &draw;+  cube2_funcs->handle = &handle;+  form = (fl_Window)Fl_Window_New_WithLabel(510+390,390,argv[0]);+  makeform(cube_funcs, cube2_funcs);+  Fl_Window_begin(form);+  fl_Menu_Item i1 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i1,"Print");+  Fl_Menu_Item_set_flags(i1,FL_SUBMENU);+  fl_Menu_Item i2 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i2,"Print window");+  Fl_Menu_Item_set_callback(i2,&print_cb);+  fl_Menu_Item i3 = (fl_Menu_Item)Fl_Menu_Item_New();+  fl_Menu_Item i4 = (fl_Menu_Item)Fl_Menu_Item_New();++  fl_Menu_Item	items[] = {i1,i2,i3,i4};+  fl_Sys_Menu_Bar menubar_ = (fl_Sys_Menu_Bar)Fl_Sys_Menu_Bar_New(0,0,60,20);+  Fl_Sys_Menu_Bar_set_box(menubar_,FL_FLAT_BOX);+  Fl_Sys_Menu_Bar_menu_with_m(menubar_ ,items, 4);+  Fl_Window_end(form);+  instance_data* cube_data = (instance_data*)Fl_Gl_Window_other_data(cube);+  instance_data* cube2_data = (instance_data*)Fl_Gl_Window_other_data(cube2);+  cube_data->speed = 1.0;+  cube2_data->speed = 1.0;+  cube_data->size=1.0;+  cube2_data->size=1.0;+  cube_data->wire=0;+  cube2_data->wire=1;+  Fl_Gl_Window_set_other_data(cube, cube_data);+  Fl_Gl_Window_set_other_data(cube2, cube2_data);++  Fl_Window_begin(form);+  Fl_Slider_bounds(speed,4,0);+  Fl_Slider_set_value(speed,1.0);+  Fl_Slider_bounds(size,4,0.01);+  Fl_Slider_set_value(size,1.0);+  Fl_Button_set_value(flat,1);+  Fl_Window_set_label(form,"");+  Fl_Window_end(form);+  Fl_Window_show_with_args(form,argc,argv);+  Fl_Gl_Window_show(cube);+  Fl_Gl_Window_show(cube2);++  for (;;) {+    if (Fl_Window_visible(form) && Fl_Slider_value(speed))+      {if (!Fl_check()) break;}	// returns immediately+    else+      {if (!Fl_wait()) break;}	// waits until something happens+    instance_data* cube_data = (instance_data*)Fl_Gl_Window_other_data(cube);+    instance_data* cube2_data = (instance_data*)Fl_Gl_Window_other_data(cube2);+    cube_data->wire = Fl_Button_value(wire);+    cube2_data->wire = !Fl_Button_value(wire);+    cube_data->size = cube2_data->size = Fl_Slider_value(size);+    cube_data->speed = cube2_data->speed = Fl_Slider_value(speed);+    Fl_Gl_Window_set_other_data(cube, cube_data);+    Fl_Gl_Window_set_other_data(cube2, cube2_data);+    Fl_Gl_Window_redraw(cube);+    Fl_Gl_Window_redraw(cube2);+    if (Fl_readqueue() == button) break;+  }+  return 0;+}
+ c-examples/cursor.c view
@@ -0,0 +1,161 @@+#include <Fl_C.h>+#include <Fl_Double_WindowC.h>+#include <Fl_Value_SliderC.h>+#include <Fl_ChoiceC.h>+#include <Fl_DrawC.h>+#include <Fl_Menu_ItemC.h>+#include <stdio.h>++Fl_Color fg;+Fl_Color bg;+Fl_Cursor cursor;+fl_Hor_Value_Slider cursor_slider;++void choice_cb(fl_Widget w, void* v) {+  cursor = (Fl_Cursor)(fl_intptr_t)v;+  Fl_Value_Slider_set_value(cursor_slider,cursor);+  flc_cursor_with_fg_bg(cursor,fg,bg);+}++void setcursor(fl_Widget o, void * user_data) {+  fl_Hor_Value_Slider slider = (fl_Hor_Value_Slider)o;+  cursor = (int)(Fl_Value_Slider_value(slider));+  flc_cursor_with_fg_bg(cursor,fg,bg);+}++void setfg(fl_Widget o, void* user_data) {+  fl_Hor_Value_Slider slider = (fl_Hor_Value_Slider)o;+  fg = (Fl_Color)(Fl_Value_Slider_value(slider));+  flc_cursor_with_fg_bg(cursor,fg,bg);+}+void setbg(fl_Widget o, void* user_data) {+  fl_Hor_Value_Slider slider = (fl_Hor_Value_Slider)o;+  bg = (Fl_Color)(Fl_Value_Slider_value(slider));+  flc_cursor_with_fg_bg(cursor,fg,bg);+}++int main(int argc, char **argv) {+  fg = FL_BLACK;+  bg = FL_WHITE;+  cursor = FL_CURSOR_DEFAULT;++  fl_Menu_Item i1 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i1,"FL_CURSOR_DEFAULT");+  Fl_Menu_Item_set_shortcut(i1,0);+  Fl_Menu_Item_set_callback(i1,&choice_cb);+  Fl_Menu_Item_set_user_data(i1,(void*)FL_CURSOR_DEFAULT);++  fl_Menu_Item i2 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i2,"FL_CURSOR_ARROW");+  Fl_Menu_Item_set_shortcut(i2,0);+  Fl_Menu_Item_set_callback(i2,&choice_cb);+  Fl_Menu_Item_set_user_data(i2,(void*)FL_CURSOR_ARROW);++  fl_Menu_Item i3 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i3,"FL_CURSOR_CROSS");+  Fl_Menu_Item_set_shortcut(i3,0);+  Fl_Menu_Item_set_callback(i3,&choice_cb);+  Fl_Menu_Item_set_user_data(i3,(void*)FL_CURSOR_CROSS);++  fl_Menu_Item i4 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i4,"FL_CURSOR_WAIT");+  Fl_Menu_Item_set_shortcut(i4,0);+  Fl_Menu_Item_set_callback(i4,&choice_cb);+  Fl_Menu_Item_set_user_data(i4,(void*)FL_CURSOR_WAIT);++  fl_Menu_Item i5 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i5,"FL_CURSOR_INSERT");+  Fl_Menu_Item_set_shortcut(i5,0);+  Fl_Menu_Item_set_callback(i5,&choice_cb);+  Fl_Menu_Item_set_user_data(i5,(void*)FL_CURSOR_INSERT);++  fl_Menu_Item i6 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i6,"FL_CURSOR_HAND");+  Fl_Menu_Item_set_shortcut(i6,0);+  Fl_Menu_Item_set_callback(i6,&choice_cb);+  Fl_Menu_Item_set_user_data(i6,(void*)FL_CURSOR_HAND);++  fl_Menu_Item i7 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i7,"FL_CURSOR_HELP");+  Fl_Menu_Item_set_shortcut(i7,0);+  Fl_Menu_Item_set_callback(i7,&choice_cb);+  Fl_Menu_Item_set_user_data(i7,(void*)FL_CURSOR_HELP);++  fl_Menu_Item i8 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i8,"FL_CURSOR_MOVE");+  Fl_Menu_Item_set_shortcut(i8,0);+  Fl_Menu_Item_set_callback(i8,&choice_cb);+  Fl_Menu_Item_set_user_data(i8,(void*)FL_CURSOR_MOVE);++  fl_Menu_Item i9 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i9,"FL_CURSOR_NS");+  Fl_Menu_Item_set_shortcut(i9,0);+  Fl_Menu_Item_set_callback(i9,&choice_cb);+  Fl_Menu_Item_set_user_data(i9,(void*)FL_CURSOR_NS);++  fl_Menu_Item i10 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i10,"FL_CURSOR_WE");+  Fl_Menu_Item_set_shortcut(i10,0);+  Fl_Menu_Item_set_callback(i10,&choice_cb);+  Fl_Menu_Item_set_user_data(i10,(void*)FL_CURSOR_WE);++  fl_Menu_Item i11 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i11,"FL_CURSOR_NWSE");+  Fl_Menu_Item_set_shortcut(i11,0);+  Fl_Menu_Item_set_callback(i11,&choice_cb);+  Fl_Menu_Item_set_user_data(i11,(void*)FL_CURSOR_NWSE);++  fl_Menu_Item i12 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i12,"FL_CURSOR_NESW");+  Fl_Menu_Item_set_shortcut(i12,0);+  Fl_Menu_Item_set_callback(i12,&choice_cb);+  Fl_Menu_Item_set_user_data(i12,(void*)FL_CURSOR_NESW);++  fl_Menu_Item i13 = (fl_Menu_Item)Fl_Menu_Item_New();+  Fl_Menu_Item_set_label(i13,"FL_CURSOR_NONE");+  Fl_Menu_Item_set_shortcut(i13,0);+  Fl_Menu_Item_set_callback(i13,&choice_cb);+  Fl_Menu_Item_set_user_data(i13,(void*)FL_CURSOR_NONE);+  +  fl_Menu_Item i14 = (fl_Menu_Item)Fl_Menu_Item_New();++  fl_Menu_Item choices[] = {i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12,i13,i14};+  fl_Double_Window window = (fl_Double_Window)Fl_Double_Window_New(400,300);+  fl_Choice choice = Fl_Choice_New_WithLabel(80,100,200,25,"Cursor:");+  Fl_Choice_menu_with_m(choice,choices,14);+  //  Fl_Choice_set_callback(choice,&choice_cb);+  Fl_Choice_set_when(choice,FL_WHEN_RELEASE|FL_WHEN_NOT_CHANGED);++  fl_Hor_Value_Slider slider1 = Fl_Hor_Value_Slider_New_WithLabel(80,180,310,30,"Cursor:");+  cursor_slider = slider1;+  Fl_Value_Slider_set_align(slider1,FL_ALIGN_LEFT);+  Fl_Value_Slider_set_step(slider1,1);+  Fl_Value_Slider_precision(slider1,0);+  Fl_Value_Slider_bounds(slider1,0,100);+  Fl_Value_Slider_set_value(slider1,0);+  Fl_Value_Slider_set_callback(slider1,&setcursor);+  Fl_Value_Slider_set_value(slider1,cursor);++  fl_Hor_Value_Slider slider2 = Fl_Hor_Value_Slider_New_WithLabel(80,220,310,30,"fgcolor:");+  Fl_Value_Slider_set_align(slider2,FL_ALIGN_LEFT);+  Fl_Value_Slider_set_step(slider2,1);+  Fl_Value_Slider_precision(slider2,0);+  Fl_Value_Slider_bounds(slider2,0,255);+  Fl_Value_Slider_set_value(slider2,0);+  Fl_Value_Slider_set_callback(slider2,&setfg);+  Fl_Value_Slider_set_value(slider2,fg);+++  fl_Hor_Value_Slider slider3 = Fl_Hor_Value_Slider_New_WithLabel(80,260,310,30,"bgcolor:");+  Fl_Value_Slider_set_align(slider3,FL_ALIGN_LEFT);+  Fl_Value_Slider_set_step(slider3,1);+  Fl_Value_Slider_precision(slider3,0);+  Fl_Value_Slider_bounds(slider3,0,255);+  Fl_Value_Slider_set_value(slider3,0);+  Fl_Value_Slider_set_callback(slider3,&setbg);+  Fl_Value_Slider_set_value(slider3,bg);++  Fl_Double_Window_set_resizable(window, window);+  Fl_Double_Window_show_with_args(window, argc, argv);+  return(Fl_run());+}
+ c-examples/curve.c view
@@ -0,0 +1,90 @@+#include <Fl_C.h>+#include <Fl_Double_WindowC.h>+#include <Fl_DrawC.h>+#include <Fl_Value_SliderC.h>+#include <Fl_Toggle_ButtonC.h>+#include <Fl_WidgetC.h>+#include <stdio.h>+#include <Fl_SliderC.h>++double args[9] = {+  20,20, 50,200, 100,20, 200,200, 0};+const char* name[9] = {+  "X0", "Y0", "X1", "Y1", "X2", "Y2", "X3", "Y3", "rotate"};++int points;++void draw(fl_Widget w){+  flc_push_clip(Fl_Widget_x(w),Fl_Widget_y(w),Fl_Widget_w(w),Fl_Widget_h(w));+  flc_set_color(FL_DARK3);+  flc_rectf(Fl_Widget_x(w),Fl_Widget_y(w),Fl_Widget_w(w),Fl_Widget_h(w));+  flc_push_matrix();+  if (args[8]) {+    flc_translate(Fl_Widget_x(w)+Fl_Widget_w(w)/2.0, Fl_Widget_y(w)+Fl_Widget_h(w)/2.0);+    flc_rotate(args[8]);+    flc_translate(-(Fl_Widget_x(w)+Fl_Widget_w(w)/2.0), -(Fl_Widget_y(w)+Fl_Widget_h(w)/2.0));+  }+  flc_translate(Fl_Widget_x(w),Fl_Widget_y(w));+  if (!points) {+    flc_set_color(FL_WHITE);+    flc_begin_complex_polygon();+    flc_curve(args[0],args[1],args[2],args[3],args[4],args[5],args[6],args[7]);+    flc_end_complex_polygon();+  }+  flc_set_color(FL_BLACK);+  flc_begin_line();+  flc_vertex(args[0],args[1]);+  flc_vertex(args[2],args[3]);+  flc_vertex(args[4],args[5]);+  flc_vertex(args[6],args[7]);+  flc_end_line();+  flc_set_color(points ? FL_WHITE : FL_RED);+  points ? flc_begin_points() : flc_begin_line();+  flc_curve(args[0],args[1],args[2],args[3],args[4],args[5],args[6],args[7]);+  points ? flc_end_points() : flc_end_line();+  flc_pop_matrix();+  flc_pop_clip();+}++fl_Widget d;++void points_cb(fl_Widget o, void* user_data) {+  points = Fl_Toggle_Button_value((fl_Toggle_Button)o);+  Fl_Widget_redraw(d);+}++void slider_cb(fl_Widget o, void* v) {+  fl_Slider s = (fl_Slider)o;+  args[(fl_intptr_t)(v)] = Fl_Slider_value(s);+  Fl_Widget_redraw(d);+}++int main(int argc, char** argv) {+  fl_Widget_Virtual_Funcs* funcs = Fl_Widget_default_virtual_funcs();+  funcs->draw = &draw;+  fl_Double_Window window = (fl_Double_Window)Fl_Double_Window_New(300,555);+  fl_Widget drawing = (fl_Widget)Fl_OverriddenWidget_New(10,10,280,280,funcs);+  d = drawing;+  int y = 300;+  int n = 0;+  for (; n<9; n++) {+    fl_Hor_Value_Slider s = (fl_Hor_Value_Slider)Fl_Hor_Value_Slider_New_WithLabel(50,y,240,25,name[n]);+    y += 25;+    Fl_Value_Slider_set_minimum(s,0); Fl_Value_Slider_set_maximum(s,280);+    if (n == 8) Fl_Value_Slider_set_maximum(s,360);+    Fl_Value_Slider_set_step(s,1);+    Fl_Value_Slider_set_value(s,args[n]);+    Fl_Value_Slider_set_align(s,FL_ALIGN_LEFT);+#ifdef __LP64__+    Fl_Value_Slider_set_callback_with_user_data(s,slider_cb, (void*) (long long)n);+#else+    Fl_Value_Slider_set_callback_with_user_data(s,slider_cb, (void*)n);+#endif+  }+  fl_Toggle_Button but = (fl_Toggle_Button)Fl_Toggle_Button_New_WithLabel(50,y,50,25,"points");+  Fl_Toggle_Button_set_callback(but,points_cb);++  Fl_Double_Window_end(window);+  Fl_Double_Window_show_with_args(window,argc,argv);+  return Fl_run();+}
+ c-examples/device.c view
@@ -0,0 +1,616 @@+#include <math.h>+#include <stdio.h>+#include <stdlib.h>+#include <Fl_C.h>+#include <Fl_Overlay_WindowC.h>+#include <Fl_WindowC.h>+#include <Fl_GroupC.h>++#include <Fl_Light_ButtonC.h>+#include <Fl_ButtonC.h>+#include <Fl_DrawC.h>+#include <Fl_ClockC.h>+#include "pixmaps/porsche.xpm"+#include <Fl_PixmapC.h>+#include <Fl_BitmapC.h>+#include <Fl_RGB_ImageC.h>+#include <Fl_Round_ButtonC.h>+#include <Fl_Return_ButtonC.h>+#include <Fl_Check_ButtonC.h>+#include <Fl_ButtonC.h>+#include <Fl_BoxC.h>+#include <Fl_PrinterC.h>+#include <Fl_WidgetC.h>++#define sorceress_width 75+#define sorceress_height 75+uchar sorceress_bits[] = {+  0xfc, 0x7e, 0x40, 0x20, 0x90, 0x00, 0x07, 0x80, 0x23, 0x00, 0x00, 0xc6,+  0xc1, 0x41, 0x98, 0xb8, 0x01, 0x07, 0x66, 0x00, 0x15, 0x9f, 0x03, 0x47,+  0x8c, 0xc6, 0xdc, 0x7b, 0xcc, 0x00, 0xb0, 0x71, 0x0e, 0x4d, 0x06, 0x66,+  0x73, 0x8e, 0x8f, 0x01, 0x18, 0xc4, 0x39, 0x4b, 0x02, 0x23, 0x0c, 0x04,+  0x1e, 0x03, 0x0c, 0x08, 0xc7, 0xef, 0x08, 0x30, 0x06, 0x07, 0x1c, 0x02,+  0x06, 0x30, 0x18, 0xae, 0xc8, 0x98, 0x3f, 0x78, 0x20, 0x06, 0x02, 0x20,+  0x60, 0xa0, 0xc4, 0x1d, 0xc0, 0xff, 0x41, 0x04, 0xfa, 0x63, 0x80, 0xa1,+  0xa4, 0x3d, 0x00, 0x84, 0xbf, 0x04, 0x0f, 0x06, 0xfc, 0xa1, 0x34, 0x6b,+  0x01, 0x1c, 0xc9, 0x05, 0x06, 0xc7, 0x06, 0xbe, 0x11, 0x1e, 0x43, 0x30,+  0x91, 0x05, 0xc3, 0x61, 0x02, 0x30, 0x1b, 0x30, 0xcc, 0x20, 0x11, 0x00,+  0xc1, 0x3c, 0x03, 0x20, 0x0a, 0x00, 0xe8, 0x60, 0x21, 0x00, 0x61, 0x1b,+  0xc1, 0x63, 0x08, 0xf0, 0xc6, 0xc7, 0x21, 0x03, 0xf8, 0x08, 0xe1, 0xcf,+  0x0a, 0xfc, 0x4d, 0x99, 0x43, 0x07, 0x3c, 0x0c, 0xf1, 0x9f, 0x0b, 0xfc,+  0x5b, 0x81, 0x47, 0x02, 0x16, 0x04, 0x31, 0x1c, 0x0b, 0x1f, 0x17, 0x89,+  0x4d, 0x06, 0x1a, 0x04, 0x31, 0x38, 0x02, 0x07, 0x56, 0x89, 0x49, 0x04,+  0x0b, 0x04, 0xb1, 0x72, 0x82, 0xa1, 0x54, 0x9a, 0x49, 0x04, 0x1d, 0x66,+  0x50, 0xe7, 0xc2, 0xf0, 0x54, 0x9a, 0x58, 0x04, 0x0d, 0x62, 0xc1, 0x1f,+  0x44, 0xfc, 0x51, 0x90, 0x90, 0x04, 0x86, 0x63, 0xe0, 0x74, 0x04, 0xef,+  0x31, 0x1a, 0x91, 0x00, 0x02, 0xe2, 0xc1, 0xfd, 0x84, 0xf9, 0x30, 0x0a,+  0x91, 0x00, 0x82, 0xa9, 0xc0, 0xb9, 0x84, 0xf9, 0x31, 0x16, 0x81, 0x00,+  0x42, 0xa9, 0xdb, 0x7f, 0x0c, 0xff, 0x1c, 0x16, 0x11, 0x00, 0x02, 0x28,+  0x0b, 0x07, 0x08, 0x60, 0x1c, 0x02, 0x91, 0x00, 0x46, 0x29, 0x0e, 0x00,+  0x00, 0x00, 0x10, 0x16, 0x11, 0x02, 0x06, 0x29, 0x04, 0x00, 0x00, 0x00,+  0x10, 0x16, 0x91, 0x06, 0xa6, 0x2a, 0x04, 0x00, 0x00, 0x00, 0x18, 0x24,+  0x91, 0x04, 0x86, 0x2a, 0x04, 0x00, 0x00, 0x00, 0x18, 0x27, 0x93, 0x04,+  0x96, 0x4a, 0x04, 0x00, 0x00, 0x00, 0x04, 0x02, 0x91, 0x04, 0x86, 0x4a,+  0x0c, 0x00, 0x00, 0x00, 0x1e, 0x23, 0x93, 0x04, 0x56, 0x88, 0x08, 0x00,+  0x00, 0x00, 0x90, 0x21, 0x93, 0x04, 0x52, 0x0a, 0x09, 0x80, 0x01, 0x00,+  0xd0, 0x21, 0x95, 0x04, 0x57, 0x0a, 0x0f, 0x80, 0x27, 0x00, 0xd8, 0x20,+  0x9d, 0x04, 0x5d, 0x08, 0x1c, 0x80, 0x67, 0x00, 0xe4, 0x01, 0x85, 0x04,+  0x79, 0x8a, 0x3f, 0x00, 0x00, 0x00, 0xf4, 0x11, 0x85, 0x06, 0x39, 0x08,+  0x7d, 0x00, 0x00, 0x18, 0xb7, 0x10, 0x81, 0x03, 0x29, 0x12, 0xcb, 0x00,+  0x7e, 0x30, 0x28, 0x00, 0x85, 0x03, 0x29, 0x10, 0xbe, 0x81, 0xff, 0x27,+  0x0c, 0x10, 0x85, 0x03, 0x29, 0x32, 0xfa, 0xc1, 0xff, 0x27, 0x94, 0x11,+  0x85, 0x03, 0x28, 0x20, 0x6c, 0xe1, 0xff, 0x07, 0x0c, 0x01, 0x85, 0x01,+  0x28, 0x62, 0x5c, 0xe3, 0x8f, 0x03, 0x4e, 0x91, 0x80, 0x05, 0x39, 0x40,+  0xf4, 0xc2, 0xff, 0x00, 0x9f, 0x91, 0x84, 0x05, 0x31, 0xc6, 0xe8, 0x07,+  0x7f, 0x80, 0xcd, 0x00, 0xc4, 0x04, 0x31, 0x06, 0xc9, 0x0e, 0x00, 0xc0,+  0x48, 0x88, 0xe0, 0x04, 0x79, 0x04, 0xdb, 0x12, 0x00, 0x30, 0x0c, 0xc8,+  0xe4, 0x04, 0x6d, 0x06, 0xb6, 0x23, 0x00, 0x18, 0x1c, 0xc0, 0x84, 0x04,+  0x25, 0x0c, 0xff, 0xc2, 0x00, 0x4e, 0x06, 0xb0, 0x80, 0x04, 0x3f, 0x8a,+  0xb3, 0x83, 0xff, 0xc3, 0x03, 0x91, 0x84, 0x04, 0x2e, 0xd8, 0x0f, 0x3f,+  0x00, 0x00, 0x5f, 0x83, 0x84, 0x04, 0x2a, 0x70, 0xfd, 0x7f, 0x00, 0x00,+  0xc8, 0xc0, 0x84, 0x04, 0x4b, 0xe2, 0x2f, 0x01, 0x00, 0x08, 0x58, 0x60,+  0x80, 0x04, 0x5b, 0x82, 0xff, 0x01, 0x00, 0x08, 0xd0, 0xa0, 0x84, 0x04,+  0x72, 0x80, 0xe5, 0x00, 0x00, 0x08, 0xd2, 0x20, 0x44, 0x04, 0xca, 0x02,+  0xff, 0x00, 0x00, 0x08, 0xde, 0xa0, 0x44, 0x04, 0x82, 0x02, 0x6d, 0x00,+  0x00, 0x08, 0xf6, 0xb0, 0x40, 0x02, 0x82, 0x07, 0x3f, 0x00, 0x00, 0x08,+  0x44, 0x58, 0x44, 0x02, 0x93, 0x3f, 0x1f, 0x00, 0x00, 0x30, 0x88, 0x4f,+  0x44, 0x03, 0x83, 0x23, 0x3e, 0x00, 0x00, 0x00, 0x18, 0x60, 0xe0, 0x07,+  0xe3, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x70, 0x70, 0xe4, 0x07, 0xc7, 0x1b,+  0xfe, 0x01, 0x00, 0x00, 0xe0, 0x3c, 0xe4, 0x07, 0xc7, 0xe3, 0xfe, 0x1f,+  0x00, 0x00, 0xff, 0x1f, 0xfc, 0x07, 0xc7, 0x03, 0xf8, 0x33, 0x00, 0xc0,+  0xf0, 0x07, 0xff, 0x07, 0x87, 0x02, 0xfc, 0x43, 0x00, 0x60, 0xf0, 0xff,+  0xff, 0x07, 0x8f, 0x06, 0xbe, 0x87, 0x00, 0x30, 0xf8, 0xff, 0xff, 0x07,+  0x8f, 0x14, 0x9c, 0x8f, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x07, 0x9f, 0x8d,+  0x8a, 0x0f, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x07, 0xbf, 0x0b, 0x80, 0x1f,+  0x00, 0x00, 0xff, 0xff, 0xff, 0x07, 0x7f, 0x3a, 0x80, 0x3f, 0x00, 0x80,+  0xff, 0xff, 0xff, 0x07, 0xff, 0x20, 0xc0, 0x3f, 0x00, 0x80, 0xff, 0xff,+  0xff, 0x07, 0xff, 0x01, 0xe0, 0x7f, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x07,+  0xff, 0x0f, 0xf8, 0xff, 0x40, 0xe0, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff,+  0xff, 0xff, 0x40, 0xf0, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff,+  0x41, 0xf0, 0xff, 0xff, 0xff, 0x07};+void draw_widget(fl_Widget self){+  Fl_Box_draw_super(self);+  flc_set_color(FL_RED);+  flc_rectf(Fl_Box_x(self)+5,Fl_Box_y(self)+5,Fl_Box_w(self)-10,Fl_Box_h(self)-10);+  flc_push_clip(Fl_Box_x(self)+6,Fl_Box_y(self)+6,Fl_Box_w(self)-12,Fl_Box_h(self)-12);+  flc_set_color(FL_DARK_GREEN);+  flc_rectf(Fl_Box_x(self)+5,Fl_Box_y(self)+5,Fl_Box_w(self)-10,Fl_Box_h(self)-10);+  flc_pop_clip();+  flc_set_color(FL_YELLOW);+  flc_rectf(Fl_Box_x(self)+7,Fl_Box_y(self)+7,Fl_Box_w(self)-14,Fl_Box_h(self)-14);+  flc_set_color(FL_BLUE);++  flc_rect(Fl_Box_x(self)+8,Fl_Box_y(self)+8,Fl_Box_w(self)-16,Fl_Box_h(self)-16);+  flc_push_clip(Fl_Box_x(self)+25,Fl_Box_y(self)+25,Fl_Box_w(self)-50, Fl_Box_h(self)-50);+  flc_set_color(FL_BLACK);+  flc_rect(Fl_Box_x(self)+24,Fl_Box_y(self)+24,Fl_Box_w(self)-48,Fl_Box_h(self)-48);+  flc_line(Fl_Box_x(self)+27,Fl_Box_y(self)+27,Fl_Box_x(self)+Fl_Box_w(self)-27,Fl_Box_y(self)+Fl_Box_h(self)-27);+  flc_line(Fl_Box_x(self)+27,Fl_Box_y(self)+Fl_Box_h(self)-27,Fl_Box_x(self)+Fl_Box_w(self)-27,Fl_Box_y(self)+27);+  flc_pop_clip();+}+void draw_widget2(fl_Widget self){+  Fl_Box_draw_super(self);+  int d;+  for(d=Fl_Box_y(self)+5;d<48+Fl_Box_y(self);d+=2){+    flc_xyline(Fl_Box_x(self)+5,d,Fl_Box_x(self)+48);+  }++  flc_push_clip(Fl_Box_x(self)+52,Fl_Box_y(self)+5,45,43);+  for(d=Fl_Box_y(self)+5;d<150+Fl_Box_y(self);d+=3){+    flc_line(Fl_Box_x(self)+52,d,Fl_Box_x(self)+92,d-40);+  }+  flc_pop_clip();++  flc_line_style(FL_DASH);+  flc_xyline(Fl_Box_x(self)+5,Fl_Box_y(self)+55,Fl_Box_x(self)+48);+  flc_line_style(FL_DOT);+  flc_xyline(Fl_Box_x(self)+5,Fl_Box_y(self)+58,Fl_Box_x(self)+48);+  flc_line_style(FL_DASHDOT);+  flc_xyline(Fl_Box_x(self)+5,Fl_Box_y(self)+61,Fl_Box_x(self)+48);+  flc_line_style(FL_DASHDOTDOT);+  flc_xyline(Fl_Box_x(self)+5,Fl_Box_y(self)+64,Fl_Box_x(self)+48);+  flc_line_style_with_width_dashes(0,0,(char*)"\7\3\7\2");+  flc_xyline(Fl_Box_x(self)+5,Fl_Box_y(self)+67,Fl_Box_x(self)+48);++  flc_line_style(0);++  flc_line(Fl_Box_x(self)+5,Fl_Box_y(self)+72,Fl_Box_x(self)+25,Fl_Box_y(self)+95);+  flc_line_with_x2_y2(Fl_Box_x(self)+8,Fl_Box_y(self)+72,Fl_Box_x(self)+28,Fl_Box_y(self)+95,Fl_Box_x(self)+31,Fl_Box_y(self)+72);++  flc_set_color(FL_YELLOW);+  flc_polygon(Fl_Box_x(self)+11, Fl_Box_y(self)+72,Fl_Box_x(self)+27,Fl_Box_y(self)+91,Fl_Box_x(self)+29,Fl_Box_y(self)+72);+  flc_set_color(FL_RED);+  flc_loop(Fl_Box_x(self)+11, Fl_Box_y(self)+72,Fl_Box_x(self)+27,Fl_Box_y(self)+91,Fl_Box_x(self)+29,Fl_Box_y(self)+72);++  flc_set_color(FL_BLUE); ////+  flc_line_style_with_width(FL_SOLID, 6);+  flc_loop(Fl_Box_x(self)+31, Fl_Box_y(self)+12,Fl_Box_x(self)+47,Fl_Box_y(self)+31,Fl_Box_x(self)+49,Fl_Box_y(self)+12);+  flc_line_style(0);++  flc_set_color_with_rgb(200,0,200);+  flc_polygon_with_x3_y3(Fl_Box_x(self)+35,Fl_Box_y(self)+72,Fl_Box_x(self)+33,Fl_Box_y(self)+95,Fl_Box_x(self)+48,Fl_Box_y(self)+95,Fl_Box_x(self)+43,Fl_Box_y(self)+72);+  flc_set_color(FL_GREEN);+  flc_loop_with_x3_y3(Fl_Box_x(self)+35,Fl_Box_y(self)+72,Fl_Box_x(self)+33,Fl_Box_y(self)+95,Fl_Box_x(self)+48,Fl_Box_y(self)+95,Fl_Box_x(self)+43,Fl_Box_y(self)+72);++  flc_set_color(FL_BLUE);+  flc_yxline_with_y1(Fl_Box_x(self)+65,Fl_Box_y(self)+63,Fl_Box_y(self)+66);+  flc_set_color(FL_GREEN);+  flc_yxline_with_y1(Fl_Box_x(self)+66,Fl_Box_y(self)+66,Fl_Box_y(self)+63);++  flc_set_color(FL_BLUE);+  flc_rect(Fl_Box_x(self)+80,Fl_Box_y(self)+55,5,5);+  flc_set_color(FL_YELLOW);+  flc_rectf(Fl_Box_x(self)+81,Fl_Box_y(self)+56,3,3);+  flc_set_color(FL_BLACK);+  flc_point(Fl_Box_x(self)+82,Fl_Box_y(self)+57);++  flc_set_color(FL_BLUE);+  flc_rect(Fl_Box_x(self)+56, Fl_Box_y(self)+79, 24, 17);+  flc_set_color(FL_CYAN);+  flc_rectf(Fl_Box_x(self)+57, Fl_Box_y(self)+80, 22 , 15 );+  flc_set_color(FL_RED);+  flc_arc_by_width_height(Fl_Box_x(self)+57, Fl_Box_y(self)+80, 22 ,15 ,40, 270);+  flc_set_color(FL_YELLOW);+  flc_pie(Fl_Box_x(self)+58, Fl_Box_y(self)+81, 20 ,13 ,40, 270);++  flc_line_style(0);++  flc_set_color(FL_BLACK);+  flc_point(Fl_Box_x(self)+58,Fl_Box_y(self)+58);+  flc_set_color(FL_RED);+  flc_yxline_with_y1(Fl_Box_x(self)+59,Fl_Box_y(self)+58,Fl_Box_y(self)+59);+  flc_set_color(FL_GREEN);+  flc_yxline_with_y1(Fl_Box_x(self)+60,Fl_Box_y(self)+59,Fl_Box_y(self)+58);+  flc_set_color(FL_BLACK);+  flc_xyline(Fl_Box_x(self)+61,Fl_Box_y(self)+58,Fl_Box_x(self)+62);+  flc_set_color(FL_RED);+  flc_xyline(Fl_Box_x(self)+62,Fl_Box_y(self)+59,Fl_Box_x(self)+61);++  flc_set_color(FL_GREEN);+  flc_yxline_with_y2_x2(Fl_Box_x(self)+57,Fl_Box_y(self)+58,Fl_Box_y(self)+59,Fl_Box_x(self)+58);+  flc_set_color(FL_BLUE);+  flc_xyline_with_x2(Fl_Box_x(self)+58,Fl_Box_y(self)+60,Fl_Box_x(self)+56,Fl_Box_y(self)+58);+  flc_set_color(FL_RED);+  flc_xyline_with_x2(Fl_Box_x(self)+58,Fl_Box_y(self)+61,Fl_Box_x(self)+56,Fl_Box_y(self)+63);+  flc_set_color(FL_GREEN);+  flc_yxline_with_y2_x2(Fl_Box_x(self)+57,Fl_Box_y(self)+63,Fl_Box_y(self)+62,Fl_Box_x(self)+58);++  flc_set_color(FL_BLUE);+  flc_line(Fl_Box_x(self)+58,Fl_Box_y(self)+63, Fl_Box_x(self)+60, Fl_Box_y(self)+65);+  flc_set_color(FL_BLACK);+  flc_line(Fl_Box_x(self)+61,Fl_Box_y(self)+65, Fl_Box_x(self)+59, Fl_Box_y(self)+63);++  flc_set_color(FL_BLACK);+};+void draw_widget3(fl_Widget self){+  Fl_Box_draw_super(self);+  double d;+  flc_push_clip(Fl_Box_x(self)+5,Fl_Box_y(self)+5,45,43);+  for(d=Fl_Box_y(self)+5;d<95+Fl_Box_y(self);d+=1.63){+    flc_begin_line();+    flc_vertex(Fl_Box_x(self)+5,d);+    flc_vertex(Fl_Box_x(self)+48,d);+    flc_end_line();+  }+  flc_pop_clip();++  flc_push_clip(Fl_Box_x(self)+52,Fl_Box_y(self)+5,45,43);+  for(d=Fl_Box_y(self)+5;d<150+Fl_Box_y(self);d+=2.3052){+    flc_begin_line();+    flc_vertex(Fl_Box_x(self)+52,d);+    flc_vertex(Fl_Box_x(self)+92,d-43);+    flc_end_line();+  }+  flc_pop_clip();+};+void draw_widget4(fl_Widget self){+  Fl_Box_draw_super(self);+  flc_push_matrix();+  flc_translate(Fl_Box_x(self),Fl_Box_y(self));+  flc_scale_with_y(.75,.75);++  flc_line_style_with_width(FL_SOLID , 5);+  flc_begin_line();+  flc_vertex(10, 160);+  flc_vertex(40, 160);+  flc_vertex(40, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_RED);+  flc_line_style_with_width(FL_SOLID | FL_CAP_FLAT |FL_JOIN_MITER , 5);+  flc_begin_line();+  flc_vertex(10, 150);+  flc_vertex(50, 150);+  flc_vertex(50, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_GREEN);+  flc_line_style_with_width(FL_SOLID | FL_CAP_ROUND |FL_JOIN_ROUND , 5);+  flc_begin_line();+  flc_vertex(10, 140);+  flc_vertex(60, 140);+  flc_vertex(60, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_BLUE);+  flc_line_style_with_width(FL_SOLID | FL_CAP_SQUARE |FL_JOIN_BEVEL , 5);+  flc_begin_line();+  flc_vertex(10, 130);+  flc_vertex(70, 130);+  flc_vertex(70, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_BLACK);+  flc_line_style_with_width(FL_DASH , 5);+  flc_begin_line();+  flc_vertex(10, 120);+  flc_vertex(80, 120);+  flc_vertex(80, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_RED);+  flc_line_style_with_width(FL_DASH |FL_CAP_FLAT , 5);+  flc_begin_line();+  flc_vertex(10, 110);+  flc_vertex(90, 110);+  flc_vertex(90, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_GREEN);+  flc_line_style_with_width(FL_DASH |FL_CAP_ROUND , 5);+  flc_begin_line();+  flc_vertex(10, 100);+  flc_vertex(100, 100);+  flc_vertex(100, 190);+  flc_end_line();+  flc_line_style(0);+++  flc_set_color(FL_BLUE);+  flc_line_style_with_width(FL_DASH |FL_CAP_SQUARE , 5);+  flc_begin_line();+  flc_vertex(10, 90);+  flc_vertex(110, 90);+  flc_vertex(110, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_BLACK);+  flc_line_style_with_width(FL_DOT, 5);+  flc_begin_line();+  flc_vertex(10, 80);+  flc_vertex(120, 80);+  flc_vertex(120, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_RED);+  flc_line_style_with_width(FL_DOT | FL_CAP_FLAT, 5);+  flc_begin_line();+  flc_vertex(10, 70);+  flc_vertex(130, 70);+  flc_vertex(130, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_GREEN);+  flc_line_style_with_width(FL_DOT | FL_CAP_ROUND, 5);+  flc_begin_line();+  flc_vertex(10, 60);+  flc_vertex(140, 60);+  flc_vertex(140, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_BLUE);+  flc_line_style_with_width(FL_DOT | FL_CAP_SQUARE, 5);+  flc_begin_line();+  flc_vertex(10, 50);+  flc_vertex(150, 50);+  flc_vertex(150, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_BLACK);+  flc_line_style_with_width(FL_DASHDOT |FL_CAP_ROUND |FL_JOIN_ROUND , 5);+  flc_begin_line();+  flc_vertex(10, 40);+  flc_vertex(160, 40);+  flc_vertex(160, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_RED);+  flc_line_style_with_width(FL_DASHDOTDOT |FL_CAP_SQUARE |FL_JOIN_BEVEL , 5);+  flc_begin_line();+  flc_vertex(10, 30);+  flc_vertex(170, 30);+  flc_vertex(170, 190);+  flc_end_line();+  flc_line_style(0);+++  flc_set_color(FL_GREEN);+  flc_line_style_with_width(FL_DASHDOTDOT |FL_CAP_ROUND |FL_JOIN_ROUND , 5);+  flc_begin_line();+  flc_vertex(10, 20);+  flc_vertex(180, 20);+  flc_vertex(180, 190);+  flc_end_line();+  flc_line_style(0);++  flc_set_color(FL_BLUE);+  flc_line_style_with_width_dashes(0, 5, (char*)"\12\3\4\2\2\1");+  flc_begin_line();+  flc_vertex(10, 10);+  flc_vertex(190, 10);+  flc_vertex(190, 190);++  flc_end_line();+  flc_line_style(0);+  flc_pop_matrix();+  flc_set_color(FL_BLACK);+}+void draw_widget5(fl_Widget self){+  Fl_Box_draw_super(self);+  //fl_push_clip(x(),y(),w(),h());+  flc_push_matrix();++  flc_translate(Fl_Box_x(self),Fl_Box_y(self));+  flc_push_matrix();+  flc_mult_matrix(1,3,0,1,0,-20);+  flc_set_color(FL_GREEN);+  flc_begin_polygon();+  flc_vertex(10,10);+  flc_vertex(100,-80);+  flc_vertex(100,-190);+  flc_end_polygon();++  flc_set_color(FL_RED);+  flc_line_style_with_width(FL_DASHDOT, 7);+  flc_begin_loop();++  flc_vertex(10,10);+  flc_vertex(100,-80);+  flc_vertex(100,-190);+  flc_end_loop();+  flc_line_style(0);++  flc_set_color(FL_BLUE);+  flc_line_style_with_width(FL_SOLID, 3);+  flc_begin_loop();+  flc_circle(60,-50,30);+  flc_end_loop();+  flc_line_style(0);++  flc_pop_matrix();+  flc_scale_with_y(1.8,1);++  flc_set_color(FL_YELLOW);+  flc_begin_polygon();+  flc_arc_by_radius(30,90,20,-45,200);+  flc_end_polygon();++  flc_set_color(FL_BLACK);+  flc_line_style_with_width(FL_DASH, 3);+  flc_begin_line();+  flc_arc_by_radius(30,90,20,-45,200);+  flc_end_line();+  flc_line_style(0);++  flc_translate(15,0);+  flc_scale_with_y(1.5,3);+  flc_begin_complex_polygon();+  flc_vertex(30,70);+  flc_arc_by_radius(45,55,10,200,90);+  flc_arc_by_radius(55,45,8,-170,20);+  flc_vertex(60,40);+  flc_vertex(30,20);+  flc_vertex(40,5);+  flc_vertex(60,25);+  //fl_vertex(50,50);+  flc_curve(35,30,30,53,0,35,65,65);+  flc_gap();+  flc_vertex(50,25);+  flc_vertex(40,10);+  flc_vertex(35,20);+  flc_end_complex_polygon();+  flc_pop_matrix();+}+fl_Box make_widget(int x, int y, fl_Box_Virtual_Funcs* funcs){+  fl_Box b = Fl_OverriddenBox_New_WithLabel(x,y,100,100, "Clipping and rect(f):\nYellow rect.framed\nby B-Y-G-R rect. 1 p.\nthick. Your printer may \nrender very thin lines\nsurrounding \"X\"",funcs);+  Fl_Box_set_align(b, FL_ALIGN_TOP);+  Fl_Box_set_labelsize(b, 10);+  return b;+}+fl_Box make_widget2(int x, int y, fl_Box_Virtual_Funcs* funcs){+  fl_Box b = Fl_OverriddenBox_New_WithLabel(x,y,100,100, "Integer primitives",funcs);+  Fl_Box_set_labelsize(b,10);+  Fl_Box_set_align(b,FL_ALIGN_TOP);+  return b;+}+fl_Box make_widget3(int x, int y, fl_Box_Virtual_Funcs* funcs){+  fl_Box b = Fl_OverriddenBox_New_WithLabel(x,y,100,100, "Sub-pixel drawing of\nlines 1.63 points apart\nOn the screen you\ncan see aliasing, the\nprinter should render\nthem properly",funcs);+  Fl_Box_set_labelsize(b,10);+  Fl_Box_set_align(b,FL_ALIGN_TOP);+  return b;+}+fl_Box make_widget4(int x, int y, fl_Box_Virtual_Funcs* funcs){+  fl_Box b = Fl_OverriddenBox_New_WithLabel(x,y,150,150, "Line styles",funcs);+  Fl_Box_set_labelsize(b,10);+  Fl_Box_set_align(b,FL_ALIGN_TOP);+  return b;+}+fl_Box make_widget5(int x, int y, fl_Box_Virtual_Funcs* funcs){+  fl_Box b = Fl_OverriddenBox_New_WithLabel(x,y,230,250, "Complex (double) drawings:\nBlue ellipse may not be\ncorrectly transformed\ndue to non-orthogonal\ntransformation",funcs);+  Fl_Box_set_labelsize(b,10);+  Fl_Box_set_align(b,FL_ALIGN_TOP);+  return b;+}+uchar* image;+int width;+int height;+void make_image() {+  image = malloc(sizeof(uchar)*4*width*height);+  uchar *p = image;+  int y = 0;+  for (;y < height; y++) {+    double Y = (double)(y)/(height-1);+    int x = 0;+    for (; x < width; x++) {+      double X = (double)(x)/(width-1);+      *p++ = (uchar)(255*((1-X)*(1-Y))); // red in upper-left+      *p++ = (uchar)(255*((1-X)*Y));	// green in lower-left+      *p++ = (uchar)(255*(X*Y));	// blue in lower-right+      X -= 0.5;+      Y -= 0.5;+      int alpha = (int)(350 * sqrt(X * X + Y * Y));+      if (alpha < 255) *p++ = (uchar)(alpha);	// alpha transparency+      else *p++ = 255;+      Y += 0.5;+    }+  }+}+void print(fl_Widget w, void *v) {+  fl_Widget g = w;+  fl_Printer p = Fl_Printer_New();+  if (!Fl_Printer_start_job(p,1)) {+    Fl_Printer_start_page(p);+    fl_Window w = Fl_Widget_window(g);+    Fl_Printer_print_window(p,w);+    Fl_Printer_end_page(p);+    Fl_Printer_end_job(p);+  }+  Fl_Printer_Destroy(p);+}+void draw_button(fl_Widget w){+  fl_Button b = (fl_Button)w;+  Fl_Button_draw_super(b);+  if (Fl_Button_type(b) == FL_HIDDEN_BUTTON) return;+  Fl_Color col = Fl_Button_value(b) ? Fl_Button_selection_color(b) : Fl_Button_color(b);+  Fl_Button_draw_box_with_tc(b,Fl_Button_value(b) ? (Fl_Button_down_box(b)?Fl_Button_down_box(b):fl_downC(Fl_Button_box(b))) : Fl_Button_box(b), col);+  flc_set_color(FL_WHITE);+  flc_line_style_with_width(FL_SOLID,5);+  flc_line(Fl_Button_x(b)+15,Fl_Button_y(b)+10,Fl_Button_x(b)+Fl_Button_w(b)-15,Fl_Button_y(b)+Fl_Button_h(b)-23);+  flc_line(Fl_Button_x(b)+Fl_Button_w(b)-15,Fl_Button_y(b)+10,Fl_Button_x(b)+15,Fl_Button_y(b)+Fl_Button_h(b)-23);+  flc_line_style(0);+  Fl_Button_draw_label(b);+};+int main (int argc, char** argv){+  width = 80;+  height = 80;+  fl_Window w2 = Fl_Window_New_WithLabel(500,560,"Graphics test");+  fl_Group c2 = Fl_Group_New(3, 43, 494, 514 );+  fl_Box_Virtual_Funcs* widget_funcs = Fl_Box_default_virtual_funcs();+  widget_funcs->draw = &draw_widget;+  make_widget(10,140,widget_funcs);+  fl_Box_Virtual_Funcs* widget2_funcs = Fl_Box_default_virtual_funcs();+  widget2_funcs->draw = &draw_widget2;+  make_widget2(110,80,widget2_funcs);+  fl_Box_Virtual_Funcs* widget3_funcs = Fl_Box_default_virtual_funcs();+  widget3_funcs->draw = &draw_widget3;+  make_widget3(220,140,widget3_funcs);+  fl_Box_Virtual_Funcs* widget4_funcs = Fl_Box_default_virtual_funcs();+  widget4_funcs->draw = &draw_widget4;+  make_widget4(330,70,widget4_funcs);+  fl_Box_Virtual_Funcs* widget5_funcs = Fl_Box_default_virtual_funcs();+  widget5_funcs->draw = &draw_widget5;+  make_widget5(140,270,widget5_funcs);++  make_image();+  fl_RGB_Image rgb = Fl_RGB_Image_New_With_D(image, width, height, 4);+  fl_Button_Virtual_Funcs* b_rgb_funcs = Fl_Button_default_virtual_funcs();+  b_rgb_funcs->draw = &draw_button;+  fl_Button b_rgb = Fl_OverriddenButton_New_WithLabel(10,245,100,100,"RGB with alpha",b_rgb_funcs);+  Fl_Button_set_image(b_rgb,rgb);+++  fl_Button_Virtual_Funcs* b_pixmap_funcs = Fl_Button_default_virtual_funcs();+  b_pixmap_funcs->draw = &draw_button;+  fl_Button b_pixmap = Fl_OverriddenButton_New_WithLabel(10,345,100,100,"Pixmap",b_pixmap_funcs);+  fl_Pixmap pixmap = Fl_Pixmap_New((char**)porsche_xpm);+  Fl_Button_set_image(b_pixmap, pixmap);++  fl_Button_Virtual_Funcs* b_bitmap_funcs = Fl_Button_default_virtual_funcs();+  b_bitmap_funcs->draw = &draw_button;+  fl_Button b_bitmap = Fl_OverriddenButton_New_WithLabel(10,445,100,100,"Bitmap",b_bitmap_funcs);+  fl_Bitmap sorceress = Fl_Bitmap_New_WithUchar(sorceress_bits, sorceress_width, sorceress_height);+  Fl_Button_set_labelcolor(b_bitmap,FL_GREEN);+  Fl_Button_set_image(b_bitmap, sorceress);+  Fl_Clock_New(360,230,120,120);+  fl_Return_Button ret = Fl_Return_Button_New_WithLabel(360, 360, 120,30, "Return");+  Fl_Return_Button_deactivate(ret);+  fl_Button but1 = Fl_Button_New_WithLabel(360, 390, 30, 30, "@->|");+  Fl_Button_set_labelcolor(but1,FL_DARK3);+  fl_Button but2 = Fl_Button_New_WithLabel(390, 390, 30, 30, "@UpArrow");+  Fl_Button_set_labelcolor(but2,FL_DARK3);+  fl_Button but3 = Fl_Button_New_WithLabel(420, 390, 30, 30, "@DnArrow");+  Fl_Button_set_labelcolor(but3,FL_DARK3);+  fl_Button but4 = Fl_Button_New_WithLabel(450, 390, 30, 30, "@+");+  Fl_Button_set_labelcolor(but4,FL_DARK3);+  fl_Button but5 = Fl_Button_New_WithLabel(360, 425, 120, 30, "Hello, World");+  Fl_Button_set_labelfont(but5,FL_BOLD|FL_ITALIC);+  Fl_Button_set_labeltype(but5,FL_SHADOW_LABEL);+  Fl_Button_set_box(but5,FL_ROUND_UP_BOX);+  fl_Button but6 = Fl_Button_New_WithLabel(360, 460, 120, 30, "Plastic");+  Fl_Button_set_box(but6,FL_PLASTIC_UP_BOX);+  {+    fl_Group o = Fl_Group_New(360, 495, 120, 40);+    Fl_Group_set_box(o,FL_UP_BOX);+    {+      fl_Group o = Fl_Group_New(365, 500, 110, 30);+      Fl_Group_set_box(o,FL_THIN_UP_FRAME);+      {+	fl_Round_Button o = Fl_Round_Button_New_WithLabel(365, 500, 40, 30, "rad");+	Fl_Round_Button_set_value(o,1);+      }+      {+	fl_Check_Button o = Fl_Check_Button_New_WithLabel(410, 500, 60, 30, "check");+	Fl_Check_Button_set_value(o,1);+      }++      Fl_Group_end(o);+    }+    Fl_Group_end(o);+    Fl_Group_deactivate(o);+  }+  fl_Box tx = Fl_Box_New_WithLabel(120,492,230,50,"Background is not printed because\nencapsulating group, which we are\n printing, has not set the box type");+  Fl_Box_set_box(tx,FL_SHADOW_BOX);+  Fl_Box_set_labelsize(tx,12);++  Fl_Box_hide(tx);++  Fl_Group_end(c2);+  fl_Button b4 = Fl_Button_New_WithLabel(10,5, 150, 25, "Print");+  Fl_Button_set_callback_with_user_data(b4,print,c2);++  Fl_Window_end(w2);+  Fl_Window_show_with_args(w2,argc, argv);+  return Fl_run();+}
+ c-examples/doublebuffer.c view
@@ -0,0 +1,86 @@+#include <Fl_C.h>+#include <Fl_WindowC.h>+#include <Fl_Single_WindowC.h>+#include <Fl_Double_WindowC.h>+#include <Fl_BoxC.h>+#include <Fl_DrawC.h>+#include <stdlib.h>+#include <FL/math.h>+#include <stdio.h>+#include <Fl_SliderC.h>+void star(int w, int h, int n) {+  flc_push_matrix();+  flc_translate(w/2, h/2);+  flc_scale_with_y(w/2, h/2);+  int i = 0;+  for (; i < n; i++) {+    int j = i + 1;+    for (; j < n; j++){+      flc_begin_line();+      flc_vertex(cos(2*M_PI*i/n+.1), sin(2*M_PI*i/n+.1));+      flc_vertex(cos(2*M_PI*j/n+.1), sin(2*M_PI*j/n+.1));+      flc_end_line();+    }+  }+  flc_pop_matrix();+}++int sides[2] = {20,20};++void slider_cb(fl_Widget o, void* v) {+  fl_Slider s = (fl_Slider)o;+  sides[(long)v] = (int)Fl_Slider_value(s);+  Fl_Slider_redraw(Fl_Slider_parent(s));+}+void bad_draw(int w,int h,int which) {+  flc_set_color(FL_BLACK); flc_rectf(0,0,w,h);+  flc_set_color(FL_WHITE); star(w,h,sides[which]);+}+void draw_single(fl_Widget w) {+  fl_Single_Window win =  (fl_Single_Window)w;+  bad_draw(Fl_Single_Window_w(win),Fl_Single_Window_h(win),0);+  Fl_Single_Window_draw_child(win, Fl_Single_Window_child(win,0));+}+void draw_double(fl_Widget w) {+  fl_Double_Window win =  (fl_Double_Window)w;+  bad_draw(Fl_Double_Window_w(win),Fl_Double_Window_h(win),0);+  Fl_Double_Window_draw_child(win, Fl_Double_Window_child(win,0));+}++int main (int argc ,char** argv){+  if (!Fl_visual(FL_DOUBLE))+    printf("Xdbe not supported, faking double buffer with pixmaps.\n");+  fl_Window w01 = Fl_Window_New_WithLabel(420,420,"Fl_Single_Window");+  Fl_Window_set_box(w01,FL_FLAT_BOX);+  fl_Single_Window_Virtual_Funcs* single_funcs = Fl_Single_Window_default_virtual_funcs();+  single_funcs->draw = &draw_single;+  fl_Single_Window w1 = Fl_OverriddenSingle_Window_NewXY_WithLabel(10,10,400,400,"Fl_Single_Window",single_funcs);+  Fl_Single_Window_set_box(w1,FL_FLAT_BOX);+  Fl_Single_Window_set_color(w1,FL_BLACK); //w1.position(100,200);+  fl_Hor_Slider slider0 = Fl_Hor_Slider_New(20,370,360,25);+  Fl_Slider_range(slider0,2,30);+  Fl_Slider_set_step(slider0,1);+  Fl_Slider_set_value(slider0,sides[0]);+  Fl_Slider_set_callback(slider0,slider_cb);+  Fl_Single_Window_end(w1);+  Fl_Window_end(w01);+  fl_Window w02 = Fl_Window_New_WithLabel(420,420,"Fl_Double_Window");+  Fl_Window_set_box(w02,FL_FLAT_BOX);+  fl_Double_Window_Virtual_Funcs* double_funcs = Fl_Double_Window_default_virtual_funcs();+  double_funcs->draw = &draw_double;+  fl_Double_Window w2 = Fl_OverriddenDouble_Window_NewXY_WithLabel(10,10,400,400,"Fl_Double_Window",double_funcs);+  Fl_Double_Window_set_box(w2,FL_FLAT_BOX);+  Fl_Double_Window_set_color(w2,FL_BLACK); //w2.position(100,200);+  fl_Hor_Slider slider1 = Fl_Hor_Slider_New(20,370,360,25);+  Fl_Slider_range(slider1,2,30);+  Fl_Slider_set_step(slider1,1);+  Fl_Slider_set_value(slider1,sides[0]);+  Fl_Slider_set_callback(slider1,slider_cb);+  Fl_Double_Window_end(w2);+  Fl_Window_end(w02);+  Fl_Window_show_with_args(w01,argc, argv);+  Fl_Single_Window_show(w1);+  Fl_Window_show(w02);+  Fl_Double_Window_show(w2);+  return Fl_run();+}
+ c-examples/file_chooser.c view
@@ -0,0 +1,247 @@+#include <stdio.h>+#include <Fl_C.h>+#include <Fl_ChoiceC.h>+#include <Fl_File_ChooserC.h>+#include <Fl_File_BrowserC.h>+#include <Fl_File_IconC.h>+#include <Fl_Shared_ImageC.h>+#include <Fl_PNM_ImageC.h>+#include <Fl_Light_ButtonC.h>+#include <Fl_Double_WindowC.h>+#include <Fl_Light_ButtonC.h>+#include <Fl_Check_ButtonC.h>+#include <Fl_ButtonC.h>+#include <Fl_GroupC.h>+#include <Fl_InputC.h>+#include <filenameC.h>+#include <string.h>+#include "FL/filename.H"+#include "FL/fl_utf8.h"+#include <stdlib.h>++fl_Input	filter;+fl_File_Browser	files;+fl_File_Chooser	fc;+fl_Shared_Image	image;++fl_Choice ch_extra;+fl_Group encodings;+fl_Choice ch_enc;+fl_Check_Button version;++void extra_callback(fl_Choice w,void* v)+{+  int val=Fl_Choice_value(w);+  if (0 == val) Fl_File_Chooser_add_extra(fc,NULL);+  else if (1 == val) {+    if(!encodings){+      encodings=Fl_Group_New(0,0,254,30);+      ch_enc=Fl_Choice_New_WithLabel(152,2,100,25,"Choose Encoding:");+      Fl_Choice_add_with_name(ch_enc,"ASCII|Koi8-r|win1251|Utf-8");+      Fl_Group_end(encodings);+    }+    Fl_File_Chooser_add_extra(fc,encodings);+  } else {+    if (!version) {+      version = Fl_Check_Button_New_WithLabel(5,0,200,25,"Save binary 1.0 version");+    }+    Fl_File_Chooser_add_extra(fc,version);+  }+}+void close_callback(fl_Widget w, void* user_data)+{+  exit(0);+}++void create_callback(fl_Widget w, void* user_data)+{+  Fl_File_Chooser_set_type(fc, Fl_File_Chooser_type(fc) ^ FL_FILE_CHOOSER_CREATE);+}+void+dir_callback(fl_Widget w, void* user_data)+{+  puts("dir_callback");+  Fl_File_Chooser_set_type(fc, Fl_File_Chooser_type(fc) ^ FL_FILE_CHOOSER_DIRECTORY);+}+void+fc_callback(fl_File_Chooser fc,+            void            *data)+{+  const char* filename;+  printf("fc_callback(fc = %p, data = %p)\n", fc, data);+  filename = Fl_File_Chooser_value(fc);+  printf("    filename = \"%s\"\n", filename ? filename : "(null)");+}++void multi_callback(fl_Widget w, void* user_data)+{+  Fl_File_Chooser_set_type(fc, Fl_File_Chooser_type(fc) ^ FL_FILE_CHOOSER_MULTI);+}+fl_Image			// O - Page image or NULL+pdf_check(const char *name,	// I - Name of file+          uchar      *header,	// I - Header data+	  int i)		// I - Length of header data (unused)+{+  const char	*home;		// Home directory+  char		preview[FL_PATH_MAX],	// Preview filename+		command[FL_PATH_MAX];	// Command+++  if (memcmp(header, "%PDF", 4) != 0)+    return 0;++  home = getenv("HOME");+  sprintf(preview, "%s/.preview.ppm", home ? home : "");++  sprintf(command,+          "gs -r100 -dFIXED -sDEVICE=ppmraw -dQUIET -dNOPAUSE -dBATCH "+	  "-sstdout=\"%%stderr\" -sOUTPUTFILE=\'%s\' "+	  "-dFirstPage=1 -dLastPage=1 \'%s\' 2>/dev/null", preview, name);++  if (system(command)) return 0;++  return Fl_PNM_Image_New(preview);+}++fl_Image			// O - Page image or NULL+ps_check(const char *name,	// I - Name of file+         uchar      *header,	// I - Header data+	 int i)			// I - Length of header data (unused)+{+  const char	*home;		// Home directory+  char		preview[FL_PATH_MAX],	// Preview filename+		outname[FL_PATH_MAX],	// Preview PS file+		command[FL_PATH_MAX];	// Command+  FILE		*in,		// Input file+		*out;		// Output file+  int		page;		// Current page+  char		line[256];	// Line from file+++  if (memcmp(header, "%!", 2) != 0)+    return 0;++  home = getenv("HOME");+  sprintf(preview, "%s/.preview.ppm", home ? home : "");++  if (memcmp(header, "%!PS", 4) == 0) {+    // PS file has DSC comments; extract the first page...+    sprintf(outname, "%s/.preview.ps", home ? home : "");++    if (strcmp(name, outname) != 0) {+      in   = fl_fopen(name, "rb");+      out  = fl_fopen(outname, "wb");+      page = 0;++      while (fgets(line, sizeof(line), in) != NULL) {+	if (strncmp(line, "%%Page:", 7) == 0) {+          page ++;+	  if (page > 1) break;+	}++	fputs(line, out);+      }++      fclose(in);+      fclose(out);+    }+  } else {+    // PS file doesn't have DSC comments; do the whole file...+    strncpy(outname, name, sizeof(outname) - 1);+    outname[sizeof(outname) - 1] = '\0';+  }++  sprintf(command,+          "gs -r100 -dFIXED -sDEVICE=ppmraw -dQUIET -dNOPAUSE -dBATCH "+	  "-sstdout=\"%%stderr\" -sOUTPUTFILE=\'%s\' \'%s\' 2>/dev/null",+	  preview, outname);++  if (system(command)) return 0;+  return Fl_PNM_Image_New(preview);+}+void+show_callback(fl_Widget w, void* user_data)+{+  int	i;			// Looping var+  int	count;			// Number of files selected+  char	relative[FL_PATH_MAX];	// Relative filename++  if (Fl_Input_value(filter)[0])+    Fl_File_Chooser_set_filter(fc,Fl_Input_value(filter));++  Fl_File_Chooser_show(fc);++  while (Fl_File_Chooser_visible(fc)) {+    Fl_wait();+  }+  count = Fl_File_Chooser_count(fc);+  if (count > 0)+  {+    Fl_File_Browser_clear(files);++    for (i = 1; i <= count; i ++)+    {+      if (!Fl_File_Chooser_value_with_f(fc,i))+        break;++      flc_filename_relative(relative, sizeof(relative), Fl_File_Chooser_value_with_f(fc,i));++      Fl_File_Browser_add_with_d(files,relative,Fl_File_Icon_find(Fl_File_Chooser_value_with_f(fc,i), FL_FILE_ICON_PLAIN));+    }++    Fl_File_Browser_redraw(files);+  }+}+int main (int argc, char** argv){+  image = 0;+  encodings = 0;+  version = 0;+  Fl_scheme(NULL);+  Fl_File_Icon_load_system_icons();+  fc = Fl_File_Chooser_New(".", "*", FL_FILE_CHOOSER_SINGLE, "Fl_File_Chooser Test");+  Fl_File_Chooser_callback(fc,&fc_callback);+  Fl_Shared_Image_add_handler(pdf_check);+  Fl_Shared_Image_add_handler(ps_check);++  fl_Button button;+  fl_File_Icon icon;+  fl_Double_Window window = Fl_Double_Window_New_WithLabel(400, 215, "File Chooser Test");+  filter = Fl_Input_New_WithLabel(50, 10, 315, 25, "Filter:");+  int argn = 1;+#ifdef __APPLE__+  // OS X may add the process number as the first argument - ignore+  if (argc>argn && strncmp(argv[1], "-psn_", 5)==0)+    argn++;+#endif+  if (argc > argn)+    Fl_Input_set_value(filter,argv[argn]);+  else+    Fl_Input_set_value(filter, "PDF Files (*.pdf)\tPostScript Files (*.ps)\tImage Files (*.{bmp,gif,jpg,png})\tC/C++ Source Files (*.{c,C,cc,cpp,cxx})");+  button = Fl_Button_New(365, 10, 25, 25);+  Fl_Button_set_labelcolor(button,FL_YELLOW);+  Fl_Button_set_callback(button,&show_callback);+  icon   = Fl_File_Icon_find(".", FL_FILE_ICON_DIRECTORY);+  Fl_File_Icon_label(icon,button);+  button = Fl_Light_Button_New_WithLabel(50, 45, 80, 25, "MULTI");+  Fl_Button_set_callback(button,&multi_callback);++  button = Fl_Light_Button_New_WithLabel(140, 45, 90, 25, "CREATE");+  Fl_Button_set_callback(button,&create_callback);++  button = Fl_Light_Button_New_WithLabel(240, 45, 115, 25, "DIRECTORY");+  Fl_Button_set_callback(button,&dir_callback);+  ch_extra = Fl_Choice_New_WithLabel(150, 75, 150, 25, "Extra Group:");+  Fl_Choice_add_with_name(ch_extra,"none|encodings group|check button");+  Fl_Choice_set_value_with_index(ch_extra,0);+  Fl_Choice_set_callback(ch_extra,&extra_callback);++  files = Fl_File_Browser_New_WithLabel(50, 105, 340, 75, "Files:");+  Fl_File_Browser_set_align(files,FL_ALIGN_LEFT);++  button = Fl_Button_New_WithLabel(340, 185, 50, 25, "Close");+  Fl_Button_set_callback(button, &close_callback);+  Fl_Double_Window_set_resizable(window,window);+  Fl_Double_Window_end(window);+  Fl_Double_Window_show_with_args(window, 1, argv);+  return Fl_run();+}
+ c-examples/fonts.c view
@@ -0,0 +1,189 @@+#include "Fl_C.h"+#include "Fl_TileC.h"+#include "Fl_Double_WindowC.h"+#include "Fl_Hold_BrowserC.h"+#include "Fl_DrawC.h"+#include "Fl_BoxC.h"+#include "Fl_WidgetC.h"+#include "Fl_GroupC.h"+#include <FL/fl_utf8.h>+#include <stdio.h>+#include <stdlib.h>+#include <string.h>++fl_Double_Window form;+fl_Tile tile;++typedef struct instance_data {+  int font;+  int size;+} instance_data;++void draw(fl_Widget w){+  Fl_Widget_draw_box(w);+  instance_data* d = Fl_Widget_other_data(w);+  flc_set_font((Fl_Font)d->font, d->size);+  flc_set_color(FL_BLACK);+  flc_draw_with_align(Fl_Widget_label(w), Fl_Widget_x(w)+3, Fl_Widget_y(w)+3, Fl_Widget_w(w)-6, Fl_Widget_h(w)-6, Fl_Widget_align(w));+}++fl_Widget textobj;+fl_Hold_Browser fontobj;+fl_Hold_Browser sizeobj;+int **sizes;+int *numsizes;+int pickedsize = 14;++void font_cb(fl_Widget w, void* user_data) {+  int fn = Fl_Hold_Browser_value(fontobj);+  if (!fn) return;+  fn--;+  instance_data* d = Fl_Widget_other_data(textobj);+  d->font = fn;+  Fl_Widget_set_other_data(textobj,d);++  Fl_Hold_Browser_clear(sizeobj);+  int n = numsizes[fn];+  int *s = sizes[fn];+  if (!n) {+    // no sizes+  } else if (s[0] == 0) {+    // many sizes;+    int j = 1;+    int i = 1;+    for (; i<64 || i<s[n-1]; i++) {+      char buf[20];+      if (j < n && i==s[j]) {sprintf(buf,"@b%d",i); j++;}+      else sprintf(buf,"%d",i);+      Fl_Hold_Browser_add(sizeobj,buf);+    }+    Fl_Hold_Browser_set_value(sizeobj,pickedsize);+  } else {+    // some sizes+    int w = 0;+    int i = 0;+    for (; i < n; i++) {+      if (s[i]<=pickedsize) w = i;+      char buf[20];+      sprintf(buf,"@b%d",s[i]);+      Fl_Hold_Browser_add(sizeobj,buf);+    }+    Fl_Hold_Browser_set_value(sizeobj,w+1);+  }+  Fl_Hold_Browser_redraw(textobj);+}++void size_cb(fl_Widget w, void* user_data) {+  int i = Fl_Hold_Browser_value(sizeobj);+  if (!i) return;+  const char *c = Fl_Hold_Browser_text(sizeobj,i);+  while (*c < '0' || *c > '9') c++;+  pickedsize = atoi(c);+  instance_data* d = Fl_Widget_other_data(textobj);+  d->size = pickedsize;+  Fl_Widget_set_other_data(textobj,d);+  Fl_Hold_Browser_redraw(textobj);+}++char label[0x1000];+fl_Widget make_FontDisplay(Fl_Boxtype B, int X, int Y, int W, int H, const char* L){+  fl_Widget_Virtual_Funcs* funcs = Fl_Widget_default_virtual_funcs();+  funcs->draw = &draw;+  instance_data* d = (instance_data*) malloc (sizeof(instance_data));+  d->font = 0;+  d->size = 14;+  fl_Widget fontDisplay = Fl_OverriddenWidget_New_WithLabel(X,Y,W,H,L,funcs);+  Fl_Widget_set_box(fontDisplay, B);+  Fl_Widget_set_other_data(fontDisplay, (void*)d);+  return fontDisplay;+}+void create_the_forms() {+  // create the sample string+  int n = 0;+  strcpy(label, "Hello, world!\n");+  int i = strlen(label);+  ulong c = ' ' + 1;+  for (; c < 127; c++) {+    if (!(c&0x1f)) label[i++]='\n';+    if (c=='@') label[i++]=c;+    label[i++]=c;+  }+  label[i++] = '\n';+  c = 0xA1;+  for (; c < 0x600; c += 9) {+    if (!(++n&(0x1f))) label[i++]='\n';+    i += fl_utf8encode((unsigned int)c, label + i);+  }+  label[i] = 0;++  // create the basic layout+  form = Fl_Double_Window_New(550,370);++  tile = Fl_Tile_New(0, 0, 550, 370);++  fl_Group textgroup = (fl_Group)Fl_Group_New(0, 0, 550, 185);+  Fl_Group_set_box(textgroup,FL_FLAT_BOX);+  textobj = make_FontDisplay(FL_FRAME_BOX,10,10,530,170,label);+  Fl_Widget_set_align(textobj,FL_ALIGN_TOP|FL_ALIGN_LEFT|FL_ALIGN_INSIDE|FL_ALIGN_CLIP);+  Fl_Widget_set_color_with_bg_sel(textobj,9,47);+  Fl_Group_set_resizable(textgroup,textobj);+  Fl_Group_end(textgroup);++  fl_Group fontgroup = (fl_Group)Fl_Group_New(0, 185, 550, 185);+  Fl_Group_set_box(fontgroup,FL_FLAT_BOX);+  fontobj = Fl_Hold_Browser_New(10, 190, 390, 170);+  Fl_Hold_Browser_set_box(fontobj,FL_FRAME_BOX);+  Fl_Hold_Browser_set_color_with_bg_sel(fontobj,53,3);+  Fl_Hold_Browser_set_callback(fontobj,&font_cb);+  sizeobj = Fl_Hold_Browser_New(410, 190, 130, 170);+  Fl_Hold_Browser_set_box(sizeobj,FL_FRAME_BOX);+  Fl_Hold_Browser_set_color_with_bg_sel(sizeobj,53,3);+  Fl_Hold_Browser_set_callback(sizeobj,size_cb);+  Fl_Group_set_resizable(fontgroup,fontobj);+  Fl_Group_end(fontgroup);++  Fl_Tile_end(tile);++  Fl_Double_Window_set_resizable(form,tile);+  Fl_Double_Window_end(form);+}++#include <Fl_AskC.h>+int main (int argc, char** argv){+  Fl_scheme(NULL);+  Fl_args(argc,argv);+  Fl_get_system_colors();+  create_the_forms();+  int i = 0;+  int k = Fl_set_fonts("-*");+  sizes = malloc(sizeof(int*) * k);+  numsizes = malloc(sizeof(int) * k);+  i = 0;+  for (; i < k; i++) {+    int t;+    const char *name = Fl_get_font_name_with_attributes((Fl_Font)i,&t);+    char buffer[128];+    if (t) {+      char *p = buffer;+      if (t & FL_BOLD) {*p++ = '@'; *p++ = 'b';}+      if (t & FL_ITALIC) {*p++ = '@'; *p++ = 'i';}+	  *p++ = '@'; *p++ = '.'; // Suppress subsequent formatting - some MS fonts have '@' in their name+      strcpy(p,name);+      name = buffer;+    }+    Fl_Hold_Browser_add(fontobj,name);+    int s;+    int* _s = &s;+    int n = Fl_get_font_sizes((Fl_Font)i, _s);+    numsizes[i] = n;+    if (n) {+      sizes[i] = malloc(sizeof(int) * n);+      int j = 0;+      for (; j<n; j++){sizes[i][j] = _s[j];}+    }+  }+  Fl_Hold_Browser_set_value(fontobj,1);+  font_cb(fontobj,0);+  Fl_Double_Window_show_with_args(form,argc,argv);+  return Fl_run();+}
+ c-examples/howto-add_fd-and-popen.c view
@@ -0,0 +1,46 @@+#include <stdio.h>+#include <Fl_C.h>+#include <Fl_WindowC.h>+#include <Fl_Multi_BrowserC.h>++#ifdef WIN32+#  define PING_CMD "ping -n 10 localhost"	// 'slow command' under windows+#  ifdef _MSC_VER+#    define popen _popen+#    define pclose _pclose+#  else /*_MSC_VER*/+#    include <unistd.h>				// non-MS win32 compilers (untested)+#  endif /*_MSC_VER*/+#else+#  include <unistd.h>+#  define PING_CMD "ping -i 2 -c 10 localhost"	// 'slow command' under unix+#endif++FILE *G_fp = NULL;++// Handler for add_fd() -- called whenever the ping command outputs a new line of data+void HandleFD(int fd, void *data) {+  fl_Multi_Browser brow = (fl_Multi_Browser)data;+  char s[1024];+  if ( fgets(s, 1023, G_fp) == NULL ) {		// read the line of data+    Fl_remove_fd(fileno(G_fp));		// command ended? disconnect callback+    pclose(G_fp);				// close the descriptor+    Fl_Multi_Browser_add(brow, "");+    Fl_Multi_Browser_add(brow, "<<DONE>>");+    return;+  }+  Fl_Multi_Browser_add(brow, s);+}++int main(int argc, char** argv){+  fl_Window win = (fl_Window)Fl_Window_New(600,600);+  fl_Multi_Browser brow = (fl_Multi_Browser)Fl_Multi_Browser_New(10,10,580,580);+  if ( ( G_fp = popen(PING_CMD, "r") ) == NULL ) {	// start the external unix command+    perror("popen failed");+    return(1);+  }+  Fl_add_fd_with_userdata(fileno(G_fp), HandleFD, (void*)brow);	// setup a callback for the popen()ed descriptor+  Fl_Window_set_resizable(win, brow);+  Fl_Window_show_with_args(win, argc, argv);+  return(Fl_run());+}
+ c-examples/howto-browser-with-icons.c view
@@ -0,0 +1,148 @@+#include <stdio.h>+#include <stdlib.h>+#include <string.h>+#include <Fl_C.h>+#include <Fl_Double_WindowC.h>+#include <Fl_BrowserC.h>+#include <Fl_ChoiceC.h>+#include <Fl_ImageC.h>+#include <Fl_PixmapC.h>+const char* big[] = {                       // XPM+  "50 34 4 1",+  "  c #000000",+  "o c #ff9900",+  "@ c #ffffff",+  "# c None",+  "##################################################",+  "###      ##############################       ####",+  "### ooooo  ###########################  ooooo ####",+  "### oo  oo  #########################  oo  oo ####",+  "### oo   oo  #######################  oo   oo ####",+  "### oo    oo  #####################  oo    oo ####",+  "### oo     oo  ###################  oo     oo ####",+  "### oo      oo                     oo      oo ####",+  "### oo       oo  ooooooooooooooo  oo       oo ####",+  "### oo        ooooooooooooooooooooo        oo ####",+  "### oo     ooooooooooooooooooooooooooo    ooo ####",+  "#### oo   ooooooo ooooooooooooo ooooooo   oo #####",+  "####  oo oooooooo ooooooooooooo oooooooo oo  #####",+  "##### oo oooooooo ooooooooooooo oooooooo oo ######",+  "#####  o ooooooooooooooooooooooooooooooo o  ######",+  "###### ooooooooooooooooooooooooooooooooooo #######",+  "##### ooooooooo     ooooooooo     ooooooooo ######",+  "##### oooooooo  @@@  ooooooo  @@@  oooooooo ######",+  "##### oooooooo @@@@@ ooooooo @@@@@ oooooooo ######",+  "##### oooooooo @@@@@ ooooooo @@@@@ oooooooo ######",+  "##### oooooooo  @@@  ooooooo  @@@  oooooooo ######",+  "##### ooooooooo     ooooooooo     ooooooooo ######",+  "###### oooooooooooooo       oooooooooooooo #######",+  "###### oooooooo@@@@@@@     @@@@@@@oooooooo #######",+  "###### ooooooo@@@@@@@@@   @@@@@@@@@ooooooo #######",+  "####### ooooo@@@@@@@@@@@ @@@@@@@@@@@ooooo ########",+  "######### oo@@@@@@@@@@@@ @@@@@@@@@@@@oo ##########",+  "########## o@@@@@@ @@@@@ @@@@@ @@@@@@o ###########",+  "########### @@@@@@@     @     @@@@@@@ ############",+  "############  @@@@@@@@@@@@@@@@@@@@@  #############",+  "##############  @@@@@@@@@@@@@@@@@  ###############",+  "################    @@@@@@@@@    #################",+  "####################         #####################",+  "##################################################",+};+++const char* med[] = {                       // XPM+  "14 14 2 1",+  "# c #000000",+  "  c #ffffff",+  "##############",+  "##############",+  "##          ##",+  "##  ##  ##  ##",+  "##  ##  ##  ##",+  "##   ####   ##",+  "##    ##    ##",+  "##    ##    ##",+  "##   ####   ##",+  "##  ##  ##  ##",+  "##  ##  ##  ##",+  "##          ##",+  "##############",+  "##############",+};+const char* sml[] = {                       // XPM+  "9 11 5 1",+  ".  c None",+  "@  c #000000",+  "+  c #808080",+  "r  c #802020",+  "#  c #ff8080",+  ".........",+  ".........",+  "@+.......",+  "@@@+.....",+  "@@r@@+...",+  "@@##r@@+.",+  "@@####r@@",+  "@@##r@@+.",+  "@@r@@+...",+  "@@@+.....",+  "@+.......",+};++typedef struct instance_data {+  fl_Image* big_icon;+  fl_Image* med_icon;+  fl_Image* sml_icon;+} instance_data;++void initialize_browser(fl_Browser browser){+  instance_data* d = (instance_data*)malloc(sizeof(instance_data));+  *(d->big_icon) = (fl_Image)Fl_Pixmap_New((char**)big);+  *(d->med_icon) = (fl_Image)Fl_Pixmap_New((char**)med);+  *(d->sml_icon) = (fl_Image)Fl_Pixmap_New((char**)sml);+  Fl_Browser_set_other_data(browser,(void*)d);+  Fl_Browser_set_textfont(browser,FL_COURIER);+  Fl_Browser_set_textsize(browser,14);+  Fl_Browser_set_type(browser,FL_MULTI_BROWSER);+  Fl_Browser_add(browser,"One");+  Fl_Browser_add(browser,"Two");+  Fl_Browser_add(browser,"Three");+  Fl_Browser_add(browser,"Four");+  Fl_Browser_add(browser,"Five");+  Fl_Browser_add(browser,"Six");+  Fl_Browser_add(browser,"Seven");+}++void Choice_CB(fl_Widget w, void* user_data){+  fl_Browser mb = (fl_Browser)user_data;+  fl_Choice ch = (fl_Choice)w;+  fl_Image i = 0;+  instance_data* d = (instance_data*)Fl_Browser_other_data(mb);+  char* picked = Fl_Choice_text(ch);+  if ( strcmp(picked, "None"  ) == 0 ) {  i = 0; }+  else if ( strcmp(picked, "Small" ) == 0 ) { i = d->sml_icon; }+  else if ( strcmp(picked, "Medium") == 0 ) { i = d->med_icon; }+  else if ( strcmp(picked, "Large" ) == 0 ) { i = d->big_icon; }++  Fl_Browser_set_icon(mb,3,i);+  Fl_Browser_set_icon(mb,4,i);+  Fl_Browser_set_icon(mb,5,i);+}++int main (int argc, char** argv){+  fl_Double_Window w = (fl_Double_Window)Fl_Double_Window_New(400,300);+  fl_Browser b = (fl_Browser)Fl_Browser_New(10,40,Fl_Double_Window_w(w)-20,Fl_Double_Window_h(w)-50);+  initialize_browser(b);+  fl_Choice choice = (fl_Choice)Fl_Choice_New_WithLabel(60,10,140,25,"Icon:");+  Fl_Choice_add_with_name(choice,(char*)"None");+  Fl_Choice_add_with_name(choice,(char*)"Small");+  Fl_Choice_add_with_name(choice,(char*)"Medium");+  Fl_Choice_add_with_name(choice,(char*)"Large");+  Fl_Choice_set_callback_with_user_data(choice, Choice_CB, (void*)b);+  Fl_Choice_take_focus(choice);+  Fl_Choice_set_value_with_index(choice,1);+  Fl_Choice_do_callback(choice);+  Fl_Double_Window_end(w);+  Fl_Double_Window_show(w);+  return Fl_run();+}
+ c-examples/howto-drag-and-drop.c view
@@ -0,0 +1,62 @@+#include <stdio.h>+#include <string.h>+#include <Fl_C.h>+#include <Fl_WindowC.h>+#include <Fl_BoxC.h>++int handle_sender(fl_Box box, int event){+  int ret = Fl_Box_handle_super(box,event);+  switch ( event ) {+  case FL_PUSH: {+    const char *msg = "It works!";+    Fl_copy_with_destination(msg,strlen(msg),0);+    Fl_dnd();+    ret = 1;+    break;+  }+  }+  return(ret);+}+void initialize_sender(fl_Box sender){+  Fl_Box_set_box(sender,FL_FLAT_BOX);+  Fl_Box_set_color(sender, 9);+  Fl_Box_set_label(sender,"Drag\nfrom\nhere..");+}+int handle_receiver(fl_Box box, int event){+  int ret = Fl_Box_handle_super(box,event);+  switch ( event ) {+  case FL_DND_ENTER:          // return(1) for these events to 'accept' dnd+  case FL_DND_DRAG:+  case FL_DND_RELEASE:+    ret = 1;+    break;+  case FL_PASTE:              // handle actual drop (paste) operation+    Fl_Box_set_label(box,Fl_event_text());+    fprintf(stderr, "Pasted '%s'\n", Fl_event_text());+    ret = 1;+    break;+  }+  return(ret);+}+void initialize_receiver(fl_Box receiver){+  Fl_Box_set_box(receiver,FL_FLAT_BOX);+  Fl_Box_set_color(receiver, 10);+  Fl_Box_set_label(receiver,"..to\nhere");+}+int main(int argc, char** argv){+  fl_Window win_a = (fl_Window)Fl_Window_NewXY_WithLabel(0,0,200,100,"Sender");+  fl_Box_Virtual_Funcs* funcs_a = Fl_Box_default_virtual_funcs();+  funcs_a->handle = &handle_sender;+  fl_Box a = (fl_Box) Fl_OverriddenBox_New(0,0,100,100,funcs_a);+  initialize_sender(a);+  Fl_Window_end(win_a);+  Fl_Window_show(win_a);+  fl_Window win_b = (fl_Window)Fl_Window_NewXY_WithLabel(400,0,200,100,"Receiver");+  fl_Box_Virtual_Funcs* funcs_b = Fl_Box_default_virtual_funcs();+  funcs_b->handle = &handle_receiver;+  fl_Box b = (fl_Box) Fl_OverriddenBox_New(100,0,100,100,funcs_b);+  initialize_receiver(b);+  Fl_Window_end(win_b);+  Fl_Window_show(win_b);+  return Fl_run();+}
+ c-examples/howto-parse-args.c view
@@ -0,0 +1,53 @@+#include <stdio.h>+#include <string.h>+#include <Fl_C.h>+#include <Fl_BoxC.h>+#include <Fl_WindowC.h>++int helpFlag = 0;+char *optionString = 0;+int arg(int argc, char **argv, int* i)+{+  printf("i: %d\n", *i);+  if (strcmp("-h", argv[*i]) == 0 || strcmp("--help", argv[*i]) == 0) {+    helpFlag = 1;+    *i += 1;+    return 1;+  }+  if (strcmp("-o", argv[*i]) == 0 || strcmp("--option", argv[*i]) == 0) {+    if (*i < argc-1 && argv[*i+1] != 0) {+      optionString = argv[*i+1];+      *i += 2;+      return 2;+    }+  }+  return 0;+}+int main(int argc, char** argv)+{+  int i = 1;+   if (Fl_args_with_handler(argc, argv, i, arg) < argc)+    // note the concatenated strings to give a single format string!+    printf("error: unknown option: %s\n"+           "usage: %s [options]\n"+           " -h | --help     : print extended help message\n"+           " -o | --option # : example option with parameter\n"+           " plus standard fltk options\n",+           argv[i], argv[0]);+  if (helpFlag)+    printf("usage: %s [options]\n"+           " -h | --help     : print extended help message\n"+           " -o | --option # : example option with parameter\n"+           " plus standard fltk options:\n"+           "\n",+           argv[0]);++  fl_Window mainWin = (fl_Window)Fl_Window_New(300,200);+  fl_Box textBox = (fl_Box)Fl_Box_New(0, 0, 300, 200);+  if (optionString != 0)+    Fl_Box_set_label(textBox, optionString);+  else+    Fl_Box_set_label(textBox, "re-run with [-o|--option] text");+  Fl_Window_show_with_args(mainWin,argc, argv);+  return Fl_run();+}
+ c-examples/howto-text-over-image-button.c view
@@ -0,0 +1,48 @@+#include <Fl_C.h>+#include <Fl_WindowC.h>+#include <Fl_ButtonC.h>+#include <Fl_PixmapC.h>++/* XPM */+char * gradient_xpm[] = {+"135 20 26 1",+"a 	c #e0e0e0", "b 	c #dcdcdc", "c 	c #d8d8d8", "d 	c #d4d4d4", "e 	c #d2d2d2",+"f 	c #d0d0d0", "g 	c #cccccc", "h 	c #c8c8c8", "i 	c #c4c4c4", "j 	c #c2c2c2",+"k 	c #c0c0c0", "l 	c #bcbcbc", "m 	c #b8b8b8", "n 	c #b4b4b4", "o 	c #b2b2b2",+"p 	c #b0b0b0", "q 	c #acacac", "r 	c #a8a8a8", "s 	c #a4a4a4", "t 	c #a2a2a2",+"u 	c #a0a0a0", "v 	c #9c9c9c", "w 	c #989898", "x 	c #949494", "y 	c #929292",+"z 	c #909090",+"aaaaaaaaabbbbbbbbcccccccddddddeeeeeefffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrssss",+"aaaaaabbbbbbbbcccccccddddddeeeeeefffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssst",+"aaabbbbbbbbcccccccddddddeeeeeefffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssstt",+"bbbbbbbbcccccccddddddeeeeeefffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrssssssssstttt",+"bbbbbcccccccddddddeeeeeefffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttu",+"bbcccccccddddddeeeeeefffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuu",+"ccccccddddddeeeeeefffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuu",+"cccddddddeeeeeefffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvv",+"ddddddeeeeeefffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvvvvv",+"dddeeeeeefffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvvvvvvvw",+"eeeeeefffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvvvvvvvwwww",+"eeefffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvvvvvvvwwwwwww",+"fffffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvvvvvvvwwwwwwwwxx",+"ffffgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvvvvvvvwwwwwwwwxxxxx",+"fgggggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvvvvvvvwwwwwwwwxxxxxxyy",+"gggggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvvvvvvvwwwwwwwwxxxxxxyyyyy",+"ggghhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvvvvvvvwwwwwwwwxxxxxxyyyyyyyy",+"hhhhhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvvvvvvvwwwwwwwwxxxxxxyyyyyyyyzzz",+"hhhhiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvvvvvvvwwwwwwwwxxxxxxyyyyyyyyzzzzzz",+"hiiiiiiijjjjjjjkkkkkkkklllllllmmmmmmmnnnnnnnnnoooooooppppppppqqqqqqrrrrrrrsssssssssttttttuuuuuuuuvvvvvvvwwwwwwwwxxxxxxyyyyyyyyzzzzzzzzz"};++int main(int argc,char** argv){+  fl_Pixmap gradient = (fl_Pixmap)Fl_Pixmap_New(gradient_xpm);+  fl_Window win = (fl_Window)Fl_Window_New_WithLabel(160,75,"test");+  fl_Button but1 = (fl_Button)Fl_Button_New_WithLabel(10,10,140,25,"Button 1");+  Fl_Button_set_image(but1,gradient);+  Fl_Button_set_align(but1,FL_ALIGN_IMAGE_BACKDROP|Fl_Button_align(but1));+  fl_Button but2 = (fl_Button)Fl_Button_New_WithLabel(10,40,140,25,"Button 2");+  Fl_Button_set_image(but2,gradient);+  Fl_Button_set_align(but2,FL_ALIGN_IMAGE_BACKDROP|Fl_Button_align(but2));+  Fl_Window_end(win);+  Fl_Window_show_with_args(win,argc,argv);+  return Fl_run();+}
+ c-examples/list_visuals.c view
@@ -0,0 +1,17 @@+#if defined(WIN32) || defined(__APPLE__)+#include <Fl_C.h>+#include <Fl_AskC.h>+int main(int argc, char** argv) {+  flc_alert("Currently, this program works only under X.");+  return 1;+}+#else+#include "list_visuals.h"+int main(int argc, char** argv) {+  if (argc == 1);+  else if (argc == 2 && argv[1][0]!='-') dname = argv[1];+  else {fprintf(stderr,"usage: %s <display>\n",argv[0]); exit(1);}+  list_visuals();+  return 0;+}+#endif
+ c-examples/list_visuals.h view
@@ -0,0 +1,147 @@+#include <config.h>+#include <X11/Xlib.h>+#include <X11/Xutil.h>+#include <X11/Xatom.h>+#include <stdio.h>+#include <stdlib.h>+#include <Fl_C.h>++Display *fl_display;+int fl_screen;+const char *dname;+void fl_open_display() {+  fl_display = XOpenDisplay(dname);+  if (!fl_display) {+    fprintf(stderr,"Can't open display: %s\n",XDisplayName(dname));+    exit(1);+  }+  fl_screen = DefaultScreen(fl_display);+}++const char *ClassNames[] = {+  "StaticGray ",+  "GrayScale  ",+  "StaticColor",+  "PseudoColor",+  "TrueColor  ",+  "DirectColor"+};++// SERVER_OVERLAY_VISUALS property element:+typedef struct _OverlayInfo {+  long overlay_visual;+  long transparent_type;+  long value;+  long layer;+} OverlayInfo;++#if HAVE_XDBE+#include <X11/extensions/Xdbe.h>+#endif+static void print_mask(XVisualInfo* p) {+  int n = 0;+  int what = 0;+  int print_anything = 0;+  char buf[20];+  char *q = buf;+  *q = 0;+  int b; unsigned int m; for (b=32,m=0x80000000; ; b--,m>>=1) {+    int new_what = 0;+    if (p->red_mask&m) new_what = 'r';+    else if (p->green_mask&m) new_what = 'g';+    else if (p->blue_mask&m) new_what = 'b';+    else new_what = '?';+    if (new_what != what) {+      if (what && (what != '?' || print_anything)) {+	q += sprintf(q,"%d%c", n, what);+	print_anything = 1;+      }+      what = new_what;+      n = 1;+    } else {+      n++;+    }+    if (!b) break;+  }+  printf("%7s", buf);+}++void list_visuals() {+  fl_open_display();+  XVisualInfo vTemplate;+  int num;+  XVisualInfo *visualList = XGetVisualInfo(fl_display,0,&vTemplate,&num);++  XPixmapFormatValues *pfvlist;+  static int numpfv;+  pfvlist = XListPixmapFormats(fl_display, &numpfv);++  OverlayInfo *overlayInfo = 0;+  int numoverlayinfo = 0;+  Atom overlayVisualsAtom = XInternAtom(fl_display,"SERVER_OVERLAY_VISUALS",1);+  if (overlayVisualsAtom) {+    unsigned long sizeData, bytesLeft;+    Atom actualType;+    int actualFormat;+    if (!XGetWindowProperty(fl_display, RootWindow(fl_display, fl_screen),+			   overlayVisualsAtom, 0L, 10000L, False,+			   overlayVisualsAtom, &actualType, &actualFormat,+			   &sizeData, &bytesLeft,+			   (unsigned char **) &overlayInfo))+      numoverlayinfo = (int)(sizeData/4);+  }++#if HAVE_XDBE+  int event_base, error_base;+  int numdouble = 0;+  XdbeVisualInfo *dbe = 0;+  if (XdbeQueryExtension(fl_display, &event_base, &error_base)) {+    Drawable root = RootWindow(fl_display,fl_screen);+    int numscreens = 1;+    XdbeScreenVisualInfo *a = XdbeGetVisualInfo(fl_display,&root,&numscreens);+    if (!a) printf("error getting double buffer visuals\n");+    else {+      dbe = a->visinfo;+      numdouble = a->count;+    }+  }+#endif++  int i = 0;+  for (; i<num; i++) {+    XVisualInfo *p = visualList+i;++    XPixmapFormatValues *pfv;+    for (pfv = pfvlist; ; pfv++) {+      if (pfv >= pfvlist+numpfv) {pfv = 0; break;} // should not happen!+      if (pfv->depth == p->depth) break;+    }++    int j = pfv ? pfv->bits_per_pixel : 0;+    printf(" %2ld: %s %2d/%d", p->visualid, ClassNames[p->class],+	   p->depth, j);+    if (j < 10) putchar(' ');++    print_mask(p);++    for (j=0; j<numoverlayinfo; j++) {+      OverlayInfo *o = &overlayInfo[j];+      if (o->overlay_visual == (long)(p->visualid)) {+	printf(" overlay(");+	if (o->transparent_type==1) printf("transparent pixel %ld, ",o->value);+	else if (o->transparent_type==2) printf("transparent mask %ld, ",o->value);+	else printf("opaque, ");+	printf("layer %ld)", o->layer);+      }+    }+#if HAVE_XDBE+    for (j = 0; j < numdouble; j++) if (dbe[j].visual == p->visualid)+      printf(" doublebuf(perflevel %d)",dbe[j].perflevel);+#endif++    if (p->visualid==XVisualIDFromVisual(DefaultVisual(fl_display,fl_screen)))+      printf(" (default visual)");++    putchar('\n');+  }+}
+ c-examples/make_button_with_callback.c view
@@ -0,0 +1,36 @@+#include <stdio.h>+#include "Fl_C.h"+#include "Fl_Types.h"+#include "Fl_WindowC.h"+#include "Fl_Toggle_ButtonC.h"+#include "Fl_Light_ButtonC.h"+#include "Fl_Check_ButtonC.h"+#include "Fl_Radio_ButtonC.h"+#include "Fl_ButtonC.h"+void callback_button1(fl_Button b1, void* user_data) {+  printf("%s %s\n", (char*) Fl_Button_label(b1), "has been clicked");+}+void callback_button2(fl_Button b2, void* user_data) {+  printf("%s %s\n", (char*) Fl_Button_label(b2), "has been clicked");+}+void callback_button3_with_user_data(fl_Button b3, void* user_data) {+  printf("%s:%s %s\n", (char*) Fl_Button_label(b3), "Got the user data :", (char*)user_data);+}+int main(int argc, char** argv)+{+  char* title = "FLTK Button Window";+  fl_Window win = (fl_Window)Fl_Window_New_WithLabel(500,500,title);+  Fl_Window_begin(win);+  fl_Button b1 = (fl_Button)Fl_Button_New_WithLabel(20,20,100,100,"Button 1");+  Fl_Button_set_callback(b1,(fl_Callback*)callback_button1);+  fl_Button b2 = (fl_Button)Fl_Button_New_WithLabel(130,20,100,100,"Button 2");+  Fl_Button_set_callback(b2, (fl_Callback*)callback_button2);+  fl_Button b3 = (fl_Button)Fl_Button_New_WithLabel(240,20,100,100,"Button 3");+  char* user_data = "User data";+  Fl_Button_set_callback(b3, (fl_Callback*)callback_button3_with_user_data);+  Fl_Button_set_user_data(b3,(void*)user_data);+  printf("Retrieve user_data directly:%s\n", (char*)Fl_Button_user_data(b3));+  Fl_Window_end(win);+  Fl_Window_show(win);+  return Fl_run();+}
+ c-examples/make_input.c view
@@ -0,0 +1,28 @@+#include <stdio.h>+#include "Fl_Types.h"+#include "Fl_C.h"+#include "Fl_WindowC.h"+#include "Fl_File_InputC.h"+#include "Fl_Float_InputC.h"+#include "Fl_Int_InputC.h"+#include "Fl_Secret_InputC.h"+#include "Fl_Multiline_InputC.h"+#include "Fl_Value_InputC.h"+#include "Fl_InputC.h"++int main(int argc, char** argv)+{+  char* title = "FLTK Input Window";+  fl_Window win = (fl_Window)Fl_Window_New_WithLabel(500,500,title);+  Fl_Window_begin(win);+  Fl_File_Input_New_WithLabel(150,50,200,40,"File Input Box");+  Fl_Float_Input_New_WithLabel(150,100,200,40,"Float Input Box");+  Fl_Int_Input_New_WithLabel(150,150,200,40,"Int Input Box");+  Fl_Secret_Input_New_WithLabel(150,200,200,40,"Secret Input Box");+  Fl_Multiline_Input_New_WithLabel(150,250,200,80,"Multiline Input Box");+  fl_Value_Input value_input = (fl_Value_Input)Fl_Value_Input_New_WithLabel(150,320,200,40,"Value Input Box");+  Fl_Value_Input_set_labeltype(value_input, FL_EMBOSSED_LABEL);+  Fl_Window_end(win);+  Fl_Window_show(win);+  return Fl_run();+}
+ c-examples/make_tree.c view
@@ -0,0 +1,27 @@+#include <stdio.h>+#include "Fl_C.h"+#include "Fl_Types.h"+#include "Fl_WindowC.h"+#include "Fl_TreeC.h"+#include "Fl_Tree_ItemC.h"+#include "Fl_Tree_PrefsC.h"++int main(int argc, char** argv)+{+  char* title = "FLTK Tree Window";+  fl_Window win = (fl_Window)Fl_Window_New_WithLabel(500,500,title);+  Fl_Window_begin(win);+  fl_Tree tree = (fl_Tree)Fl_Tree_New_WithLabel(50,50,200,200,"Tree");+  Fl_Tree_root_label(tree, "Root Label With Items");+  fl_Tree_Prefs prefs = (fl_Tree_Prefs)Fl_Tree_Prefs_New();+  int i = 0;+  fl_Tree_Item item;+  for (i = 0; i < 10; i++) {+    item = (fl_Tree_Item)Fl_Tree_Item_New_WithPrefs(prefs);+    Fl_Tree_Item_set_label(item, "test");+    Fl_Tree_add_with_item_name(tree, item, "test");+  }+  Fl_Window_end(win);+  Fl_Window_show(win);+  return Fl_run();+}
+ c-examples/make_window.c view
@@ -0,0 +1,13 @@+#include <stdio.h>+#include "Fl_Types.h"+#include "Fl_C.h"+#include "Fl_WindowC.h"++int main(int argc, char** argv)+{+  char* title = "FLTK Window";+  fl_Window win = (fl_Window)Fl_Window_New_WithLabel(500,500,title);+  Fl_check();+  Fl_Window_show(win);+  return Fl_run();+}
+ c-examples/make_window_fullscreen.c view
@@ -0,0 +1,12 @@+#include <stdio.h>+#include "Fl_C.h"+#include "Fl_Types.h"+#include "Fl_WindowC.h"++int main(int argc, char** argv)+{+  fl_Window win = (fl_Window)Fl_Window_NewXY_WithLabel(640,480,100,100,"FLTK Window");+  Fl_Window_show_with_args(win, argc, argv);+  Fl_Window_fullscreen(win);+  return Fl_run();+}
+ c-examples/make_window_hide.c view
@@ -0,0 +1,16 @@+#include <stdio.h>+#include "Fl_C.h"+#include "Fl_Types.h"+#include "Fl_WindowC.h"+int main(int argc, char** argv)+{+  fl_Window win = (fl_Window)Fl_Window_NewXY_WithLabel(640,480,100,100,"FLTK Window");+  Fl_Window_show_with_args(win, argc, argv);+  Fl_Window_hide(win);+  puts("Should just return. We're showing a window and immediately hiding it.");+  Fl_run();+  Fl_Window_Destroy(win);+  win = NULL;+  if (win == NULL) {  puts("Now we've freed the window object"); }+  return 0;+}
+ c-examples/make_window_resize.c view
@@ -0,0 +1,12 @@+#include <stdio.h>+#include "Fl_C.h"+#include "Fl_Types.h"+#include "Fl_WindowC.h"+int main(int argc, char** argv)+{+  fl_Window win = (fl_Window)Fl_Window_NewXY_WithLabel(640,480,200,300,"FLTK Window");+  Fl_Window_show_with_args(win,argc,argv);+  Fl_run();+  Fl_Window_resize(win, 100,100, 500,500);+  return 0;+}
+ c-examples/make_window_with_callback.c view
@@ -0,0 +1,17 @@+#include <stdio.h>+#include "Fl_C.h"+#include "Fl_Types.h"+#include "Fl_WindowC.h"+void my_callback(fl_Window w, void* user_data) {+  puts("The title of this window is:");+  puts((const char*)Fl_Window_label(w));+  Fl_Window_hide(w);+  Fl_Window_Destroy(w);+}+int main(int argc, char** argv)+{+  fl_Window win = (fl_Window)Fl_Window_NewXY_WithLabel(640,480,500,500,"FLTK Window");+  Fl_Window_set_callback(win,(fl_Callback*)my_callback);+  Fl_Window_show(win);+  return Fl_run();+}
+ c-examples/make_window_with_width_height.c view
@@ -0,0 +1,12 @@+#include <stdio.h>+#include "Fl_C.h"+#include "Fl_Types.h"+#include "Fl_WindowC.h"++int main(int argc, char** argv)+{+  fl_Window win = (fl_Window)Fl_Window_NewXY_WithLabel(640,480,500,500,"FLTK Window");+  Fl_Window_show(win);+  return Fl_run();+}+
+ c-examples/menubar-add.c view
@@ -0,0 +1,51 @@+#include <stdio.h>+#include <string.h>+#include <stdlib.h>+#include "Fl_C.h"+#include "Fl_WindowC.h"+#include "Fl_Sys_Menu_BarC.h"+#include "Fl_Menu_ItemC.h"+#include "FL/filename.H"+#include "filenameC.h"++void MyMenuCallback(fl_Widget w, void* user_data){+  fl_Sys_Menu_Bar bar = (fl_Sys_Menu_Bar)w;+  fl_Menu_Item item = Fl_Sys_Menu_Bar_mvalue(bar);+  char ipath[256];+  Fl_Sys_Menu_Bar_item_pathname(bar, ipath, sizeof(ipath));+  fprintf(stderr, "callback: You picked '%s'", Fl_Menu_Item_label(item));	// Print item picked+  fprintf(stderr, ", item_pathname() is '%s'", ipath);		// ..and full pathname+  if ( Fl_Menu_Item_flags(item) & (FL_MENU_RADIO|FL_MENU_TOGGLE) ) {		// Toggle or radio item?+    fprintf(stderr, ", value is %s", Fl_Menu_Item_value(item)?"on":"off");	// Print item's value+  }+  fprintf(stderr, "\n");+  if ( strcmp(Fl_Menu_Item_label(item), "Google") == 0 ) { flc_open_uri("http://google.com/");}+  if ( strcmp(Fl_Menu_Item_label(item), "&Quit") == 0 ) { exit(0); }+}+int main(int argc, char** argv){+  Fl_set_scheme("gtk+");+  fl_Window window = (fl_Window)Fl_Window_New_WithLabel(250,400,"menubar-simple");+  Fl_Window_begin(window);++  fl_Sys_Menu_Bar menu = (fl_Sys_Menu_Bar)Fl_Sys_Menu_Bar_New(0,0,400,45);+  Fl_Sys_Menu_Bar_add_with_shortcutname(menu,"&File/&Open",  "^o", MyMenuCallback);+  Fl_Sys_Menu_Bar_add_with_shortcutname(menu,"&File/&Open",  "^o", MyMenuCallback);+  Fl_Sys_Menu_Bar_add_with_shortcutname_user_data_flags(menu,"&File/&Save",  "^s", MyMenuCallback, 0, FL_MENU_DIVIDER);+  Fl_Sys_Menu_Bar_add_with_shortcutname(menu,"&File/&Quit",  "^q", MyMenuCallback);+  Fl_Sys_Menu_Bar_add_with_shortcutname(menu,"&Edit/&Copy",  "^c", MyMenuCallback);+  Fl_Sys_Menu_Bar_add_with_shortcutname_user_data_flags(menu,"&Edit/&Paste", "^v", MyMenuCallback, 0, FL_MENU_DIVIDER);+  Fl_Sys_Menu_Bar_add_with_shortcutname_user_data_flags(menu,"&Edit/Radio 1",   0, MyMenuCallback, 0, FL_MENU_RADIO);+  Fl_Sys_Menu_Bar_add_with_shortcutname_user_data_flags(menu,"&Edit/Radio 2",   0, MyMenuCallback, 0, FL_MENU_RADIO|FL_MENU_DIVIDER);+  Fl_Sys_Menu_Bar_add_with_shortcutname_user_data_flags(menu,"&Edit/Toggle 1",  0, MyMenuCallback, 0, FL_MENU_TOGGLE);			// Default: off+  Fl_Sys_Menu_Bar_add_with_shortcutname_user_data_flags(menu,"&Edit/Toggle 2",  0, MyMenuCallback, 0, FL_MENU_TOGGLE);			// Default: off+  Fl_Sys_Menu_Bar_add_with_shortcutname_user_data_flags(menu,"&Edit/Toggle 3",  0, MyMenuCallback, 0, FL_MENU_TOGGLE|FL_MENU_VALUE);	// Default: on+  Fl_Sys_Menu_Bar_add_with_shortcutname(menu,"&Help/Google",    0, MyMenuCallback);+  {+    fl_Menu_Item item = (fl_Menu_Item)Fl_Sys_Menu_Bar_find_item_with_name(menu,"&Edit/Toggle 2");+    if ( item ) Fl_Menu_Item_set(item);+    else fprintf(stderr, "'Toggle 2' item not found?!\n");+  }+  Fl_Window_end(window);+  Fl_Window_show(window);+  return Fl_run();+}
+ c-examples/nativefilechooser-simple-app.c view
@@ -0,0 +1,132 @@+#include <stdio.h>	// printf+#include <stdlib.h>	// exit,malloc+#include <string.h>	// strerror+#include <errno.h>	// errno+#include <Fl_C.h>+#include <Fl_WindowC.h>+#include <Fl_Sys_Menu_BarC.h>+#include <Fl_Native_File_ChooserC.h>+#include <Fl_BoxC.h>+#include <Fl_AskC.h>++typedef struct instance_data {+  fl_Native_File_Chooser* fc;+} instance_data;++int exist(const char *filename) {+  FILE *fp = fopen(filename, "r");+  if (fp) { fclose(fp); return(1); }+  else    { return(0); }+}+// 'Open' the file+void open_file(const char *filename) {+  printf("Open '%s'\n", filename);+}+void save(const char *filename) {+  printf("Saving '%s'\n", filename);+  if ( !exist(filename) ) {+    FILE *fp = fopen(filename, "w");				// create file if it doesn't exist+    if ( fp ) {+      // A real app would do something useful here.+      fprintf(fp, "Hello world.\n");+      fclose(fp);+    } else {+      flc_message_with_args("Error: %s: %s", filename, strerror(errno),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);+    }+  } else {+    // A real app would do something useful here.+  }+}+void open_cb(fl_Widget w, void *v) {+  fl_Window app = (fl_Window)v;+  instance_data* d = (instance_data*)Fl_Window_other_data(app);+  fl_Native_File_Chooser fc = d->fc;+  Fl_Native_File_Chooser_set_title(fc,"Open");+  // Fl_Native_File_Chooser_set_type(fc,BROWSE_FILE);+  switch ( Fl_Native_File_Chooser_show(fc) ) {+  case -1: break;	// Error+  case  1: break; 	// Cancel+  default:		// Choice+    Fl_Native_File_Chooser_set_preset_file(fc,Fl_Native_File_Chooser_filename(fc));+    open_file(Fl_Native_File_Chooser_filename(fc));+    break;+  }+}+void saveas_cb(fl_Widget w, void *v) {+  fl_Window app = (fl_Window)v;+  instance_data* d = (instance_data*)Fl_Window_other_data(app);+  fl_Native_File_Chooser fc = d->fc;+  Fl_Native_File_Chooser_set_title(fc,"Save As");+  Fl_Native_File_Chooser_set_type(fc,BROWSE_SAVE_FILE);+  switch ( Fl_Native_File_Chooser_show(fc) ) {+  case -1: break;	// Error+  case  1: break; 	// Cancel+  default:		// Choice+    Fl_Native_File_Chooser_set_preset_file(fc,Fl_Native_File_Chooser_filename(fc));+    save(Fl_Native_File_Chooser_filename(fc));+    break;+  }+}+void save_cb(fl_Widget w, void *v) {+  fl_Window app = (fl_Window)v;+  instance_data* d = (instance_data*)Fl_Window_other_data(app);+  fl_Native_File_Chooser fc = d->fc;+  if ( strlen(Fl_Native_File_Chooser_filename(fc)) == 0 ) {+    saveas_cb(w,v);+  } else {+    save(Fl_Native_File_Chooser_filename(fc));+  }+}++void quit_cb(fl_Widget w, void *v) {+  exit(0);+}+const char* untitled_default() {+  static char *filename = 0;+  if ( !filename ) {+    const char *home =+      getenv("HOME") ? getenv("HOME") :		 // unix+      getenv("HOME_PATH") ? getenv("HOME_PATH") :	 // windows+      ".";						 // other+    filename = (char*)malloc(strlen(home)+20);+    sprintf(filename, "%s/untitled.txt", home);+  }+  return(filename);+}++void initializeWindow(fl_Window window){+  Fl_Window_begin(window);+  instance_data* i = (instance_data*)malloc(sizeof(instance_data));+  fl_Native_File_Chooser chooser = (fl_Native_File_Chooser)Fl_Native_File_Chooser_New();+  Fl_Native_File_Chooser_set_filter(chooser,"Text\t*.txt\n");+  Fl_Native_File_Chooser_set_preset_file(chooser,untitled_default());+  i->fc = chooser;+  Fl_Window_set_other_data(window,i);+  Fl_Window_begin(window);+  fl_Sys_Menu_Bar menu = (fl_Sys_Menu_Bar)Fl_Sys_Menu_Bar_New(0,0,400,25);+  Fl_Sys_Menu_Bar_add_with_user_data(menu, "&File/&Open",  FL_COMMAND+'o', open_cb, (void*)window);+  Fl_Sys_Menu_Bar_add_with_user_data(menu,"&File/&Save",  FL_COMMAND+'s', save_cb, (void*)window);+  Fl_Sys_Menu_Bar_add_with_user_data(menu,"&File/&Save As", 0,  saveas_cb, (void*)window);+  Fl_Sys_Menu_Bar_add(menu,"&File/&Quit",  FL_COMMAND+'q', quit_cb);+  fl_Box box = (fl_Box)Fl_Box_New(20,25+20,Fl_Window_w(window)-40,Fl_Window_h(window)-40-25);+  Fl_Box_set_color(box,45);+  Fl_Box_set_box(box,FL_FLAT_BOX);+  Fl_Box_set_align(box,FL_ALIGN_CENTER|FL_ALIGN_INSIDE|FL_ALIGN_WRAP);+  Fl_Box_set_label(box,+  		   "This demo shows an example of implementing "+  		   "common 'File' menu operations like:\n"+  		   "    File/Open, File/Save, File/Save As\n"+  		   "..using the Fl_Native_File_Chooser widget.\n\n"+  		   "Note 'Save' and 'Save As' really *does* create files! "+  		   "This is to show how behavior differs when "+  		   "files exist vs. do not.");+  Fl_Box_set_labelsize(box,12);+  Fl_Window_end(window);+}+int main(int argc, char** argv){+  Fl_scheme("gtk+");+  fl_Window app = (fl_Window)Fl_Window_New_WithLabel(400,200,"Native File Chooser Example");+  initializeWindow(app);+  Fl_Window_show(app);+  return Fl_run();+}
+ c-examples/pixmaps/black_1.xbm view
@@ -0,0 +1,60 @@+#define black_1_width 56+#define black_1_height 56+static unsigned char black_1_bits[] = {+0x00, 0x00, 0xff, 0x3f, 0x00, 0x00, 0x00, +0x00, 0xc0, 0xff, 0xff, 0x00, 0x00, 0x00, +0x00, 0xf8, 0xff, 0xff, 0x03, 0x00, 0x00, +0x00, 0xfc, 0xff, 0xff, 0x1f, 0x00, 0x00, +0x00, 0xfe, 0xff, 0xff, 0x3f, 0x00, 0x00, +0x80, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, +0xc0, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, +0xe0, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, +0xe0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x00, +0xf0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x00, +0xf8, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, +0xfc, 0xff, 0xff, 0xff, 0xff, 0x17, 0x00, +0xfc, 0xff, 0xff, 0xff, 0xff, 0x2f, 0x00, +0xfc, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x00, +0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x00, +0xfe, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x00, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x00, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x01, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x02, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x01, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x02, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x01, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x02, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x05, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x02, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x05, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x02, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x05, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x02, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x05, +0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x02, +0xfe, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x05, +0xfe, 0xff, 0xff, 0xff, 0xff, 0xaf, 0x02, +0xfc, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x05, +0xf8, 0xff, 0xff, 0xff, 0xff, 0xaf, 0x02, +0xf8, 0xff, 0xff, 0xff, 0xff, 0x57, 0x01, +0xf8, 0xff, 0xff, 0xff, 0xff, 0xab, 0x02, +0xf0, 0xff, 0xff, 0xff, 0xff, 0x55, 0x01, +0xe0, 0xff, 0xff, 0xff, 0xff, 0xab, 0x00, +0xc0, 0xff, 0xff, 0xff, 0xff, 0x55, 0x01, +0x80, 0xff, 0xff, 0xff, 0xff, 0xaa, 0x00, +0x00, 0xff, 0xff, 0xff, 0x5f, 0x55, 0x00, +0x00, 0xfe, 0xff, 0xff, 0xaf, 0x2a, 0x00, +0x00, 0xf4, 0xff, 0xff, 0x57, 0x15, 0x00, +0x00, 0xe8, 0xff, 0xff, 0xaa, 0x0a, 0x00, +0x00, 0x50, 0xff, 0x7f, 0x55, 0x05, 0x00, +0x00, 0xa0, 0xaa, 0xaa, 0xaa, 0x02, 0x00, +0x00, 0x40, 0x55, 0x55, 0x55, 0x01, 0x00, +0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, +0x00, 0x00, 0x50, 0x55, 0x15, 0x00, 0x00, +0x00, 0x00, 0x80, 0xaa, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/black_2.xbm view
@@ -0,0 +1,60 @@+#define black_2_width 56+#define black_2_height 56+static unsigned char black_2_bits[] = {+0x00, 0x00, 0x0f, 0x3c, 0x00, 0x00, 0x00, +0x00, 0x40, 0x40, 0x81, 0x00, 0x00, 0x00, +0x00, 0x10, 0x49, 0x09, 0x02, 0x00, 0x00, +0x00, 0x44, 0x52, 0x49, 0x08, 0x00, 0x00, +0x00, 0x90, 0x52, 0x25, 0x01, 0x00, 0x00, +0x80, 0x94, 0x54, 0x95, 0x44, 0x00, 0x00, +0x40, 0x24, 0x01, 0x40, 0x92, 0x00, 0x00, +0x20, 0x49, 0xfc, 0x0f, 0x09, 0x01, 0x00, +0x00, 0x11, 0x57, 0x35, 0x64, 0x00, 0x00, +0x40, 0xc2, 0x00, 0xc0, 0x10, 0x00, 0x00, +0x88, 0x64, 0x55, 0x55, 0x89, 0x05, 0x00, +0x20, 0x11, 0x00, 0x08, 0x42, 0x00, 0x00, +0x44, 0x58, 0x55, 0x55, 0x21, 0x0b, 0x00, +0x90, 0x04, 0x80, 0x0a, 0x80, 0x00, 0x00, +0x22, 0x56, 0x55, 0x55, 0x45, 0x14, 0x00, +0x48, 0x02, 0xa8, 0x2a, 0x00, 0x03, 0x00, +0x11, 0x55, 0x55, 0x55, 0x95, 0x28, 0x00, +0x21, 0x81, 0xaa, 0x2a, 0x00, 0x26, 0x00, +0x8d, 0x55, 0x55, 0x55, 0x15, 0x21, 0x00, +0xb1, 0xe0, 0xaa, 0xaa, 0x00, 0x20, 0x00, +0x80, 0xf5, 0x55, 0x55, 0x15, 0x07, 0x00, +0xbe, 0xf0, 0xab, 0xaa, 0x00, 0x00, 0x00, +0x80, 0xf5, 0x55, 0x55, 0x15, 0x1f, 0x00, +0xbe, 0xe0, 0xab, 0xaa, 0x02, 0x00, 0x00, +0x80, 0xf5, 0x57, 0x55, 0x15, 0x1f, 0x00, +0xb8, 0xc0, 0xaf, 0xaa, 0x00, 0x00, 0x00, +0x81, 0xd5, 0x57, 0x15, 0x14, 0x23, 0x00, +0xa1, 0x80, 0xaf, 0x0a, 0x00, 0x2c, 0x00, +0x19, 0xd5, 0x5f, 0x01, 0x14, 0x21, 0x00, +0x45, 0x01, 0xaf, 0x00, 0x00, 0x22, 0x00, +0x30, 0x56, 0x1f, 0x40, 0x85, 0x04, 0x00, +0x8a, 0x02, 0x0e, 0x00, 0x00, 0x11, 0x00, +0x40, 0x54, 0x0f, 0x54, 0x45, 0x02, 0x00, +0x34, 0x09, 0x04, 0x00, 0x80, 0x08, 0x00, +0x80, 0x40, 0x45, 0x55, 0x21, 0x01, 0x00, +0x68, 0x04, 0x00, 0x00, 0x48, 0x04, 0x00, +0x00, 0x82, 0x55, 0x95, 0x90, 0x00, 0x00, +0x80, 0x09, 0x02, 0x20, 0x22, 0x00, 0x00, +0x20, 0x24, 0xa8, 0x8a, 0x24, 0x01, 0x00, +0x40, 0x92, 0x00, 0x20, 0x89, 0x00, 0x00, +0x80, 0x48, 0xaa, 0x4a, 0x4a, 0x00, 0x00, +0x00, 0x20, 0xa9, 0x52, 0x02, 0x00, 0x00, +0x00, 0x84, 0xa4, 0x92, 0x08, 0x00, 0x00, +0x00, 0x10, 0xa4, 0x24, 0x02, 0x00, 0x00, +0x00, 0x40, 0xa0, 0x80, 0x00, 0x00, 0x00, +0x00, 0x00, 0x0f, 0x3c, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/black_3.xbm view
@@ -0,0 +1,60 @@+#define black_3_width 56+#define black_3_height 56+static unsigned char black_3_bits[] = {+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x08, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x04, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, +0x00, 0x10, 0x00, 0x00, 0x02, 0x00, 0x00, +0x00, 0x20, 0x00, 0x00, 0x01, 0x00, 0x00, +0x00, 0x40, 0x00, 0x40, 0x00, 0x00, 0x00, +0x00, 0x00, 0x01, 0x10, 0x00, 0x00, 0x00, +0x00, 0x00, 0x54, 0x05, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/black_4.xbm view
@@ -0,0 +1,60 @@+#define black_4_width 56+#define black_4_height 56+static unsigned char black_4_bits[] = {+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/blackking_1.xbm view
@@ -0,0 +1,60 @@+#define blackking_1_width 56+#define blackking_1_height 56+static unsigned char blackking_1_bits[] = {+0x00, 0x00, 0xff, 0x3f, 0x00, 0x00, 0x00, +0x00, 0xc0, 0xff, 0xff, 0x00, 0x00, 0x00, +0x00, 0xf8, 0xff, 0xff, 0x03, 0x00, 0x00, +0x00, 0xfc, 0xff, 0xff, 0x1f, 0x00, 0x00, +0x00, 0xfe, 0xff, 0xff, 0x3f, 0x00, 0x00, +0x80, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, +0xc0, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, +0xe0, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, +0xe0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x00, +0xf0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x00, +0xf8, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, +0xfc, 0xff, 0xff, 0xff, 0xff, 0x17, 0x00, +0xfc, 0xff, 0xff, 0xff, 0xff, 0x2f, 0x00, +0xfc, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x00, +0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x00, +0xfe, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x01, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x02, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x05, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x0a, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x15, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x0a, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x15, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x2a, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x55, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x2a, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x55, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x2a, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x55, +0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xaa, +0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x55, +0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xaa, +0xfe, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x55, +0xfe, 0xff, 0xff, 0xff, 0xff, 0xaf, 0xaa, +0xfc, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x55, +0xf8, 0xff, 0xff, 0xff, 0xff, 0xaf, 0xaa, +0xf8, 0xff, 0xff, 0xff, 0xff, 0x57, 0x55, +0xf8, 0xff, 0xff, 0xff, 0xff, 0xab, 0xaa, +0xf0, 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, +0xe0, 0xff, 0xff, 0xff, 0xff, 0xab, 0xaa, +0xc0, 0xff, 0xff, 0xff, 0xff, 0x55, 0x55, +0x80, 0xff, 0xff, 0xff, 0xff, 0xaa, 0x2a, +0x00, 0xff, 0xff, 0xff, 0x5f, 0x55, 0x55, +0x00, 0xfe, 0xff, 0xff, 0xaf, 0xaa, 0x2a, +0x00, 0xf4, 0xff, 0xff, 0x57, 0x55, 0x15, +0x00, 0xe8, 0xff, 0xff, 0xaa, 0xaa, 0x2a, +0x00, 0x50, 0xff, 0x7f, 0x55, 0x55, 0x15, +0x00, 0xa0, 0xaa, 0xaa, 0xaa, 0xaa, 0x0a, +0x00, 0x40, 0x55, 0x55, 0x55, 0x55, 0x05, +0x00, 0x80, 0xaa, 0xaa, 0xaa, 0xaa, 0x02, +0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x01, +0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, +0x00, 0x00, 0x54, 0x55, 0x55, 0x55, 0x00, +0x00, 0x00, 0xa8, 0xaa, 0xaa, 0x2a, 0x00, +0x00, 0x00, 0x40, 0x55, 0x55, 0x15, 0x00, +0x00, 0x00, 0x00, 0xaa, 0xaa, 0x02, 0x00, +0x00, 0x00, 0x00, 0x50, 0x15, 0x00, 0x00, +};
+ c-examples/pixmaps/blackking_2.xbm view
@@ -0,0 +1,60 @@+#define blackking_2_width 56+#define blackking_2_height 56+static unsigned char blackking_2_bits[] = {+0x00, 0x00, 0x0f, 0x3c, 0x00, 0x00, 0x00, +0x00, 0x40, 0x40, 0x81, 0x00, 0x00, 0x00, +0x00, 0x10, 0x49, 0x09, 0x02, 0x00, 0x00, +0x00, 0x44, 0x52, 0x49, 0x08, 0x00, 0x00, +0x00, 0x90, 0x52, 0x25, 0x01, 0x00, 0x00, +0x80, 0x94, 0x54, 0x95, 0x44, 0x00, 0x00, +0x40, 0x24, 0x01, 0x40, 0x92, 0x00, 0x00, +0x20, 0x49, 0xfc, 0x0f, 0x09, 0x01, 0x00, +0x00, 0x11, 0x57, 0x35, 0x64, 0x00, 0x00, +0x40, 0xc2, 0x00, 0xc0, 0x10, 0x00, 0x00, +0x88, 0x64, 0xd5, 0x55, 0x89, 0x05, 0x00, +0x20, 0x11, 0xc0, 0x00, 0x42, 0x00, 0x00, +0x44, 0x58, 0x57, 0x74, 0x21, 0x0b, 0x00, +0x90, 0x04, 0x03, 0x30, 0x80, 0x00, 0x00, +0x22, 0x76, 0x51, 0x15, 0x47, 0x14, 0x00, +0x48, 0x32, 0x08, 0x02, 0x03, 0x03, 0x00, +0x11, 0x15, 0x5d, 0x57, 0x91, 0x28, 0x00, +0x21, 0x01, 0x0c, 0x03, 0x00, 0x26, 0x00, +0x8d, 0x55, 0xcf, 0xd3, 0x15, 0x21, 0x00, +0xb1, 0x18, 0x86, 0xe1, 0x00, 0x20, 0x00, +0x80, 0x5d, 0xd7, 0x75, 0x11, 0x07, 0x00, +0xbe, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, +0x80, 0x75, 0x55, 0x55, 0x11, 0x1f, 0x00, +0xbe, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, +0x80, 0x75, 0x55, 0x55, 0x10, 0x1f, 0x00, +0xb8, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, +0x81, 0x75, 0x55, 0x55, 0x14, 0x23, 0x00, +0xa1, 0x60, 0x00, 0x00, 0x00, 0x2c, 0x00, +0x19, 0xd5, 0x55, 0x55, 0x14, 0x21, 0x00, +0x45, 0xc1, 0x00, 0x00, 0x00, 0x22, 0x00, +0x30, 0xd6, 0x00, 0x00, 0x85, 0x04, 0x00, +0x8a, 0x82, 0x00, 0x00, 0x00, 0x11, 0x00, +0x40, 0x54, 0x00, 0x00, 0x45, 0x02, 0x00, +0x34, 0x09, 0x00, 0x00, 0x80, 0x08, 0x00, +0x80, 0x40, 0x55, 0x55, 0x21, 0x01, 0x00, +0x68, 0x04, 0x00, 0x00, 0x48, 0x04, 0x00, +0x00, 0x82, 0x55, 0x95, 0x90, 0x00, 0x00, +0x80, 0x09, 0x02, 0x20, 0x22, 0x00, 0x00, +0x20, 0x24, 0xa8, 0x8a, 0x24, 0x01, 0x00, +0x40, 0x92, 0x00, 0x20, 0x89, 0x00, 0x00, +0x80, 0x48, 0xaa, 0x4a, 0x4a, 0x00, 0x00, +0x00, 0x20, 0xa9, 0x52, 0x02, 0x00, 0x00, +0x00, 0x84, 0xa4, 0x92, 0x08, 0x00, 0x00, +0x00, 0x10, 0xa4, 0x24, 0x02, 0x00, 0x00, +0x00, 0x40, 0xa0, 0x80, 0x00, 0x00, 0x00, +0x00, 0x00, 0x0f, 0x3c, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/blackking_3.xbm view
@@ -0,0 +1,60 @@+#define blackking_3_width 56+#define blackking_3_height 56+static unsigned char blackking_3_bits[] = {+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x08, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x04, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, +0x00, 0x10, 0x00, 0x00, 0x02, 0x00, 0x00, +0x00, 0x20, 0x00, 0x00, 0x01, 0x00, 0x00, +0x00, 0x40, 0x00, 0x40, 0x00, 0x00, 0x00, +0x00, 0x00, 0x01, 0x10, 0x00, 0x00, 0x00, +0x00, 0x00, 0x54, 0x05, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/blackking_4.xbm view
@@ -0,0 +1,60 @@+#define blackking_4_width 56+#define blackking_4_height 56+static unsigned char blackking_4_bits[] = {+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/blast.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * blast_xpm[] = {+"32 32 32 1",+" 	c #905518",+".	c #9F580E",+"+	c #A36526",+"@	c #AF6519",+"#	c #BF7429",+"$	c #C77622",+"%	c #B67B3C",+"&	c #D07518",+"*	c #D88836",+"=	c #E48628",+"-	c #F28514",+";	c #FF951C",+">	c #FA9835",+",	c #FF982A",+"'	c #F49F48",+")	c #FFA82D",+"!	c #FFA93F",+"~	c #FFBA1C",+"{	c #FFB936",+"]	c #FFBA4C",+"^	c #FFCA42",+"/	c #FFD329",+"(	c #FFCF5E",+"_	c #FFD94C",+":	c #FFE946",+"<	c #FFFB3E",+"[	c #FFFB55",+"}	c #FEFC69",+"|	c #FFFE82",+"1	c #FFFFA3",+"2	c #FEFFCB",+"3	c #FEFFFC",+"     % .  ....@@@#@@.+.+++%     ",+"  %%++++.....@######@@@@.++ %   ",+" %%% %++@@.@@@#$$#######@++++%% ",+" %%+%+####@@$&&=*=&&$$####@++%%+",+"+%+%#####&&&&&==='===*$$###%%%%+",+"%+%%%%**=*&&&&>,>,>-=>==*$*##%%%",+"  %#****'=>---,))!),>>>==***#%#+",+"  @%*'''>>>>;;,{{{))))>>>''**#%+",+" ..@#*'!]]]{)){^__^^{]!!!'''###+",+" ..@$=']]((^^~~:::/__^{((!>**##@",+"....&&=>(_|[::/<}[<[::_((!>==###",+"....&&--!_}|}[<[}[}}}||_]!>>**##",+"@@$$&&--;{:|1|[<|}|}||}_^]>>=*##",+"##$$=-,;)~~<121<2|121}}:^])>=*$#",+"#*'''!]{^_<<<1313332|}}}^{!>>*##",+"%*'']((|}}||||<333321|[[_^]>==*#",+"*''''((||112333333321|}[_^]!>=*#",+"%%*''!]^_[[[}<13332}<[<:_])>>*$#",+"##*==,,)~_:<[|212311}[</{),,=*$#",+"#@$$==,;)~/<|1<2|<1}|[:^{)-=&&$@",+".@@$&&-;)~:|}<<1}[|}[[:^{,-=&$@@",+"..@@&&-;)(}[/<[|[<<}<:_^{),=&$@.",+"...@&&=,{_(~~:[[<</[[^~]!>>=&$@@",+" .@@$&'!({;;{/}::/~/_^)),>=*$#@+",+" ..@$=''>,-;)^__~^{)^]),,==*$#@@",+". @##*'==&--){({));;,{>>==$$#@++",+"%++#%**$&&--,!));;;-->>=&$$##@+%",+" +%%##@@@@&=>>>>>>=-==='$$#@@+++",+" %%+@@..&.$&='==-&&&&&$*$#@@.+% ",+" %%+ ....@$$*==&$&&&@$$##@@+ %  ",+"   %  ....@#*#$$$#@@@@@##+@++   ",+"        ..@####@@@@@..+@++%     "};
+ c-examples/pixmaps/block.xcf.gz view

binary file changed (absent → 2905 bytes)

+ c-examples/pixmaps/blue.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * blue_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #0000A5",+"+	c #020681",+"@	c #0A008F",+"#	c #0001B2",+"$	c #0100BA",+"%	c #0000D0",+"&	c #0C00C4",+"*	c #0008C4",+"=	c #0B00DB",+"-	c #13252E",+";	c #171F44",+">	c #1718B3",+",	c #1616C2",+"'	c #2628CF",+")	c #2C2BC6",+"!	c #2D30BD",+"~	c #3D40D1",+"{	c #4342BC",+"]	c #4344CA",+"^	c #5253E1",+"/	c #5858D4",+"(	c #5F5ECF",+"_	c #6A69E7",+":	c #6E6EDD",+"<	c #7273D2",+"[	c #7E7FDD",+"}	c #7E7FEC",+"|	c #8D8DDF",+"1	c #8F90EF",+"2	c #9D9EED",+"3	c #A6A6E8",+"     ;+.*$##$$**$*$#$*&&.+;     ",+"   -@&)_133333333333333|:!$@-   ",+"  ;%%}22122222222233333333['$;  ",+" -&'1111111|2|21111|2223|332'&- ",+" @*}}}}1}}}1}1111111[|[||||||*. ",+";&/}[}}}}}}}[[[}}}}}[}[[||||[:&;",+"+'::::_____:::<::__}_}:<<<<<[<)+",+">)/_/_____::(::::_____:(<<<<<<].",+"*^//^/////(((((//_^_^_///(((((/$",+"#]]]]^^{/{{{{/{//^^^^^^///{(((($",+".]~~~~]{{{{{{{]{]~~~~~~~]{]{{{(.",+"#))))!!!{{{]!~!!~~'~''~~~]{{{{{.",+"#))))!!!@!>!!))))''''''~)!!!{{+.",+"$,,>>>@!>>)>,'''''''''''))!>!!!.",+"$,,#>>>>.>,,&*%*'*''*',,,,,>>>>#",+"&%%$#...#&&%*%***%%&*$,***,>#>>#",+"$&%&*###&&%%&&&&,*&*,##$*$$#$$#$",+"$&%%$$$*&%&**$$$&&&&&$#$***#,#.#",+"$$$&$*&%%=&&$##$$**&&$**&&&$$#..",+".#$$&&%%%%%&,....##$#$$&%%&&$#.#",+".#$$&%%===%%&#.....###$&%%%&&#.#",+"$$&&%=====%%$##.@..#.##&&&%%&$$#",+"$$&&%==%==%&$###.....##$%&%&&$$$",+"$$$&&%%%%%&&$$###..###$$&%&%&&$$",+".$$&&&&$$&$$*&&*$$#$$$$$$%%%%%&.",+"+$$$$&####$&$&&&&&$$&$$$$&%=%%=+",+";##$$$#....$$&&&$&&%&&$$*&%==%%;",+" @$,#$#.@..##.#$&&%%%&$&&=%%%%. ",+" -$*$&&$.......#&&&%&&$&%==%%&- ",+"  ;$&&$#...#...$&%%%&&$&%=%=%;  ",+"   -@%&$#..#...#$%&&&&&&&=%.-   ",+"     ;+.#$#....#&&%%&&&&#+;     "};
+ c-examples/pixmaps/blue_bomb.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * blue_bomb_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #010047",+"+	c #00033E",+"@	c #010345",+"#	c #010577",+"$	c #0000A4",+"%	c #0001B7",+"&	c #0000C3",+"*	c #0000D0",+"=	c #13252E",+"-	c #1A2147",+";	c #1E1E57",+">	c #2023BC",+",	c #2526CD",+"'	c #343364",+")	c #363699",+"!	c #3237C5",+"~	c #373BB4",+"{	c #474875",+"]	c #4E4FD4",+"^	c #5252C6",+"/	c #5B5A85",+"(	c #6D6D94",+"_	c #6666CE",+":	c #6465DE",+"<	c #6E6CAC",+"[	c #7B7CDA",+"}	c #7C7DEB",+"|	c #8D8DDF",+"1	c #8F90EF",+"2	c #9D9EED",+"3	c #A6A6E8",+"     -#$&%%%%%&&&&%%%&&&$#-     ",+"   =$*,:133333333333333|}>%$=   ",+"  -&,}22122222322233333333[>%-  ",+" =&,}111111|2|21111|22322332,&= ",+" $,[1}1}1}}1}1111111[1|||<|||&$ ",+"-%]}}}}}}}}}[[[}}}}}}[[[||||1:&-",+"#,:_}:::}::[<((((((<[}}[[[[<[[,#",+"%!:::::::_<(((((((((/<_:___[__]$",+"&]]]]]]]://///(////////_^::___]%",+"%]]]]]]^{{{/{{/{/{</{/{/^^^^^_^%",+"$!!!!!]'{{{={{{{{{'{{{{{']]~^^^$",+"%,!,!>)''-{''''''''''''{')]~~~~$",+"%,>,!>)-'-'-''''''';''''')!!~~~$",+"&,,$>>--;;-;;;;;;;;;);;;;->>>#!$",+"&&&,$$;+;+;+;@;;.;;;;;;;;;%>,>>%",+"%&&&$$++@+..@...;..@.@;@.;%,$%$%",+"&&*&&%+++..@@@@@@@@@+@++@+%%%%%%",+"&&&&%%+@+.@@+++@++@@@++++@&%%%$%",+"%&&&&&+....+++++@+@+@+@@@@&%%%$$",+"$%%&%&#.@..@+++++++++++@@#&&%$$$",+"$%%%&*$....@+++++++++++@.$*&&%%$",+"%%&&***#...@+++-++++++++#***&%%%",+"&%&&***&...@+++++++++++@$&**&%%%",+"&%%&****$.@@+++++++++++$&&*&&&&&",+"$%%&&&&%&$#+@@+++++++#$%&&****&$",+"#%%%%&%%$%$$#@.@@@+#$%%%%&*****#",+"-%%%%%%$$$$%%%&%%&&&&%%&&&*****-",+" $%%%&$$$$$$%$$%&&**&&%&******$ ",+" =%%&&&$$$$$$$$%&&***%%&*****&= ",+"  -&&&&%$$$$$$$%%***&&&&****&-  ",+"   =$&%%%$%$$$$%&&&&&&&&***$=   ",+"     -#$%%%%$$$%%&&&&&&&%#-     "};
+ c-examples/pixmaps/cyan.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * cyan_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #143144",+"+	c #0A4350",+"@	c #038080",+"#	c #029795",+"$	c #00A3A5",+"%	c #00ABAC",+"&	c #02B3B5",+"*	c #00BBBB",+"=	c #00C0C0",+"-	c #19B9BB",+";	c #33B5B5",+">	c #00CCCB",+",	c #12C5C5",+"'	c #47B2B1",+")	c #1AC9C9",+"!	c #09D2D1",+"~	c #37C9CA",+"{	c #46C5C6",+"]	c #24D9D8",+"^	c #5CC5C3",+"/	c #4BD0D1",+"(	c #55D8DA",+"_	c #72D4D3",+":	c #53E3E3",+"<	c #66E0E2",+"[	c #7EE2E1",+"}	c #70ECED",+"|	c #94E0E1",+"1	c #8DEFED",+"2	c #A1ECEC",+"3	c #ADE8E6",+"     +@$=*&&&***=*&&&*==$@+     ",+"   .#>![123333222233323|<~*#.   ",+"  +,]}1211212222212232333||**+  ",+" .,]1211111222221112|||||3||>>. ",+" #)[11111}}11[11111111[|||||[!# ",+"+*<}<<}}1}1}[[[1}1}}1[[___|_|<>+",+"@)_[[<}}}}}<[__<<}}}}1[___|^|_)@",+"%](((<<<<<__/___[}}}}:[__^_^^_^%",+"-(((((((((_{{_{/_(}:}<<<(___^^/*",+"&////(/{{{{^/{{^/]:::::(_(/{^{^&",+"%{//!/{;';{;{{~{{/]:]:]/~~/{^{;%",+"%==,~,*;;;;'*~~~~~/!]]()~{{{;''#",+";>/**;;;&;-;;~,)))//!!]~=---;';$",+"*>=*;%;%;--*,)!)!>)!~!))~=~--%;%",+";),=;%%%--))))!))!)))~,)),{--&;%",+"=)>**%$%*=)>!>)),,))--*=)=***;**",+"*)!>**%&=)!,,,===,,,*;*;==**&*&&",+"*,>,=***>!),**-*=,,>=***,=*&*&%&",+"*&==**,>>!>=&%&&***=***=>,=*%%%%",+"%****>>!!!!>*%%%%%&*&**,>>>==%$$",+"%%*==>!]]!!>*%%$$%%%*%=,>>>>>*%%",+"%==,!]]]]]!>*&$$##$%%%&*,>>>*=&;",+"**=>!]]]]]!>**%$$#%%%%*=,>>>=**&",+"***,)!!!!!,****=%%#%%%&*=>>>>==*",+"$*&=,),**,=*======***==**,>>>>>%",+"@=&-*=&%%&&*==>>======*&=,>]]!!@",+"+&&=&*&%$%%*****==,>,=*==!!!]]!+",+" #&&=*&$$#$%%%%*=,>>>=*=,!!!!!# ",+" .&====%%$%%%$$%=>>>)=*,!]]!!,. ",+"  +*,==*%#$$%#%*=>!>,=-,!]]!!+  ",+"   .#,=*%%%%$#$&=,>,,,=,)!]$.   ",+"     +@$&*%%%$$%,,,,,,,,%@+     "};
+ c-examples/pixmaps/cyan_bomb.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * cyan_bomb_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #003A3A",+"+	c #133244",+"@	c #004241",+"#	c #0A4551",+"$	c #084948",+"%	c #1B5353",+"&	c #006C6D",+"*	c #286261",+"=	c #396767",+"-	c #0F8080",+";	c #019795",+">	c #507B7C",+",	c #00A7A9",+"'	c #5D8989",+")	c #00B7B7",+"!	c #00C1C1",+"~	c #2FB2B3",+"{	c #6D9A9A",+"]	c #00CAC9",+"^	c #4AB4B3",+"/	c #05D4D2",+"(	c #36C8C9",+"_	c #53C4C3",+":	c #46D3D4",+"<	c #61D3D3",+"[	c #75CECE",+"}	c #6FE2E1",+"|	c #82DFDE",+"1	c #94E0E1",+"2	c #89EFED",+"3	c #A2ECEC",+"     #-,!))~))!)!!)~)!!!,-#     ",+"   +;]:}2333333333333331<();+   ",+"  #!/}23333333333333333333[!!#  ",+" +!/322222221332223311111111:!+ ",+" ;:2222222222|23222233111111|/; ",+"#!:}|}222222|||}22222}|1[1[[1}]#",+"-:<}}}}}}}}[^{{{{{{[[2}|[[[[[|!-",+",:}:}:}}}<{'''''''{'{{[<<|[[[<_,",+"!:<<:}::_'>'>>'>'''''''[<<<[_<:!",+")(:::::^>>>>>>>>>>>''''>_::____~",+",((:::(>===>=>=>>>=>>>>>'(:___^,",+"~(((](;===#========&&=*=*^(_^^~;",+")](()_&%%==%=%===*===*==*-~)^~~,",+"!!!)~,=#.%%#%%%%*%******%=())~~,",+")]()~,.%%%%%%%%%%%%%%%%%%%()))~)",+"(!]!)^.....$%$$$$$$$$$$$$$)))))~",+"!]:])~...%$$.@#@@@@@.@.$@@))))))",+")]]]!(.$$.@@..@.@@@@@@..@$)))))~",+"~!)!)!.$$%$.@....@#@.@@@#@()),,,",+",)!~!(&@@@@$...........@$&]!)),,",+")))!]]~$$$@$.........@@@$,:]!),,",+"~)!!///&$$$@@...........&]]]!)))",+"))!!://!%$$@...........@,]/]])))",+"!))!///],@#$..........@;]]]]]!]!",+",)!)!!!!!,&.@#@......*,)!]]]/]!,",+"-)~!!!)),));&@@@$.@&;!)))!/////-",+"#)~))),,;,,)))!)!!:]]!!!!]/////#",+" ;))))),;,,)~~,)!!]/]!)!]/////; ",+" +)!!!!),,,,,,,)!]]/!()!/////!+ ",+"  #)]!)),,,,,,,)!!/!]!)!////]#  ",+"   +;]!),,,,,;,)!]]!!!!!]//,+   ",+"     #-,))));,,,!!]!]!!!)-#     "};
+ c-examples/pixmaps/gray.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * gray_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #2C393F",+"+	c #394649",+"@	c #666967",+"#	c #737572",+"$	c #7A7C79",+"%	c #828481",+"&	c #878986",+"*	c #8C8E8B",+"=	c #90928F",+"-	c #939592",+";	c #979996",+">	c #999B98",+",	c #9C9E9A",+"'	c #9FA19E",+")	c #A1A0A4",+"!	c #A3A5A2",+"~	c #A6A8A5",+"{	c #A9ABA8",+"]	c #A9ACAF",+"^	c #ABADAA",+"/	c #AFB1AE",+"(	c #B3B5B3",+"_	c #B9BBB8",+":	c #BABDC0",+"<	c #C1C3BF",+"[	c #C2C3C7",+"}	c #C7C9C6",+"|	c #CBCDCB",+"1	c #D1D3D0",+"2	c #D9DBD8",+"3	c #DFE1DE",+"     +@%;-**=---;-=*=;>>%@+     ",+"   .$':[2332233333222231[]-#.   ",+"  +)(|33333222333332222221[)-+  ",+" .;(22233333121333322|12|1|2]'. ",+" #]|221222221112233222[2||||1]$ ",+"+)[|[[2[3[3[2[1[[2[222||[[[[|<)+",+"@~[[||[111[[|[[|2221[2[|}<<[[|~@",+"%:|<[|[[[|[[[:[[[[[21|[[[_:((_]&",+"-(::[[[[[:((((]:[[|[||<<[_<:::];",+"=((((_(({^]](]]](<[[|[[:(:((]((*",+"&]]((()))!')^(^^]([[<<__(]({~)]%",+"*~^]])'>-))'){)]^]((:_:]]{)))>)%",+"=)~!''>)--);){{]^{{^(((])~~!)==%",+")~)))=**);;)']]{]]]]]]]{~!,)=)-&",+"-',-**&*=)>)!{]~~~~!)!))])'>-==*",+")))))&&&=;!~])')))))>)>,'';))-)*",+"-'!)=**)=)!)')-;>,''-=*-))**==)&",+"),);))*))]);)*--)>)))-==-)=)*&**",+"*))-==)'!{!;*&**==---)=)>))*)%&&",+"%&==))!)]])))*&&**&)**))!'-))&%%",+"**)=)){^{^~)=&&%$%&&**=)))]))**&",+"**-)!{]]]]{)))&$%%%*&&*;'''>))**",+")=),]((((]!)*&&%$%$&&*)-))]);*)*",+"==*)'!!'!~)*)))&)&&&&&*)>'')))-)",+"%)*))))-);)-==)))&)&)*=-))!!))'%",+"@=*=--*&&*==));-)=)=)))*->!]^^]@",+"+=*=--*%$%&)&-)-))));-=)-){{]]]+",+" #)*)*)&%$%&*&&*=;)!))*)){]]{~# ",+" .*)*)*&&%&%%%%));]'))*>]{{])). ",+"  .=))))&%%&%%$&;,!)>-))!]]{~+  ",+"   .#;=&*)$&%%%)))!');-)'{]$.   ",+"     +@$$)&)%$$&-,))>),;&@+     "};
+ c-examples/pixmaps/gray_bomb.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * gray_bomb_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #2C2E2B",+"+	c #313330",+"@	c #2E393E",+"#	c #363835",+"$	c #3B3A3D",+"%	c #3B3D3B",+"&	c #3B464A",+"*	c #454644",+"=	c #48464A",+"-	c #50514F",+";	c #585A57",+">	c #616260",+",	c #686967",+"'	c #70716E",+")	c #787A78",+"!	c #818380",+"~	c #868885",+"{	c #8B8D8A",+"]	c #8F908D",+"^	c #939491",+"/	c #969895",+"(	c #9B9D9A",+"_	c #A1A3A0",+":	c #A8AAA7",+"<	c #B0B3B0",+"[	c #B9BBB8",+"}	c #C1C2C0",+"|	c #C9CBC8",+"1	c #D2D3D1",+"2	c #D9DBD8",+"3	c #DFE1DE",+"     &,!/^]]]^////]]]/((!,&     ",+"   @)_<12322232333322221}:^'@   ",+"  &(<133333313233332222221}_/&  ",+" @/}221233322113333221111111<_@ ",+" )_1112223321212223212111}1}1<) ",+"&^}1111111111}1111221111}}}}1}_&",+",:}}}111111<:]~]^^^<}11}}}}}}}:,",+"]<}}}}}}}}]~))~)~~]~]^}}}}}<<}<~",+"/}<}}}}}_)))))))))~)~)~<}}}<<<<^",+"]<<<<}<_,',,'''))))))))):<}<<<<]",+"]<<<<<<,>>>,,,>>>,,),,,,)<<<_::~",+"]_::<_~>->->->>>>>>>,,,,>^__:^/)",+"^___((,====-=-->=>>=>=>>=)_(^(^!",+"^:_(^^=-=-=-=-==-==>-----=__/^^]",+"^_((^~$$*%=*==-=--======-=_(^(^]",+"^__(]].+$$$%%*$$$$$*$@*%%=((^^^]",+"/_:_^]@.+$$$+$++$$+$$$$$+$^^^^]]",+"^___^^..$##++..$++$+....$$^]^]]]",+"]^^(^($+$$$$.....++$.$.@$.(^]]~~",+"~]^^//>+$++.$@.@.@......$>_(]]!~",+"]]^(__~@$$$$......$.$@$+$)<_^]~~",+"]^((_<<;##$.$..........$=__:(^]]",+"^^((:<<^&#$$...........$~____^^]",+"^^^((___!$+.$.@.....@.$)(___(((^",+"~^^^__(^^~=$..$.@....=)^/_:::_:~",+">^^^/^^]]]])=@.$..$=)^^^^(_<:<:,",+"&]]^^]]))~~^^]]]^/__:(^^(__::::&",+" )^]^^]]))~~]]]^^(_:_^(^_:<:::) ",+" @^^(^^]~~])~)~]((___^/(:<_<_(@ ",+"  &^__(]])~]~)~^^_:__(^(_:<:_&  ",+"   @)((]]]~~)~)^(__(((((_:<)@   ",+"     &,)]]]]])!]^(__(_((~>&     "};
+ c-examples/pixmaps/green.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * green_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #022D01",+"+	c #004300",+"@	c #007F00",+"#	c #009400",+"$	c #00A301",+"%	c #00AA00",+"&	c #00B600",+"*	c #04BC0A",+"=	c #00C100",+"-	c #02C805",+";	c #00CC00",+">	c #24B329",+",	c #00D400",+"'	c #18CA24",+")	c #3FB740",+"!	c #31C733",+"~	c #3FC640",+"{	c #31D633",+"]	c #4FC650",+"^	c #5DD45D",+"/	c #5BD957",+"(	c #51DF54",+"_	c #6BD16D",+":	c #6AE26D",+"<	c #81DF81",+"[	c #8DDB8C",+"}	c #7EE77F",+"|	c #79EE7A",+"1	c #8FEF8F",+"2	c #9DEC9D",+"3	c #A6E7A5",+"     +@$=*&&&*====&&&===$@+     ",+"   .#;{:123333333333333[:!&#.   ",+"  +-;|22222223222223333333<*=+  ",+" .-,11111111221111122223[332!;. ",+" #-}1}|}||1|111111}11<<[[[[[<;# ",+"+*^}}}}|}||}}<<1||||}1<<[[[[[:;+",+"@':^::|||||:___}}|||:|}_<_[_[_'@",+"%{^:://///^_^^_^:/|(/::^______~%",+"*(/////:^^^^_]]^^/((((:^^^]___]=",+"%~~/~(/~]~]]~]]]/((((((//^]]]]^%",+"%~!!!!~)))))~]~]~({({{{(~~~]))]$",+"&!!!!~~))>))~!~!~!{({{(!~~~))))$",+"&!!!*>>>>>>>>!!'{!{{{{{!!~>~)))$",+"=-'*>&>%>&!*'--'{-''{-{'!!!%>#>%",+"*='*>%$%&&'=-{;-'{-='=---=!&!%!%",+"*--=&%%%&=;--;-=-=;=*&!**-=&&&&&",+"=-;-=&%&==;;======--*&&&**&&&&&&",+"*-;-=&**-,;==&&*==-==*&*=-*&&&%&",+"&&=====;;,;=&&&&&*===&===-=*&&$%",+"%&**==,,,,;-&%%%%%&&&**-;;;=&%%%",+"%&&*-;,,,,,;=%%%$$%&%&*-;;;;=&%%",+"&&=-,,,,,,,;=&$$$#%%%%&=-;;;-&&&",+"**=-,,,,,,,=*&%$$$$%%%&=-;;;=*&&",+"*&*=,,,,,,-=&=&&&%%%%&&*=-;;;===",+"$*&*=-{=*===*=-==&&*&&*===;;;;;%",+"@*&*==&%%&&*==--======*&*-;,,,;@",+"+&&&&=&%$%%&=&*===-;;=&*=;,,,,,+",+" #&&&&&%#$%%&%%&*-;;-=*=-,,,,,# ",+" .&===&&$$$%$$%&==,;-=*=,,,,,-. ",+"  +&===&%$%%$$$&=;;;-==-,,,,-+  ",+"   .#-=&&%%%$$$&=-;=====;,,$.   ",+"     +@$&&&%$$$%==----='&@+     "};
+ c-examples/pixmaps/green_bomb.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * green_bomb_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #003700",+"+	c #003E00",+"@	c #004405",+"#	c #004600",+"$	c #005E00",+"%	c #1B541B",+"&	c #006E00",+"*	c #2C602D",+"=	c #008B00",+"-	c #3E6D3F",+";	c #358335",+">	c #00A800",+",	c #4E7B4E",+"'	c #00B700",+")	c #00C100",+"!	c #5E895F",+"~	c #00CD00",+"{	c #32B12E",+"]	c #40AA3D",+"^	c #00D800",+"/	c #28C42B",+"(	c #6D9A6E",+"_	c #41C442",+":	c #5CCB5D",+"<	c #58DA59",+"[	c #7EC678",+"}	c #73D173",+"|	c #73E773",+"1	c #83EB84",+"2	c #93EB92",+"3	c #A0E7A0",+"     @&>)'''''))))''')))>&#     ",+"   .=~~|2333333333333332|/'=.   ",+"  +~^1222233333323333333332''@  ",+" .)~212122123222222333333333/). ",+" =~12111111121211112222[3[322~= ",+"@)<1|11|||||121111||1112}[[[}|~@",+"=/|||||||||}[!((((([}|}1}}}[}})=",+">/<:<|<|<|(!!!(!((((((::|}1}}}_>",+")<<<<<<<:!!!!!!!!!!!!(!}<:<::}:)",+"'</</<_:-,-!-!,!,,,,,,,,:<<::::'",+">_//</_,---------,,,;,,,;:___]:>",+"'/////]-, --------*--;*--]_{_]]>",+"'/////;.---.--***********;_{{{]>",+")~))>{**.-.*.%%%*%%*%****%//{{>>",+"'))/>>..%.*%%%%%#%%%%%%%%%'/'/>'",+")~))'{...+++@@##%###@@@@#@)'/'/>",+")~~~)'.@@@@@@@@@@@#%#@@@@@''>'''",+"))~))'++@@##+++@@#+#@+.+@+'''''>",+">)))')@####+.++++++++++@@@)''>>>",+"'>')))&###@#+.....+++@+@#&~)'>>>",+">''))~>#####+........++@#>^~)'>>",+"'')~~^^&####++......+.++&)~~~'''",+"'))~~^^)$###@+.......+++>~~~))''",+"'/')~^^)>#@+++++......#=~)~~~)))",+">''))))')>$++@@@#++++$>'))~~~~)>",+"='''))''>')=&#+#+@+&>)'')~~^^^^=",+"+'''''>>>>''))')))~)))'''~~^^~~#",+" ='''''>=>>>>>'')~~~~)))~~^~~^= ",+" .>)))''>=>>>>>'')~~~'))~^^^~~. ",+"  @))))'>>>>>=>>)~~~))))^^^~~+  ",+"   .=~)'>>>>>>>')~~~))))~^^>.   ",+"     #&>'''>>=>>)~))))))>=@     "};
+ c-examples/pixmaps/magenta.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * magenta_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #380F3F",+"+	c #490754",+"@	c #890089",+"#	c #9E02A1",+"$	c #A800A6",+"%	c #AF00B1",+"&	c #B900B6",+"*	c #B902BE",+"=	c #C200C3",+"-	c #CC00C8",+";	c #D100D2",+">	c #DE00DB",+",	c #CC18CC",+"'	c #C324C3",+")	c #BC33BC",+"!	c #D629D5",+"~	c #B93DB9",+"{	c #D23BD2",+"]	c #D34BD2",+"^	c #CF53D0",+"/	c #CE5ECE",+"(	c #E551E4",+"_	c #E366E3",+":	c #D473D4",+"<	c #DD6DDD",+"[	c #EB7BEC",+"}	c #E683E5",+"|	c #DD8BDD",+"1	c #F18FF2",+"2	c #F09BF0",+"3	c #E7A2E8",+"     +@#=*&%&*====&%&===$@+     ",+"   .@=!_233333333333333|/{*@.   ",+"  +;>[22223333332233333333|'=+  ",+" .=!12111112222122233333333|{-. ",+" @,}}}}1[1[[1}21111}1|||||3||;# ",+"+=_<[[[[[[[[}:}[[[[[}}}|||||:<=+",+"@=<<<_<[__[<<:::[[_[_[<::::|::'@",+"${_/______</:/:<______<//:::::]$",+"*]]^]_]_^^^//^//__((___/^///://*",+"%]]]]]]~^^~^~/~^^((((((]^^~/~//&",+"$){{{]~~~~~~~])~^]((!((]]^~^~~~#",+"%{{){')~~~~)))]{)'{{{!{{))~~~~~#",+"%''')')~#)))''''{!!{{!{{{'~~~~~#",+"=,='&#$%)&&&',!,,,',,!!''''%~#~$",+"&,*'$$$$&'',,,-,,-,,'=,',''&)%%%",+"==-=&$$%%&--,-,,',,==&&==,*&&&&%",+"=;-;=&$&=;;;==*===,=**%'=&*%'&&%",+"*=;=*&*&=;==**&*=====&&&*=&*&%%%",+"%*==*-=;-;-=%%$&&*=&**==;==*%$$$",+"$%&&*=;;;;;=&$%$$%%*&&*--;==*%%$",+"%%*==;;>>;;;=%$$#$$%%%*=;;;-=%%%",+"&&=,-;>>;>;-=%%###$$%%&==--;=&%%",+"&&*;->>>>>;=&%%$#$$$$$%==;,--=&&",+"=*&=;;;;;;-&**&&%$$$$%&&-=;;=&==",+"$*%*===*&===&===***&****==;;;-;$",+"@&&&*=%$%%*&=---==&===*&&=-;>;;@",+"+*&&&&&$#$%&**&=&;=-==**=;;;>;;+",+" @****%$##$%%$&&==;;-=&=-;>;;;@ ",+" .%&==*%$#$$$#$%&=;;-=&=;;>;-;. ",+"  +====&$$$$$$$&----=*==;>;>;+  ",+"   .#==&%$$%##$%=;;-====;;;#.   ",+"     +@#%*%$$##%*===-=-&$@+     "};
+ c-examples/pixmaps/magenta_bomb.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * magenta_bomb_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #3A033B",+"+	c #410142",+"@	c #48004B",+"#	c #6C006C",+"$	c #541954",+"%	c #840084",+"&	c #9B009D",+"*	c #612F61",+"=	c #AC00AC",+"-	c #792A7D",+";	c #BA00B9",+">	c #C200C2",+",	c #813285",+"'	c #D000D0",+")	c #734472",+"!	c #B91EBA",+"~	c #8E488B",+"{	c #B034B1",+"]	c #855A85",+"^	c #CD31CD",+"/	c #C643C7",+"(	c #967098",+"_	c #AC6DAC",+":	c #C960CA",+"<	c #D859D8",+"[	c #E770E7",+"}	c #E376E3",+"|	c #DD7CDD",+"1	c #EF8BEF",+"2	c #E894E8",+"3	c #E7A2E8",+"     @%&>;;=;;>>>>;=;>>>=%@     ",+"   .&'^[1333333333333332:^;%.   ",+"  @>'[22233333332333333333|^;@  ",+" .'^121111112221112333333333^'. ",+" &^1111111111222111122222_322'& ",+"@><}}}1[1[[[}}1111[}}}|2|2|_2[>@",+"%>}[}[[[[[[2_((((((2|[}|||||||>%",+"=^<<<<<<[:_]((((((](]_:::::|:|/=",+";<<<<<<<:]]]]]]]]]]]]]]::::::::>",+";//<^<^:)))])])])])]]]]]<<:{::<=",+"=/^^^</))))))))))))~))))~//<{:{&",+";^/^^^%**) )***)*)*)*)*)){/{{{{=",+";^^!/!-**************-***,{/{{{&",+";>;!={*.*.*.*$*$$$$$*$*$**!!{{{=",+";'>!=&..*.*.$$$$$$$$$$$$$$!;!!=!",+">>>>!{.....$.@+@@@$+$+$+$$;!;!!=",+";''>>=...++@+++++@@++...++;!;;;;",+";>'';;.++@@+.+..+++++..+++>;;===",+";;;>>>+++@++..++.+++++++++>;;===",+"==;;;>%+@+@++.......++++@#>>;===",+"=;;>>>=+@+@@+.........++@=''>===",+";;>>'''#@@+++...........#>'>';==",+";;>>'''^@@@++..........+=''>>>>;",+";;;>''''=@++++......+.+&>>''>>;;",+"=;;>>'>;>=#.++++.....#&;>>'''''=",+"%!;;>;;===;%#++++++#&;;;;>'''''%",+"@;;;;;;=&==>;;>;>>>'>>;;>''''''@",+" &=!;;==&&======>>''>>;>>'''''& ",+" .;;;>;==&===&=;;>''';;>'''''>. ",+"  @;>>>;=&&==&=;>'>'>>>''''''@  ",+"   .&>>==;==&=&=>'>>>>;>'''{.   ",+"     @%======&&=;>'>'>>>!%@     "};
+ c-examples/pixmaps/porsche.xpm view
@@ -0,0 +1,71 @@+/* XPM */+static const char * porsche_xpm[] = {+"64 64 4 1",+" 	c #background",+".	c #000000000000",+"X	c #ffd100",+"o	c #FFFF00000000",+"                                                                ",+"                   ..........................                   ",+"              .....................................             ",+"        ............XXXXXXXXXXXXXXXXXXXXXXXX............        ",+"        ......XXXXXXX...XX...XXXXXXXX...XXXXXXXXXX......        ",+"        ..XXXXXXXXXX..X..XX..XXXX.XXXX..XXXXXXXXXXXXXX..        ",+"        ..XXXXXXXXXX..X..XX..XXX..XXXX..X...XXXXXXXXXX..        ",+"        ..XXXXXXXXXX..XXXXX..XX.....XX..XX.XXXXXXXXXXX..        ",+"        ..XXXXXXXXX.....XXX..XXX..XXXX..X.XXXXXXXXXXXX..        ",+"        ..XXXXXXXXXX..XXXXX..XXX..XXXX....XXXXXXXXXXXX..        ",+"        ..XXXXXXXXXX..XXXXX..XXX..XXXX..X..XXXXXXXXXXX..        ",+"        ..XXXXXXXXXX..XXXXX..XXX..X.XX..XX..XXXXXXXXXX..        ",+"        ..XXXXXXXXX....XXX....XXX..XX....XX..XXXXXXXXX..        ",+"        ..XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX..        ",+"        ..XXXXXXXXX..........................XXXXXXXXX..        ",+"        ..XXX.......XXXXXXXXXXX...................XXXX..        ",+"        ......XX.XXX.XXX..XXXXX.........................        ",+"        ..XXXXX.XXX.XXX.XXXX.XX.........................        ",+"        ..XXXX.XXX.XX.......XXX.........................        ",+"        ..XXXX.......XXXXXX..XX..ooooooooooooooooooooo..        ",+"        ..X.....XXXXXXXXXXXXXXX..ooooooooooooooooooooo..        ",+"        ..X...XXXXXXXXXXXXXXXXX..ooooooooooooooooooooo..        ",+"        ..X..XXXXXXX.XX.XXXXXXX..ooooooooooooooooooooo..        ",+"        ..XXXXX.XXX.XX.XXXXXXXX..ooooooooooooooooooooo..        ",+"        ..XXXX.XXX.XX.XX................................        ",+"        ..XXXX.X.........X....X.X.X.....................        ",+"        ..XXXX...XXXXXXX.X..X...X.X.X.X.................        ",+"        ..X....XXXXXXXXXX.X...X.X.X.....................        ",+"        ..X...XXXXXXXXXX.XXXXXXXXXXXXXX.................        ",+"        ..X..XXXXXX.XX.X.XXX...XXXXXXXX.................        ",+"        ..XXXXX.XX.XX.XX.XX.....XXXXXXX.oooooooooooooo..        ",+"        ..XXXX.XX.XX.XX..XX.X...XXXXX.X.oooooooooooooo..        ",+"        ..XXXX.X.......X.XXXX...XXXX..X.oooooooooooooo..        ",+"        ..X......XXXXXX..XXXX...XXXX..X.oooooooooooooo..        ",+"        ..X...XXXXXXXXXX.XXX.....XXX.XX.oooooooooooooo..        ",+"        ..X..XXXXXXXXXXX.X...........XX.oooooooooooooo..        ",+"        .................X.X.........XX.................        ",+"        .................X.X.XXXX....XX.XXXXXXXXXXXXXX..        ",+"        .................XXX.XXXXX.X.XX.XXX.XX.XXXXXXX..        ",+"         ................XXXX.XXX..X..X.XX.XX.XXX.XXX..         ",+"         ................XXXXXXXX.XX.XX.X.XX.XXX.XXXX..         ",+"         .................XXXXXX.XX.XX.X..........XXX..         ",+"          ..oooooooooooooo.XXXXXXXXXX....XXXXXXXX..X..          ",+"          ..ooooooooooooooo.XXXXXXXX....XXXXXXXXXXXX..          ",+"           ..ooooooooooooooo........XXXXXXX.XX.XXXX..           ",+"           ..oooooooooooooooooo..XXXXX.XXX.XX.XX.XX..           ",+"            ..ooooooooooooooooo..XXXX.XXX.XX.XX.XX..            ",+"            ..ooooooooooooooooo..XXX.XX........XXX..            ",+"             ....................XXX....XXXXXX..X..             ",+"              ...................XX...XXXXXXXXXXX.              ",+"              ...................X...XXXXXXXXXXX..              ",+"               ..................X..XXXX.XXXXXX..               ",+"                .................XXX.XX.XX.XXX..                ",+"                 ................XX.XX.XX.XXX..                 ",+"                  ..ooooooooooo..XX.......XX..                  ",+"                   ..oooooooooo..X...XXXX.X..                   ",+"                    ..ooooooooo..X..XXXXXX..                    ",+"                     ...ooooooo..X..XXXX...                     ",+"                      ....ooooo..XXXXX....                      ",+"                        ....ooo..XXX....                        ",+"                          ....o..X....                          ",+"                            ........                            ",+"                              ....                              ",+"                                                                "};
+ c-examples/pixmaps/porsche1.xpm view
@@ -0,0 +1,76 @@+/* XPM */+static const char * porsche[] = {+/* width height ncolors chars_per_pixel */+"64 64 -4 1 ",+/* colormap */+"\+ \x50\x50\x80\+.\xff\xff\0\+r\xff\x00\0\+b\0\0\0",+/* pixels */+"        bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb        ",+"        bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb        ",+"        bb............................................bb        ",+"        bb.......................bbbbbbb.bb...........bb        ",+"        bb.......................bbbbbbb.bb...........bb        ",+"        bb......bbb...bb..bb.....bb......bb...........bb        ",+"        bb......bbb...bb..bb.....bb......bb...........bb        ",+"        bb.......bb.......bbbb...bbbbb...bb...........bb        ",+"        bb.......bb...bb..bbbbb..bbbbb...bb...........bb        ",+"        bb.......bb...bb..bb.bb..bb......bb...........bb        ",+"        bb......bbbb..bb..bbbbb..bb......bbbbbb.......bb        ",+"        bb......bbbb..bb..bbbb...bb......bbbbbb.......bb        ",+"        bb............................................bb        ",+"        bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb        ",+"        bb.....................bbbbbbbbbbbbbbbbbbbbbbbbb        ",+"        bb......b...b...bb.....bbbbbbbbbbbbbbbbbbbbbbbbb        ",+"        bb.....b...b...b....b..bbbbbbbbbbbbbbbbbbbbbbbbb        ",+"        bb....bb..bb.bbbbbbb...bbbbbbbbbbbbbbbbbbbbbbbbb        ",+"        bb...bbbbbbbb......bb..bbrrrrrrrrrrrrrrrrrrrrrbb        ",+"        bb..bbbb...............bbrrrrrrrrrrrrrrrrrrrrrbb        ",+"        bb.bbb.................bbrrrrrrrrrrrrrrrrrrrrrbb        ",+"        bb..........b..b.......bbrrrrrrrrrrrrrrrrrrrrrbb        ",+"        bb.....b...b..b........bbrrrrrrrrrrrrrrrrrrrrrbb        ",+"        bb....b...b..b..bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb        ",+"        bb....b.bbbbbbbbb..............bbbbbbbbbbbbbbbbb        ",+"        bb...bbbb.......bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb        ",+"        bb..bbb.........b..............bbbbbbbbbbbbbbbbb        ",+"        bb.bbb..........b...bbb........bbbbbbbbbbbbbbbbb        ",+"        bb.........b..b.b..bbbbb.......bbbbbbbbbbbbbbbbb        ",+"        bb.....b..b..b..b..b.bbb.....b.brrrrrrrrrrrrrrbb        ",+"        bb....b..b..b..bb....bbb....bb.brrrrrrrrrrrrrrbb        ",+"        bb...bb.bbbbbbb.b....bbb....bb.brrrrrrrrrrrrrrbb        ",+"        bb..bbbbb......bb...bbbbb...b..brrrrrrrrrrrrrrbb        ",+"        bb.bbb..........b.bbbbbbbbbbb..brrrrrrrrrrrrrrbb        ",+"        bb..............b.b.bbbbbbbbb..brrrrrrrrrrrrrrbb        ",+"        bbbbbbbbbbbbbbbbb.b.b....bbbb..bbbbbbbbbbbbbbbbb        ",+"        bbbbbbbbbbbbbbbbb...b.....b.b..b..............bb        ",+"        bbbbbbbbbbbbbbbbb........bb.bb.b...b..b.......bb        ",+"         bbbbbbbbbbbbbbbb........b..b..b..b..b...b...bb         ",+"         bbbbbbbbbbbbbbbb.......b..b...b.b..b...b....bb         ",+"         bbbbbbbbbbbbbbbbb............b.bbbbbbbbbb...bb         ",+"          bbrrrrrrrrrrrrrrb..........bbbb........bb.bb          ",+"          bbrrrrrrrrrrrrrrrb........bbbb............bb          ",+"           bbrrrrrrrrrrrrrrrbbbbbbbb.......b..b....bb           ",+"           bbrrrrrrrrrrrrrrrrrrbb.....b...b..b..b..bb           ",+"            bbrrrrrrrrrrrrrrrrrbb....b...b..b..b..bb            ",+"            bbrrrrrrrrrrrrrrrrrbb...bb.bbbbbbbb...bb            ",+"             bbbbbbbbbbbbbbbbbbbb...bbbb......bb.bb             ",+"              bbbbbbbbbbbbbbbbbbb..bbb...........b              ",+"              bbbbbbbbbbbbbbbbbbb.bbb...........bb              ",+"               bbbbbbbbbbbbbbbbbb..............bb               ",+"                bbbbbbbbbbbbbbbbb...b.b.b.....bb                ",+"                 bbbbbbbbbbbbbbbb..b.b.b..b..bb                 ",+"                  bbrrrrrrrrrrrbb..bbbbbbb..bb                  ",+"                   bbrrrrrrrrrrbb.bbb....b.bb                   ",+"                    bbrrrrrrrrrbb.bb......bb                    ",+"                     bbbrrrrrrrbb.......bbb                     ",+"                      bbbbrrrrrbb.....bbbb                      ",+"                        bbbbrrrbb...bbbb                        ",+"                          bbbbrbb.bbbb                          ",+"                            bbbbbbbb                            ",+"                              bbbb                              ",+"                               bb                               ",+"                                                                "+} ;
+ c-examples/pixmaps/red.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * red_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #2D0001",+"+	c #440000",+"@	c #850000",+"#	c #A20000",+"$	c #AC0001",+"%	c #B70000",+"&	c #C30000",+"*	c #D10000",+"=	c #AB1111",+"-	c #BF0C10",+";	c #DD0000",+">	c #CD191B",+",	c #BB2222",+"'	c #B53A39",+")	c #CF2F30",+"!	c #C33738",+"~	c #C34746",+"{	c #E14548",+"]	c #D44D4C",+"^	c #CC5554",+"/	c #E25858",+"(	c #DB6161",+"_	c #D16867",+":	c #E96A6B",+"<	c #E27373",+"[	c #DA7D7E",+"}	c #EE8283",+"|	c #DD8D8C",+"1	c #EF9191",+"2	c #F09D9B",+"3	c #E9A3A2",+"     +@#&%%%%%&&&&%%%&&&#@+     ",+"   .#*):1333333333333332(!$#.   ",+"  +&><22223333332333333333[,%+  ",+" .&)11111111122111233333333|)*. ",+" #>}}1}}}}1}}|111}}}||[||||||># ",+"+%/<<<}}:}<}}[<[}}}}}}[[[|||[(&+",+"@)_<<<:<::<<_<<<<:::<<<[[[[[[[)@",+"#)(((/(:::(_____<:::::(____[__!#",+"%{^](//^^(^^^_^^((///:/(^^_^__^&",+"%~]]]]]~~~^~^~^^~///{/]^^^~^_^^%",+"$!!!!!]'~'~~~~~~~{{{{{{{~]~~'^^#",+"%!){)!''''''!!!!!!!){){!!'~''''#",+"%,),,,!!,',!,)))))))))))!!!''''#",+"&>-,,====,=,,>>>>>>)>>>)),,,@''#",+"%>--=====-->>>>>>>>>>)->>-),,==%",+"&&&-$==#--&**&&&&&&&---%-------$",+"&**&&%$%&&*&&&&-&&>&%%-%&&%$$--%",+"%&*&&%%&&**&&-%%%&*&&%%&%&&%%%$$",+"%%&&&%&&***&%$%%%%&&%%%&&&&%%$$$",+"$%%%&&**;**&%$$$$$%%%%&***&&%$##",+"$%%&&**;****&$$###$%%$%&&***&%%$",+"%%&&**;;;;**%%#####$$%%%**&*&%$%",+"%&&&*;*;*;*&%%$####$#$%%&***&&%%",+"&%%&******&&%%%%$###$%%&&&&*&&&&",+"#&%&&&&&&&&&&&&&&%%%%&%&&&***&&$",+"@%%$&&$$$$%%&&&&&&&&%%&%%****;*@",+"+%%%%&$###$%&%&&&&&**%%&%&*;*;*+",+" @%$&%%###$$$%$%%&**&&&%**;**&# ",+" .&%%&&$#######%&&***%&&**;**&. ",+"  +&*&&%$##$##$%&&**&&%&*;*;*+  ",+"   .#&&%%%#$###%&&&&&&&&*;*#.   ",+"     +@#$$%%###$&&*&&&&&#@+     "};
+ c-examples/pixmaps/red_bomb.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * red_bomb_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #340001",+"+	c #3C0100",+"@	c #410003",+"#	c #440000",+"$	c #760000",+"%	c #4E1414",+"&	c #A60000",+"*	c #B70000",+"=	c #5F2928",+"-	c #C30000",+";	c #CE0000",+">	c #D90000",+",	c #BE1315",+"'	c #653A3B",+")	c #733C3C",+"!	c #B92223",+"~	c #D31A1D",+"{	c #744A49",+"]	c #AE3232",+"^	c #CD3B3B",+"/	c #875B5B",+"(	c #C04848",+"_	c #9A6E6E",+":	c #D35A5A",+"<	c #C57170",+"[	c #DF6D6D",+"}	c #D97D7D",+"|	c #ED8181",+"1	c #DD8D8C",+"2	c #EF9191",+"3	c #EAA2A1",+"     #$&-*****----***---&$#     ",+"   .&;~[2333333333333331[^*&.   ",+"  @*~|23233333333333333333}!*#  ",+" .-~222222222332223333333331^-. ",+" &,|||||||22||222|2|11}111112~& ",+"@-:|||||||[||}}|||||||}}1<11}:-#",+"$~[[[[[[[[[}_______<}|[}}<<}<},$",+"&^:[::[::[</_/______/<<[[[}<<|(&",+"-(:::^:^[{/////////////<:::::[(-",+",^^^:^:({{{{{{{{{{{//{/{(:::(::*",+"&^^^^^:){''{{{{{{{)))))/)((((((&",+"*^^^^^]'''''''''')'){)))'(]((](&",+"*,^~!!==''.'===='=)=)='=')!]]]]&",+"-~,,!!%%.==%=%==%=%=====%=^!]]]&",+"*~,,&!.%%.%%%%%%%%%%%%%%%%,,,,!*",+"---~&&...%+%@%@#%#%#%%%%%%,,&,,&",+"-;;;**%++%+###@@@@#@@@@###***&**",+"*-;--*.#####@+@#@#@#@@++#@*****&",+"**-*--######@+.@@@@#++@##@-**&*&",+"&**-*-$####++.++.+++@+###$--**&&",+"***-;;&######+.+...++++##&;;-**&",+"&*--;>>$####@+....+.+.++$;;;-*&*",+"**--;>>;####@@+.+...@..#&;;----*",+"***-;;;>*##+++@@.+++.@@&--;;;-*-",+"&-*-;;-*;*$+#@##+@.@+$&*--;;;;-&",+"$*******&*&&$###@@+$&****-;>>>>$",+"#*****&&&&&&***------*-*-;;>>>;#",+" &*****&&&&*&***---;;-*-;;>;;;& ",+" .*-*-*&&&&&&&&&-;;;--*-;>>>;-. ",+"  #*;--*&&&&&&&*--;;---->;>>;#  ",+"   .&--*&*&&&&&*-;------->>&.   ",+"     #$&***&&&&&--;-----*$@     "};
+ c-examples/pixmaps/srs.xbm view
@@ -0,0 +1,67 @@+#define sorceress_width 75+#define sorceress_height 75+static unsigned char sorceress_bits[] =+{+  0xfc, 0x7e, 0x40, 0x20, 0x90, 0x00, 0x07, 0x80, 0x23, 0x00, 0x00, 0xc6,+  0xc1, 0x41, 0x98, 0xb8, 0x01, 0x07, 0x66, 0x00, 0x15, 0x9f, 0x03, 0x47,+  0x8c, 0xc6, 0xdc, 0x7b, 0xcc, 0x00, 0xb0, 0x71, 0x0e, 0x4d, 0x06, 0x66,+  0x73, 0x8e, 0x8f, 0x01, 0x18, 0xc4, 0x39, 0x4b, 0x02, 0x23, 0x0c, 0x04,+  0x1e, 0x03, 0x0c, 0x08, 0xc7, 0xef, 0x08, 0x30, 0x06, 0x07, 0x1c, 0x02,+  0x06, 0x30, 0x18, 0xae, 0xc8, 0x98, 0x3f, 0x78, 0x20, 0x06, 0x02, 0x20,+  0x60, 0xa0, 0xc4, 0x1d, 0xc0, 0xff, 0x41, 0x04, 0xfa, 0x63, 0x80, 0xa1,+  0xa4, 0x3d, 0x00, 0x84, 0xbf, 0x04, 0x0f, 0x06, 0xfc, 0xa1, 0x34, 0x6b,+  0x01, 0x1c, 0xc9, 0x05, 0x06, 0xc7, 0x06, 0xbe, 0x11, 0x1e, 0x43, 0x30,+  0x91, 0x05, 0xc3, 0x61, 0x02, 0x30, 0x1b, 0x30, 0xcc, 0x20, 0x11, 0x00,+  0xc1, 0x3c, 0x03, 0x20, 0x0a, 0x00, 0xe8, 0x60, 0x21, 0x00, 0x61, 0x1b,+  0xc1, 0x63, 0x08, 0xf0, 0xc6, 0xc7, 0x21, 0x03, 0xf8, 0x08, 0xe1, 0xcf,+  0x0a, 0xfc, 0x4d, 0x99, 0x43, 0x07, 0x3c, 0x0c, 0xf1, 0x9f, 0x0b, 0xfc,+  0x5b, 0x81, 0x47, 0x02, 0x16, 0x04, 0x31, 0x1c, 0x0b, 0x1f, 0x17, 0x89,+  0x4d, 0x06, 0x1a, 0x04, 0x31, 0x38, 0x02, 0x07, 0x56, 0x89, 0x49, 0x04,+  0x0b, 0x04, 0xb1, 0x72, 0x82, 0xa1, 0x54, 0x9a, 0x49, 0x04, 0x1d, 0x66,+  0x50, 0xe7, 0xc2, 0xf0, 0x54, 0x9a, 0x58, 0x04, 0x0d, 0x62, 0xc1, 0x1f,+  0x44, 0xfc, 0x51, 0x90, 0x90, 0x04, 0x86, 0x63, 0xe0, 0x74, 0x04, 0xef,+  0x31, 0x1a, 0x91, 0x00, 0x02, 0xe2, 0xc1, 0xfd, 0x84, 0xf9, 0x30, 0x0a,+  0x91, 0x00, 0x82, 0xa9, 0xc0, 0xb9, 0x84, 0xf9, 0x31, 0x16, 0x81, 0x00,+  0x42, 0xa9, 0xdb, 0x7f, 0x0c, 0xff, 0x1c, 0x16, 0x11, 0x00, 0x02, 0x28,+  0x0b, 0x07, 0x08, 0x60, 0x1c, 0x02, 0x91, 0x00, 0x46, 0x29, 0x0e, 0x00,+  0x00, 0x00, 0x10, 0x16, 0x11, 0x02, 0x06, 0x29, 0x04, 0x00, 0x00, 0x00,+  0x10, 0x16, 0x91, 0x06, 0xa6, 0x2a, 0x04, 0x00, 0x00, 0x00, 0x18, 0x24,+  0x91, 0x04, 0x86, 0x2a, 0x04, 0x00, 0x00, 0x00, 0x18, 0x27, 0x93, 0x04,+  0x96, 0x4a, 0x04, 0x00, 0x00, 0x00, 0x04, 0x02, 0x91, 0x04, 0x86, 0x4a,+  0x0c, 0x00, 0x00, 0x00, 0x1e, 0x23, 0x93, 0x04, 0x56, 0x88, 0x08, 0x00,+  0x00, 0x00, 0x90, 0x21, 0x93, 0x04, 0x52, 0x0a, 0x09, 0x80, 0x01, 0x00,+  0xd0, 0x21, 0x95, 0x04, 0x57, 0x0a, 0x0f, 0x80, 0x27, 0x00, 0xd8, 0x20,+  0x9d, 0x04, 0x5d, 0x08, 0x1c, 0x80, 0x67, 0x00, 0xe4, 0x01, 0x85, 0x04,+  0x79, 0x8a, 0x3f, 0x00, 0x00, 0x00, 0xf4, 0x11, 0x85, 0x06, 0x39, 0x08,+  0x7d, 0x00, 0x00, 0x18, 0xb7, 0x10, 0x81, 0x03, 0x29, 0x12, 0xcb, 0x00,+  0x7e, 0x30, 0x28, 0x00, 0x85, 0x03, 0x29, 0x10, 0xbe, 0x81, 0xff, 0x27,+  0x0c, 0x10, 0x85, 0x03, 0x29, 0x32, 0xfa, 0xc1, 0xff, 0x27, 0x94, 0x11,+  0x85, 0x03, 0x28, 0x20, 0x6c, 0xe1, 0xff, 0x07, 0x0c, 0x01, 0x85, 0x01,+  0x28, 0x62, 0x5c, 0xe3, 0x8f, 0x03, 0x4e, 0x91, 0x80, 0x05, 0x39, 0x40,+  0xf4, 0xc2, 0xff, 0x00, 0x9f, 0x91, 0x84, 0x05, 0x31, 0xc6, 0xe8, 0x07,+  0x7f, 0x80, 0xcd, 0x00, 0xc4, 0x04, 0x31, 0x06, 0xc9, 0x0e, 0x00, 0xc0,+  0x48, 0x88, 0xe0, 0x04, 0x79, 0x04, 0xdb, 0x12, 0x00, 0x30, 0x0c, 0xc8,+  0xe4, 0x04, 0x6d, 0x06, 0xb6, 0x23, 0x00, 0x18, 0x1c, 0xc0, 0x84, 0x04,+  0x25, 0x0c, 0xff, 0xc2, 0x00, 0x4e, 0x06, 0xb0, 0x80, 0x04, 0x3f, 0x8a,+  0xb3, 0x83, 0xff, 0xc3, 0x03, 0x91, 0x84, 0x04, 0x2e, 0xd8, 0x0f, 0x3f,+  0x00, 0x00, 0x5f, 0x83, 0x84, 0x04, 0x2a, 0x70, 0xfd, 0x7f, 0x00, 0x00,+  0xc8, 0xc0, 0x84, 0x04, 0x4b, 0xe2, 0x2f, 0x01, 0x00, 0x08, 0x58, 0x60,+  0x80, 0x04, 0x5b, 0x82, 0xff, 0x01, 0x00, 0x08, 0xd0, 0xa0, 0x84, 0x04,+  0x72, 0x80, 0xe5, 0x00, 0x00, 0x08, 0xd2, 0x20, 0x44, 0x04, 0xca, 0x02,+  0xff, 0x00, 0x00, 0x08, 0xde, 0xa0, 0x44, 0x04, 0x82, 0x02, 0x6d, 0x00,+  0x00, 0x08, 0xf6, 0xb0, 0x40, 0x02, 0x82, 0x07, 0x3f, 0x00, 0x00, 0x08,+  0x44, 0x58, 0x44, 0x02, 0x93, 0x3f, 0x1f, 0x00, 0x00, 0x30, 0x88, 0x4f,+  0x44, 0x03, 0x83, 0x23, 0x3e, 0x00, 0x00, 0x00, 0x18, 0x60, 0xe0, 0x07,+  0xe3, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x70, 0x70, 0xe4, 0x07, 0xc7, 0x1b,+  0xfe, 0x01, 0x00, 0x00, 0xe0, 0x3c, 0xe4, 0x07, 0xc7, 0xe3, 0xfe, 0x1f,+  0x00, 0x00, 0xff, 0x1f, 0xfc, 0x07, 0xc7, 0x03, 0xf8, 0x33, 0x00, 0xc0,+  0xf0, 0x07, 0xff, 0x07, 0x87, 0x02, 0xfc, 0x43, 0x00, 0x60, 0xf0, 0xff,+  0xff, 0x07, 0x8f, 0x06, 0xbe, 0x87, 0x00, 0x30, 0xf8, 0xff, 0xff, 0x07,+  0x8f, 0x14, 0x9c, 0x8f, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x07, 0x9f, 0x8d,+  0x8a, 0x0f, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x07, 0xbf, 0x0b, 0x80, 0x1f,+  0x00, 0x00, 0xff, 0xff, 0xff, 0x07, 0x7f, 0x3a, 0x80, 0x3f, 0x00, 0x80,+  0xff, 0xff, 0xff, 0x07, 0xff, 0x20, 0xc0, 0x3f, 0x00, 0x80, 0xff, 0xff,+  0xff, 0x07, 0xff, 0x01, 0xe0, 0x7f, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x07,+  0xff, 0x0f, 0xf8, 0xff, 0x40, 0xe0, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff,+  0xff, 0xff, 0x40, 0xf0, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff,+  0x41, 0xf0, 0xff, 0xff, 0xff, 0x07};
+ c-examples/pixmaps/sudoku.xbm view
@@ -0,0 +1,14 @@+#define sudoku_width 32+#define sudoku_height 32+static unsigned char sudoku_bits[] = {+   0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, 0x0c, 0x30, 0xc0,+   0x63, 0xcc, 0x33, 0xcf, 0x63, 0x4c, 0x33, 0xcc, 0x63, 0x4c, 0x33, 0xcc,+   0x63, 0xcc, 0x33, 0xcc, 0x63, 0x0c, 0x33, 0xcc, 0x63, 0x0c, 0x33, 0xcc,+   0x03, 0x0c, 0x30, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,+   0x03, 0x0c, 0x30, 0xc0, 0xd3, 0xcc, 0x33, 0xcf, 0xd3, 0xcc, 0x30, 0xcc,+   0xd3, 0xcc, 0x33, 0xce, 0xf3, 0xcc, 0x32, 0xce, 0xc3, 0xcc, 0x32, 0xcc,+   0xc3, 0xcc, 0x33, 0xcf, 0x03, 0x0c, 0x30, 0xc0, 0xff, 0xff, 0xff, 0xff,+   0xff, 0xff, 0xff, 0xff, 0x03, 0x0c, 0x30, 0xc0, 0xf3, 0xcc, 0x33, 0xcf,+   0x83, 0x4c, 0x33, 0xc1, 0xf3, 0xcc, 0x33, 0xcf, 0x33, 0x4c, 0x33, 0xcc,+   0x33, 0x4c, 0x33, 0xcc, 0xf3, 0xcc, 0x33, 0xcf, 0x03, 0x0c, 0x30, 0xc0,+   0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
+ c-examples/pixmaps/tile.xpm view
@@ -0,0 +1,120 @@+/* XPM */+static const char * tile_xpm[] = {+"100 100 17 1",+" 	c None",+".	c #DCDCDC",+"+	c #D9D9D9",+"@	c #E4E4E4",+"#	c #DFDFDF",+"$	c #CECECE",+"%	c #D2D2D2",+"&	c #C8C8C8",+"*	c #CACACA",+"=	c #C4C4C4",+"-	c #BEBEBE",+";	c #D4D4D4",+">	c #E8E8E8",+",	c #D6D6D6",+"'	c #C6C6C6",+")	c #B2B2B2",+"!	c #E2E2E2",+".+@.##$%%$$$&*=..%$*%-;*>,%$%#>,$,%%*%*.#*%++$;+,,.&&=-%%+.$,#,=;%#,@.+,%>,+=-++@@#%$.++#,--;.=*+,,>",+"%%.&$@.#,*%*&'%%&$;,*%%,&%;%,#..;$$%';+.+,++.%.;+@@@$'.;'..;@.+$%)&!!,.!>+%@%-*%@>#.+&&+.+$%,++$$#++",+",.$&$+#+.%++$%,=$;$&'+.%%&-+++;%;;$%+%+;.#.+@!!..>#+$%;,$.+@,+.%-%%-%>#+.#+$%...%,!>>;$$$.%$+#+*++&*",+",$;;;..-*!;*.+%=*%;*%%=&$+$++,-%;+++++++++++#@@@>@#,++;$%;++#.+++%&*=#.+;%>@+,...++$>@#&%*%;.$=$##=;",+"%#$,+$$%,.++.%%,'*%;,$=-$+@,%*$+%.#+%,.++%;.,#@@@>#+*,$%;,++..@#.,+@+.#.+%#+!.,%#>%,,+>#.%$!#%=%$$#+",+"+*'%$)&,+,+,+*%,,$,+,*-&++$%%*%#@#%$;+.%,!.+;+!@+>..,%$,$;..#,@.$;%.##.#!#;;++#.+%!.,%,.@##>%,>%$,+,",+",,$$$%%%';+$%,$!,$,;;,..,&)%%+#!+..,++%%++#+#@+,##,;,%.%.+++.#;%+.,+#.,#+;#%.@,+#.+,#!,+.>#..,,++++.",+";=-;##%=$%,.$%%+;%%%$+.%&%%%,.,%++..+++;%;;.+#.+%..%;+,#+$%.;,....+.++.+,$$.#>.$+@&+#;.@@.%!@.#+@!,%",+"-$$&+%.,#;;&$$,*$+%%.#*='$,,+.;,+,##...$%++%.,++%,..+;%,%,,%+,.,##.+%%+@,'%#.++,,,%++.>++.>#+#>>.%,%",+",!.;$$$#.;%'-'&*+++.$=*%;,++;;;.+;++,+++@@%++++..$..+%+&$.+*;,++.+;+*%+#+++...+;.%+##@.%@>#.!>#&%+=$",+"...#%%,,;=-%$=%%@+.;==;=+#+%+*$#.%+%+@.++!,%,;;%..,,*,+'+,;;#.$%#%+%,.%&+#.$+@!%;,+##++#@!!#@@&%@..+",+"+$=%%$#,$--$=$%+#,=%%,%;$;%.+.,,+!++#..++%;.%%$..,#;.+$#%$$#;.%;+..+,.%,%+,..@++..*+#,+.#>@#.+++!.+.",+"..+'=;%$,+,%$*&%&=-;+#+%==..;,#,#.###@+$%,,$$;+@#.,;.*;.+&.#%*.>.,.#$'+.%%,,%##++;+,#*.@>#%%#@+%$@@.",+"..;+.$%=$,##,,'=&$$%%++$$%,,;$;.,##.+#;++;#+;+.>..#$$%,%;,%+=$+#.!...+%,%++%;&+#$%.%#@,;+#.,#,+.+%;,",+"%;+@++*$%%$+@,*&$$*&;%%.#,.$$,++#@@#.,+%.;%#+!#.,!#..'%;%+;%*%;+,!@..#,;.%%,+&,*$.,%@>!+;,###&;;#.;%",+"$$;+.,.;%=$$$,+%+$,&$%,,.+=$%.,;##!#.#$%.+%,+.@.,#%*#%$$;+*.+,$%%@.+@..+,$%++$&%#+,.#,#@#.&$$++,+.,,",+",%+.+$.;&;%+,$,+,+%%**$+*$+,%+%,$%.%;@+%##;;;;#+##%*$%'*&++.;.+;.#+;#>++,+*%%%++,,.#;=@@.+,;$&;%;%$-",+"%'.+,'*;;;#+;&$#$$,%*,$=%,+,,%%$%%%+%!@++#;++&+.,.;,&$-%,;,++%..#+;++$+#,++,=%%+++!#++..+;;,%,%=&+..",+"%,;+%&$$+#%%++%;$&&%%%'%,,+++%,%;*.+%%>..+,+##+%+;=.&&,%$#.%;%!@,+,%,,+++.+.*%%;$.%+#!+&,;,;+,%+$=,$",+"%#.&%,-;+$+.,++$*$%&=$,,;#,.,&;&.,+%++;%.+%,+!#.;%%&*,,%.$,;&#!.%%%%++,.%,;+,%.#.$;++;%;++#,$=.++,$=",+";%;%$,$%=%#.@,,$*%*=%;%%+%$.%&'+%$#.=,++&;$>#*..+,%+$+;,,#.;.@,%.+,+;,#++,$$+++.++,+#%%$%##.,++*$+;.",+"$+%$;.,*$#+%.!..,%=*$&$;;%$%$+,$$%%%'++,+,.@#+.,$.,!;#;$,#,#++,%.%.,.+;.$%.,++%%$+,#%,+,$,.%.%$+.$,;",+"-%@#..%$+;%+;,%.+,$$'$*+%%;,%$$%%+;;,&'%#.##...$#.!$'#>+&,+#,+$*+.;+#,%%;,.!+,+$$%+.+++*+..+,+%,#+.=",+";%;###+@!;+$$;,$.+.%$$%.%.$*%&&,.,,;+;$&$+.+..$+#+$%.!.%$%%+#*;;&,#++%,,+,;#++$$%++,%,%%++!.+@.;*#,*",+"*%%+@%+#,...,$;,'$++,;#&,,&'=&'*+++.%$-=$$%!..#,%%++>+=#%;+,++,++.%..+$;.+,+$%%+,.;&,#+,*.++##@;%,%-",+"%$%#,.++$+#+%%+$'%&.,;#+$&$&&%-;,$.!+=*&=*.#;#.,%,@@$;#.*%..,+,#@..+,$%@,,.&%$;,%%$%,+%+%+&,@.##.+**",+"%*..+%.;+#,+.$$,;*$$%+;+%%$,%'%;%*%.;%+$=,%*$++,+>+'..,$%;!%$##@+#..$%.%;,,%$%%;==..$%%,+,++$;@.&+>#",+"%@@%'+$+.%.#.=&,%%%$';%&%$+.%&.%**+=$+#%.%%';%*$>.&=..%$$*...+,.;.#%.#+.@$%%.,$-&,,,%;*#%;#$,+;#+#@.",+"!@.;=,.;$@.;+.$''%%=.;=;+%*,..;=&%=$+,&,+%,+;%$;,.&!.+%$+#,+,#.;.,%,.,.>!$$;;%;%,,$*%;%+#;;+#%#>!+,.",+"##+-..+,+...+%+;$&&,*&,%,;%%%*+,%*,%%%%=-.+;##%,$$,!+!+%!,%%+#,%+;+.+;.%%;$$=+%+;,;'$,;++++..>>#%%##",+"#+%@@;++.++%,;+.%*%-$%%;%.@%*$%.,+;%++'%&;&.>%@++%$%.,%+%$###.+*+#.,%++'#%$%&$%*%$;%+.+,##++!.+#!!.%",+".-%##!@.%%$%;..;,+%$&%&%++.;+,+%%+;%;.++#$$@;#$.#%.=*$#,*+%$%+..+;;%++;;+!;$'%+'=%;;.##+.++.#+#.#.,.",+"#@!#+#@.%+%$,++,,;;,+%*&%;+%%$=#+&$+**+#,+@..#.'$,#;,*,+!%%,%.#;%$%$&;,%%,.$%.%-$;;!@$%%..+.##!+,$.$",+"..@>#@++;+;%%++..%;+!+%$;.;+'-%$+%,,=%.$+!+#@+%$>*-,%+..$=%%#.-=*%++$;%&%%&$.;%'%%.+%;.&,+#!!#+*;$*&",+">@%+.;%%#+$+*$++$;*.+%%%+,+%*&$&,+;',@=%+$#.%*..&''&.+#.;$&$;%&&.$=&$,$%=*+.&&,.+.+;,.;;%.#.++,+''&.",+"!+..$&+%$;.,++%,%%%,#,+.%+%$&,$*.+&.+$+%$.@&&+#%-=,,#;%%.#.$&%&+.%=','*$++.%%%.+.+%;++%,,#+,*.;%..@@",+"$;+%,.&=-;++@..$$,%+!!%%.%$;$;;==%#.$$$$##;++#+$=$...;%*+%+.,%%$&$*%$==,#$&$$+,++,%;%++;%+%-$++.+!@%",+".%;++.-*$%%;+.+$+;..++...,;*+%;%%.!$;+,++%+.+%;.;,,.;+%$,&&.#%&'-&%,=-,+%&&,+#+;;+,.+#+++,'%.;.##+$#",+"...#%%%*=%+$+,+....+,+.;!++;$$%,.+,+$,++#+#>+.$++.$#++$%%$%+*&+,%=%==+%'=%%+.,.&%%+%#.%%,%%%.;++%%;&",+"%+.+%+*+&;$%$$.+.!#;#+%=&#@,;$..%#;++=$,.#!#+..+#,,%$&&+;;,,$-+#;+-=$$&$%++,,$$%%+%.%$,*$%%+$%;=$,*%",+".%;!.$$%#,+=$$%,!#@#;;+.%*=+#.,,.+%+.$+++%%,%.#>.;+$;$&++%'$,++.+%+,,=$'+++,*%,;+*;,%$,%+&*%++&-;%$$",+"%++;+.%+$$%%$$%,+#.%.@.%;$++*>#+,;.&$@.!#='&@+@@..*$,%%+%$%$%#;+,;#%%$;+,+%$%$%++&%&;;%;$&$*&;;%;,$%",+"%+=$#+,%&''++,.+$#.!+%%+;*%.!++*%+.',.%;!;.#.;#@+%%$;..%-%%*,;+,,%$$$.!+'$%%%$;+%%+.+++*+;$%;%,%;,;$",+"*$$,,;;$$$$++#.$+%.@%;..%+.;#+&,.+*.;..$&,!.;+;..*%;,%%+%*'*&%!.'*$%$$'..++%,;$%%++;&+,%%%$%,,..++&&",+"'&$,,+*%+%%..+;#.+#$%+.+.,+;%$.%+*$++,.%++#@#$'$.!%%;$-%%+$$-%+$,.+;&)'%;.!#,%%%++,%$%';,$%%.+%,#+&+",+"'%,%*$%%%,,..;;..,+.+,%+,+,,*,#+&%%#.#.!.;@!%%...%.&=$+&&%,%#%*,;*;*=&'$;+.##,,+.$+,*-'%%+,;.;$'%%,,",+".+,$--&$,+$&..#+%,%,$!+%++,+.%+%%$+%!#!##+++*$,@!#%-$+'%.$-+%%%&%$-**=&$%%.;%+#.;$%.$;+%,%,;;%;*$%;=",+",;&===*;%*,=,#+##%).*%>#%+$#,*=.+%$+.$#.$+@%;*%+#..#+=+@#&$-*,..'-*;-$$;$=';,++#@%%$+@+%%%$$,+&&+;$#",+";'=$+$;;)%=,%+..%+#,,%&$+#,.;$$.,+#;#+,$%##;;;%&+;#$&+.$;%%-&;.;&;-;$$=$*-$,.,;;.#!.,.,$%,,,%&*;%;..",+"*)=)&%.#'-&,+%%#;;+>.$,+.*%#+!,,&,@;,,,.@=%&';,+.,;+.>.;&%=+*,+&,%;*;%%'-$++%.%,.%%+&$;%%,%.%=.=*%%*",+".&&=-%%+.$,#,=;%#,@.+,%>,+=-++@@#%$.++#,--;.=*+,,>.+@.##$%%$$$&*=..%$*%-;*>,%$%#>,$,%%*%*.#*%++$;+,,",+"@@$'.;'..;@.+$%)&!!,.!>+%@%-*%@>#.+&&+.+$%,++$$#++%%.&$@.#,*%*&'%%&$;,*%%,&%;%,#..;$$%';+.+,++.%.;+@",+"#+$%;,$.+@,+.%-%%-%>#+.#+$%...%,!>>;$$$.%$+#+*++&*,.$&$+#+.%++$%,=$;$&'+.%%&-+++;%;;$%+%+;.#.+@!!..>",+"#,++;$%;++#.+++%&*=#.+;%>@+,...++$>@#&%*%;.$=$##=;,$;;;..-*!;*.+%=*%;*%%=&$+$++,-%;+++++++++++#@@@>@",+"#+*,$%;,++..@#.,+@+.#.+%#+!.,%#>%,,+>#.%$!#%=%$$#+%#$,+$$%,.++.%%,'*%;,$=-$+@,%*$+%.#+%,.++%;.,#@@@>",+"..,%$,$;..#,@.$;%.##.#!#;;++#.+%!.,%,.@##>%,>%$,+,+*'%$)&,+,+,+*%,,$,+,*-&++$%%*%#@#%$;+.%,!.+;+!@+>",+",;,%.%.+++.#;%+.,+#.,#+;#%.@,+#.+,#!,+.>#..,,++++.,,$$$%%%';+$%,$!,$,;;,..,&)%%+#!+..,++%%++#+#@+,##",+".%;+,#+$%.;,....+.++.+,$$.#>.$+@&+#;.@@.%!@.#+@!,%;=-;##%=$%,.$%%+;%%%$+.%&%%%,.,%++..+++;%;;.+#.+%.",+"..+;%,%,,%+,.,##.+%%+@,'%#.++,,,%++.>++.>#+#>>.%,%-$$&+%.,#;;&$$,*$+%%.#*='$,,+.;,+,##...$%++%.,++%,",+"..+%+&$.+*;,++.+;+*%+#+++...+;.%+##@.%@>#.!>#&%+=$,!.;$$$#.;%'-'&*+++.$=*%;,++;;;.+;++,+++@@%++++..$",+",,*,+'+,;;#.$%#%+%,.%&+#.$+@!%;,+##++#@!!#@@&%@..+...#%%,,;=-%$=%%@+.;==;=+#+%+*$#.%+%+@.++!,%,;;%..",+"#;.+$#%$$#;.%;+..+,.%,%+,..@++..*+#,+.#>@#.+++!.+.+$=%%$#,$--$=$%+#,=%%,%;$;%.+.,,+!++#..++%;.%%$..,",+",;.*;.+&.#%*.>.,.#$'+.%%,,%##++;+,#*.@>#%%#@+%$@@...+'=;%$,+,%$*&%&=-;+#+%==..;,#,#.###@+$%,,$$;+@#.",+"#$$%,%;,%+=$+#.!...+%,%++%;&+#$%.%#@,;+#.,#,+.+%;,..;+.$%=$,##,,'=&$$%%++$$%,,;$;.,##.+#;++;#+;+.>..",+"#..'%;%+;%*%;+,!@..#,;.%%,+&,*$.,%@>!+;,###&;;#.;%%;+@++*$%%$+@,*&$$*&;%%.#,.$$,++#@@#.,+%.;%#+!#.,!",+"%*#%$$;+*.+,$%%@.+@..+,$%++$&%#+,.#,#@#.&$$++,+.,,$$;+.,.;%=$$$,+%+$,&$%,,.+=$%.,;##!#.#$%.+%,+.@.,#",+"%*$%'*&++.;.+;.#+;#>++,+*%%%++,,.#;=@@.+,;$&;%;%$-,%+.+$.;&;%+,$,+,+%%**$+*$+,%+%,$%.%;@+%##;;;;#+##",+";,&$-%,;,++%..#+;++$+#,++,=%%+++!#++..+;;,%,%=&+..%'.+,'*;;;#+;&$#$$,%*,$=%,+,,%%$%%%+%!@++#;++&+.,.",+"=.&&,%$#.%;%!@,+,%,,+++.+.*%%;$.%+#!+&,;,;+,%+$=,$%,;+%&$$+#%%++%;$&&%%%'%,,+++%,%;*.+%%>..+,+##+%+;",+"%&*,,%.$,;&#!.%%%%++,.%,;+,%.#.$;++;%;++#,$=.++,$=%#.&%,-;+$+.,++$*$%&=$,,;#,.,&;&.,+%++;%.+%,+!#.;%",+"%+$+;,,#.;.@,%.+,+;,#++,$$+++.++,+#%%$%##.,++*$+;.;%;%$,$%=%#.@,,$*%*=%;%%+%$.%&'+%$#.=,++&;$>#*..+,",+",!;#;$,#,#++,%.%.,.+;.$%.,++%%$+,#%,+,$,.%.%$+.$,;$+%$;.,*$#+%.!..,%=*$&$;;%$%$+,$$%%%'++,+,.@#+.,$.",+"!$'#>+&,+#,+$*+.;+#,%%;,.!+,+$$%+.+++*+..+,+%,#+.=-%@#..%$+;%+;,%.+,$$'$*+%%;,%$$%%+;;,&'%#.##...$#.",+"$%.!.%$%%+#*;;&,#++%,,+,;#++$$%++,%,%%++!.+@.;*#,*;%;###+@!;+$$;,$.+.%$$%.%.$*%&&,.,,;+;$&$+.+..$+#+",+"++>+=#%;+,++,++.%..+$;.+,+$%%+,.;&,#+,*.++##@;%,%-*%%+@%+#,...,$;,'$++,;#&,,&'=&'*+++.%$-=$$%!..#,%%",+"@@$;#.*%..,+,#@..+,$%@,,.&%$;,%%$%,+%+%+&,@.##.+**%$%#,.++$+#+%%+$'%&.,;#+$&$&&%-;,$.!+=*&=*.#;#.,%,",+"+'..,$%;!%$##@+#..$%.%;,,%$%%;==..$%%,+,++$;@.&+>#%*..+%.;+#,+.$$,;*$$%+;+%%$,%'%;%*%.;%+$=,%*$++,+>",+"&=..%$$*...+,.;.#%.#+.@$%%.,$-&,,,%;*#%;#$,+;#+#@.%@@%'+$+.%.#.=&,%%%$';%&%$+.%&.%**+=$+#%.%%';%*$>.",+"&!.+%$+#,+,#.;.,%,.,.>!$$;;%;%,,$*%;%+#;;+#%#>!+,.!@.;=,.;$@.;+.$''%%=.;=;+%*,..;=&%=$+,&,+%,+;%$;,.",+",!+!+%!,%%+#,%+;+.+;.%%;$$=+%+;,;'$,;++++..>>#%%####+-..+,+...+%+;$&&,*&,%,;%%%*+,%*,%%%%=-.+;##%,$$",+"$%.,%+%$###.+*+#.,%++'#%$%&$%*%$;%+.+,##++!.+#!!.%#+%@@;++.++%,;+.%*%-$%%;%.@%*$%.,+;%++'%&;&.>%@++%",+".=*$#,*+%$%+..+;;%++;;+!;$'%+'=%;;.##+.++.#+#.#.,..-%##!@.%%$%;..;,+%$&%&%++.;+,+%%+;%;.++#$$@;#$.#%",+"#;,*,+!%%,%.#;%$%$&;,%%,.$%.%-$;;!@$%%..+.##!+,$.$#@!#+#@.%+%$,++,,;;,+%*&%;+%%$=#+&$+**+#,+@..#.'$,",+"-,%+..$=%%#.-=*%++$;%&%%&$.;%'%%.+%;.&,+#!!#+*;$*&..@>#@++;+;%%++..%;+!+%$;.;+'-%$+%,,=%.$+!+#@+%$>*",+"'&.+#.;$&$;%&&.$=&$,$%=*+.&&,.+.+;,.;;%.#.++,+''&.>@%+.;%%#+$+*$++$;*.+%%%+,+%*&$&,+;',@=%+$#.%*..&'",+",,#;%%.#.$&%&+.%=','*$++.%%%.+.+%;++%,,#+,*.;%..@@!+..$&+%$;.,++%,%%%,#,+.%+%$&,$*.+&.+$+%$.@&&+#%-=",+"...;%*+%+.,%%$&$*%$==,#$&$$+,++,%;%++;%+%-$++.+!@%$;+%,.&=-;++@..$$,%+!!%%.%$;$;;==%#.$$$$##;++#+$=$",+",.;+%$,&&.#%&'-&%,=-,+%&&,+#+;;+,.+#+++,'%.;.##+$#.%;++.-*$%%;+.+$+;..++...,;*+%;%%.!$;+,++%+.+%;.;,",+"$#++$%%$%+*&+,%=%==+%'=%%+.,.&%%+%#.%%,%%%.;++%%;&...#%%%*=%+$+,+....+,+.;!++;$$%,.+,+$,++#+#>+.$++.",+",%$&&+;;,,$-+#;+-=$$&$%++,,$$%%+%.%$,*$%%+$%;=$,*%%+.+%+*+&;$%$$.+.!#;#+%=&#@,;$..%#;++=$,.#!#+..+#,",+"+$;$&++%'$,++.+%+,,=$'+++,*%,;+*;,%$,%+&*%++&-;%$$.%;!.$$%#,+=$$%,!#@#;;+.%*=+#.,,.+%+.$+++%%,%.#>.;",+"*$,%%+%$%$%#;+,;#%%$;+,+%$%$%++&%&;;%;$&$*&;;%;,$%%++;+.%+$$%%$$%,+#.%.@.%;$++*>#+,;.&$@.!#='&@+@@..",+"%$;..%-%%*,;+,,%$$$.!+'$%%%$;+%%+.+++*+;$%;%,%;,;$%+=$#+,%&''++,.+$#.!+%%+;*%.!++*%+.',.%;!;.#.;#@+%",+"%;,%%+%*'*&%!.'*$%$$'..++%,;$%%++;&+,%%%$%,,..++&&*$$,,;;$$$$++#.$+%.@%;..%+.;#+&,.+*.;..$&,!.;+;..*",+"%%;$-%%+$$-%+$,.+;&)'%;.!#,%%%++,%$%';,$%%.+%,#+&+'&$,,+*%+%%..+;#.+#$%+.+.,+;%$.%+*$++,.%++#@#$'$.!",+".&=$+&&%,%#%*,;*;*=&'$;+.##,,+.$+,*-'%%+,;.;$'%%,,'%,%*$%%%,,..;;..,+.+,%+,+,,*,#+&%%#.#.!.;@!%%...%",+"%-$+'%.$-+%%%&%$-**=&$%%.;%+#.;$%.$;+%,%,;;%;*$%;=.+,$--&$,+$&..#+%,%,$!+%++,+.%+%%$+%!#!##+++*$,@!#",+".#+=+@#&$-*,..'-*;-$$;$=';,++#@%%$+@+%%%$$,+&&+;$#,;&===*;%*,=,#+##%).*%>#%+$#,*=.+%$+.$#.$+@%;*%+#.",+"#$&+.$;%%-&;.;&;-;$$=$*-$,.,;;.#!.,.,$%,,,%&*;%;..;'=$+$;;)%=,%+..%+#,,%&$+#,.;$$.,+#;#+,$%##;;;%&+;",+";+.>.;&%=+*,+&,%;*;%%'-$++%.%,.%%+&$;%%,%.%=.=*%%**)=)&%.#'-&,+%%#;;+>.$,+.*%#+!,,&,@;,,,.@=%&';,+.,"};
+ c-examples/pixmaps/white_1.xbm view
@@ -0,0 +1,60 @@+#define white_1_width 56+#define white_1_height 56+static unsigned char white_1_bits[] = {+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x01, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x02, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x01, +0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x01, +0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, +0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x02, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x02, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x02, +0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x05, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x02, +0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x05, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, +0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, +0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, +0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x55, 0x01, +0x80, 0x00, 0x00, 0x00, 0x80, 0xaa, 0x00, +0x00, 0x01, 0x00, 0x00, 0x40, 0x55, 0x00, +0x00, 0x02, 0x00, 0x00, 0xa8, 0x2a, 0x00, +0x00, 0x14, 0x00, 0x00, 0x54, 0x15, 0x00, +0x00, 0x28, 0x00, 0x80, 0xaa, 0x0a, 0x00, +0x00, 0x50, 0x05, 0x54, 0x55, 0x05, 0x00, +0x00, 0xa0, 0xaa, 0xaa, 0xaa, 0x02, 0x00, +0x00, 0x40, 0x55, 0x55, 0x55, 0x01, 0x00, +0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, +0x00, 0x00, 0x50, 0x55, 0x15, 0x00, 0x00, +0x00, 0x00, 0x80, 0xaa, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/white_2.xbm view
@@ -0,0 +1,60 @@+#define white_2_width 56+#define white_2_height 56+static unsigned char white_2_bits[] = {+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, +0x00, 0x40, 0x00, 0x40, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x20, 0x01, 0x00, 0x00, +0x00, 0x00, 0x04, 0x90, 0x04, 0x00, 0x00, +0x00, 0x20, 0x01, 0x40, 0x12, 0x00, 0x00, +0x00, 0x48, 0xfc, 0x0f, 0x09, 0x00, 0x00, +0x00, 0x10, 0x07, 0x30, 0x04, 0x00, 0x00, +0x40, 0xc2, 0x00, 0xc0, 0x10, 0x00, 0x00, +0x80, 0x24, 0x00, 0x00, 0x09, 0x00, 0x00, +0x20, 0x11, 0x00, 0x00, 0x42, 0x00, 0x00, +0x40, 0x08, 0x00, 0x00, 0x20, 0x00, 0x00, +0x90, 0x04, 0x00, 0x00, 0x80, 0x00, 0x00, +0x20, 0x02, 0x00, 0x00, 0x40, 0x04, 0x00, +0x48, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, +0x10, 0x01, 0x00, 0x00, 0x80, 0x08, 0x00, +0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, +0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, +0x80, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, +0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x80, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, +0x84, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, +0xa0, 0x00, 0x00, 0xa0, 0x02, 0x00, 0x00, +0x00, 0x01, 0x00, 0x54, 0x01, 0x01, 0x00, +0x44, 0x01, 0x00, 0xaa, 0x00, 0x02, 0x00, +0x00, 0x02, 0x40, 0x55, 0x80, 0x04, 0x00, +0x88, 0x02, 0xa0, 0x0a, 0x00, 0x01, 0x00, +0x40, 0x04, 0x50, 0x05, 0x40, 0x02, 0x00, +0x00, 0x09, 0xa0, 0x00, 0x80, 0x00, 0x00, +0x80, 0x00, 0x50, 0x00, 0x20, 0x01, 0x00, +0x00, 0x04, 0x08, 0x00, 0x48, 0x00, 0x00, +0x00, 0x02, 0x00, 0x00, 0x90, 0x00, 0x00, +0x00, 0x08, 0x00, 0x00, 0x02, 0x00, 0x00, +0x00, 0x24, 0x00, 0x80, 0x04, 0x00, 0x00, +0x00, 0x92, 0x00, 0x20, 0x01, 0x00, 0x00, +0x00, 0x48, 0x02, 0x08, 0x00, 0x00, 0x00, +0x00, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, +0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/white_3.xbm view
@@ -0,0 +1,60 @@+#define white_3_width 56+#define white_3_height 56+static unsigned char white_3_bits[] = {+0x00, 0x00, 0x0c, 0x0c, 0x00, 0x00, 0x00, +0x00, 0x40, 0x40, 0x81, 0x00, 0x00, 0x00, +0x00, 0x18, 0x40, 0x09, 0x00, 0x00, 0x00, +0x00, 0x06, 0x52, 0x09, 0x00, 0x00, 0x00, +0x00, 0x91, 0x52, 0x05, 0x00, 0x00, 0x00, +0x80, 0x94, 0x50, 0x05, 0x00, 0x00, 0x00, +0x40, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, +0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, +0x10, 0x01, 0x50, 0x05, 0x60, 0x00, 0x00, +0x08, 0x00, 0xaa, 0x2a, 0x00, 0x00, 0x00, +0x08, 0x40, 0x55, 0x55, 0x80, 0x01, 0x00, +0x04, 0xa0, 0xaa, 0xa0, 0x00, 0x00, 0x00, +0x04, 0x50, 0x55, 0x55, 0x05, 0x03, 0x00, +0x02, 0xa8, 0x0a, 0xa0, 0x0a, 0x00, 0x00, +0x02, 0x54, 0x55, 0x55, 0x15, 0x00, 0x00, +0x00, 0xa8, 0x00, 0x80, 0x1a, 0x03, 0x00, +0x00, 0x54, 0x55, 0x55, 0x35, 0x00, 0x00, +0x00, 0x0a, 0x00, 0x80, 0x2a, 0x06, 0x00, +0x0d, 0x45, 0x55, 0x55, 0x55, 0x00, 0x00, +0x31, 0x0a, 0x00, 0x00, 0x6a, 0x00, 0x00, +0x00, 0x05, 0x55, 0x55, 0x55, 0x07, 0x00, +0x3e, 0x02, 0x00, 0x00, 0x6a, 0x00, 0x00, +0x00, 0x05, 0x55, 0x55, 0x55, 0x1f, 0x00, +0x3e, 0x0a, 0x00, 0x00, 0x68, 0x00, 0x00, +0x00, 0x15, 0x54, 0x55, 0x55, 0x1f, 0x00, +0x38, 0x0a, 0x00, 0x00, 0x69, 0x00, 0x00, +0x01, 0x15, 0x54, 0x95, 0x56, 0x03, 0x00, +0x01, 0x2a, 0x00, 0x50, 0x69, 0x0c, 0x00, +0x18, 0x54, 0x50, 0xa9, 0x34, 0x00, 0x00, +0x00, 0x2a, 0x00, 0x55, 0x2b, 0x00, 0x00, +0x30, 0x54, 0x90, 0x2a, 0x15, 0x00, 0x00, +0x02, 0xa8, 0x40, 0xb5, 0x1a, 0x00, 0x00, +0x00, 0x50, 0xa1, 0x52, 0x0d, 0x00, 0x00, +0x30, 0xa0, 0x50, 0xab, 0x06, 0x00, 0x00, +0x00, 0x50, 0x29, 0x55, 0x03, 0x00, 0x00, +0x60, 0xa0, 0xb2, 0xaa, 0x01, 0x00, 0x00, +0x00, 0xc0, 0x55, 0xd5, 0x00, 0x00, 0x00, +0x80, 0x01, 0xab, 0x3a, 0x20, 0x00, 0x00, +0x00, 0x00, 0xfc, 0x0f, 0x20, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, +0x00, 0x00, 0xa8, 0x42, 0x0a, 0x00, 0x00, +0x00, 0x00, 0xa8, 0x52, 0x02, 0x00, 0x00, +0x00, 0x00, 0xa4, 0x12, 0x00, 0x00, 0x00, +0x00, 0x00, 0xa4, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0xa0, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/white_4.xbm view
@@ -0,0 +1,60 @@+#define white_4_width 56+#define white_4_height 56+static unsigned char white_4_bits[] = {+0x00, 0x00, 0xf0, 0x03, 0x00, 0x00, 0x00, +0x00, 0x80, 0xbf, 0x7e, 0x00, 0x00, 0x00, +0x00, 0xe0, 0xb6, 0xf6, 0x01, 0x00, 0x00, +0x00, 0xb8, 0xad, 0xb6, 0x07, 0x00, 0x00, +0x00, 0x6e, 0xad, 0xda, 0x1e, 0x00, 0x00, +0x00, 0x6b, 0xab, 0x6a, 0x3b, 0x00, 0x00, +0x80, 0xdb, 0xfe, 0xbf, 0x6d, 0x00, 0x00, +0xc0, 0xb6, 0x03, 0xf0, 0xf6, 0x00, 0x00, +0xe0, 0xee, 0xa8, 0xca, 0x9b, 0x01, 0x00, +0xb0, 0x3d, 0x55, 0x15, 0xef, 0x03, 0x00, +0x70, 0x9b, 0xaa, 0xaa, 0x76, 0x02, 0x00, +0xd8, 0x4e, 0x55, 0x5f, 0xbd, 0x07, 0x00, +0xb8, 0xa7, 0xaa, 0xaa, 0xda, 0x04, 0x00, +0x6c, 0x53, 0xf5, 0x5f, 0x75, 0x0f, 0x00, +0xdc, 0xa9, 0xaa, 0xaa, 0xaa, 0x0b, 0x00, +0xb6, 0x55, 0xff, 0x7f, 0xe5, 0x1c, 0x00, +0xee, 0xaa, 0xaa, 0xaa, 0x4a, 0x17, 0x00, +0xde, 0xf4, 0xff, 0x7f, 0xd5, 0x19, 0x00, +0x72, 0xba, 0xaa, 0xaa, 0xaa, 0x1e, 0x00, +0x4e, 0xf5, 0xff, 0xff, 0x95, 0x17, 0x00, +0x7f, 0xfa, 0xaa, 0xaa, 0xaa, 0x38, 0x00, +0x41, 0xfd, 0xff, 0xff, 0x95, 0x3f, 0x00, +0x7f, 0xfa, 0xaa, 0xaa, 0xaa, 0x20, 0x00, +0x41, 0xf5, 0xff, 0xff, 0x97, 0x3f, 0x00, +0x7f, 0xea, 0xab, 0xaa, 0xaa, 0x20, 0x00, +0x47, 0xf5, 0xff, 0xff, 0x94, 0x3f, 0x00, +0x7a, 0xea, 0xab, 0x2a, 0xa8, 0x1c, 0x00, +0x5e, 0xd5, 0xff, 0x0f, 0x94, 0x13, 0x00, +0xe6, 0xaa, 0xaf, 0x02, 0xca, 0x1e, 0x00, +0xba, 0xd4, 0xff, 0x00, 0xd4, 0x1d, 0x00, +0xce, 0xa9, 0x2f, 0x80, 0x6a, 0x1b, 0x00, +0x74, 0x55, 0x1f, 0x40, 0xe5, 0x0e, 0x00, +0xbc, 0xab, 0x0e, 0xa8, 0xb2, 0x0d, 0x00, +0xc8, 0x56, 0x0f, 0x54, 0x79, 0x07, 0x00, +0x78, 0xaf, 0x86, 0xaa, 0xdc, 0x06, 0x00, +0x90, 0x5b, 0x45, 0x55, 0xb6, 0x03, 0x00, +0xf0, 0x3d, 0xaa, 0x2a, 0x6f, 0x03, 0x00, +0x60, 0xf6, 0x54, 0xc5, 0xdd, 0x01, 0x00, +0xc0, 0xdb, 0x03, 0x70, 0xdb, 0x00, 0x00, +0x80, 0x6d, 0xff, 0xdf, 0x76, 0x00, 0x00, +0x00, 0xb7, 0x55, 0xb5, 0x35, 0x00, 0x00, +0x00, 0xde, 0x56, 0xad, 0x1d, 0x00, 0x00, +0x00, 0x78, 0x5b, 0x6d, 0x07, 0x00, 0x00, +0x00, 0xe0, 0x5b, 0xdb, 0x01, 0x00, 0x00, +0x00, 0x80, 0x5f, 0x7f, 0x00, 0x00, 0x00, +0x00, 0x00, 0xf0, 0x03, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/whiteking_1.xbm view
@@ -0,0 +1,60 @@+#define whiteking_1_width 56+#define whiteking_1_height 56+static unsigned char whiteking_1_bits[] = {+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x01, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x02, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x0a, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x15, +0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x0a, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x15, +0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x2a, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x55, +0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x2a, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x55, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x2a, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x55, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xaa, +0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x55, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xaa, +0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x55, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xaa, +0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x55, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0xaa, +0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x55, +0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0xaa, +0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x55, +0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, +0x00, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, +0x80, 0x00, 0x00, 0x00, 0x80, 0xaa, 0x2a, +0x00, 0x01, 0x00, 0x00, 0x40, 0x55, 0x55, +0x00, 0x02, 0x00, 0x00, 0xa8, 0xaa, 0x2a, +0x00, 0x14, 0x00, 0x00, 0x54, 0x55, 0x15, +0x00, 0x28, 0x00, 0x80, 0xaa, 0xaa, 0x2a, +0x00, 0x50, 0x05, 0x54, 0x55, 0x55, 0x15, +0x00, 0xa0, 0xaa, 0xaa, 0xaa, 0xaa, 0x0a, +0x00, 0x40, 0x55, 0x55, 0x55, 0x55, 0x05, +0x00, 0x80, 0xaa, 0xaa, 0xaa, 0xaa, 0x02, +0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x01, +0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, +0x00, 0x00, 0x54, 0x55, 0x55, 0x55, 0x00, +0x00, 0x00, 0xa8, 0xaa, 0xaa, 0x2a, 0x00, +0x00, 0x00, 0x40, 0x55, 0x55, 0x15, 0x00, +0x00, 0x00, 0x00, 0xaa, 0xaa, 0x02, 0x00, +0x00, 0x00, 0x00, 0x50, 0x15, 0x00, 0x00, +};
+ c-examples/pixmaps/whiteking_2.xbm view
@@ -0,0 +1,60 @@+#define whiteking_2_width 56+#define whiteking_2_height 56+static unsigned char whiteking_2_bits[] = {+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, +0x00, 0x40, 0x00, 0x40, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x20, 0x01, 0x00, 0x00, +0x00, 0x00, 0x04, 0x90, 0x04, 0x00, 0x00, +0x00, 0x20, 0x01, 0x40, 0x12, 0x00, 0x00, +0x00, 0x48, 0xfc, 0x0f, 0x09, 0x00, 0x00, +0x00, 0x10, 0x07, 0x30, 0x04, 0x00, 0x00, +0x40, 0xc2, 0x00, 0xc0, 0x10, 0x00, 0x00, +0x80, 0x24, 0x00, 0x00, 0x09, 0x00, 0x00, +0x20, 0x11, 0x00, 0x00, 0x42, 0x00, 0x00, +0x40, 0x08, 0x80, 0x00, 0x20, 0x00, 0x00, +0x90, 0x04, 0xc4, 0x10, 0x80, 0x00, 0x00, +0x20, 0x02, 0x06, 0x18, 0x40, 0x04, 0x00, +0x48, 0x42, 0x00, 0x00, 0x01, 0x00, 0x00, +0x10, 0x61, 0x00, 0x88, 0x81, 0x08, 0x00, +0x20, 0x01, 0x10, 0x10, 0x00, 0x00, 0x00, +0x80, 0x00, 0x20, 0x08, 0x00, 0x01, 0x00, +0x80, 0x40, 0x40, 0x10, 0x04, 0x08, 0x00, +0x80, 0x80, 0x00, 0x20, 0x02, 0x00, 0x00, +0x80, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, +0x80, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, +0x80, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, +0x80, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, +0x80, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, +0x84, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, +0xa0, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, +0x00, 0x01, 0x00, 0x80, 0x00, 0x01, 0x00, +0x44, 0x01, 0x00, 0x40, 0x01, 0x02, 0x00, +0x00, 0x02, 0xaa, 0xaa, 0x80, 0x04, 0x00, +0x88, 0x02, 0x54, 0x55, 0x00, 0x01, 0x00, +0x40, 0x04, 0xaa, 0x2a, 0x40, 0x02, 0x00, +0x00, 0x09, 0x54, 0x15, 0x80, 0x00, 0x00, +0x80, 0x00, 0x00, 0x00, 0x20, 0x01, 0x00, +0x00, 0x04, 0x00, 0x00, 0x48, 0x00, 0x00, +0x00, 0x02, 0x00, 0x00, 0x90, 0x00, 0x00, +0x00, 0x08, 0x00, 0x00, 0x02, 0x00, 0x00, +0x00, 0x24, 0x00, 0x80, 0x04, 0x00, 0x00, +0x00, 0x92, 0x00, 0x20, 0x01, 0x00, 0x00, +0x00, 0x48, 0x02, 0x08, 0x00, 0x00, 0x00, +0x00, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, +0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/whiteking_3.xbm view
@@ -0,0 +1,60 @@+#define whiteking_3_width 56+#define whiteking_3_height 56+static unsigned char whiteking_3_bits[] = {+0x00, 0x00, 0x0c, 0x0c, 0x00, 0x00, 0x00, +0x00, 0x40, 0x40, 0x81, 0x00, 0x00, 0x00, +0x00, 0x18, 0x40, 0x09, 0x00, 0x00, 0x00, +0x00, 0x06, 0x52, 0x09, 0x00, 0x00, 0x00, +0x00, 0x91, 0x52, 0x05, 0x00, 0x00, 0x00, +0x80, 0x94, 0x50, 0x05, 0x00, 0x00, 0x00, +0x40, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, +0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, +0x10, 0x01, 0x50, 0x05, 0x60, 0x00, 0x00, +0x08, 0x00, 0xaa, 0x2a, 0x00, 0x00, 0x00, +0x08, 0x40, 0x55, 0x55, 0x80, 0x01, 0x00, +0x04, 0xa0, 0x0a, 0xaa, 0x00, 0x00, 0x00, +0x04, 0x50, 0x10, 0x41, 0x05, 0x03, 0x00, +0x02, 0xa8, 0x08, 0xa2, 0x0a, 0x00, 0x00, +0x02, 0x04, 0x50, 0x01, 0x14, 0x00, 0x00, +0x00, 0x88, 0xaa, 0x2a, 0x1a, 0x03, 0x00, +0x00, 0x04, 0x59, 0x11, 0x34, 0x00, 0x00, +0x01, 0xaa, 0xa8, 0xa8, 0x2a, 0x06, 0x00, +0x0d, 0x55, 0x51, 0x54, 0x55, 0x00, 0x00, +0x31, 0xa2, 0x28, 0x2a, 0x6a, 0x00, 0x00, +0x00, 0x45, 0x54, 0x15, 0x55, 0x07, 0x00, +0x3e, 0xa2, 0xa8, 0xaa, 0x6b, 0x00, 0x00, +0x00, 0x45, 0x55, 0x55, 0x55, 0x1f, 0x00, +0x3e, 0x8a, 0xaa, 0xaa, 0x6a, 0x00, 0x00, +0x00, 0x45, 0x55, 0xd5, 0x55, 0x1f, 0x00, +0x38, 0x8a, 0xaa, 0xaa, 0x6a, 0x00, 0x00, +0x01, 0x15, 0x55, 0x55, 0x55, 0x03, 0x00, +0x01, 0x2a, 0xaa, 0xea, 0x6a, 0x0c, 0x00, +0x19, 0x14, 0x54, 0x55, 0x35, 0x00, 0x00, +0x00, 0x2a, 0xaa, 0xaa, 0x2a, 0x00, 0x00, +0x30, 0x54, 0x54, 0x55, 0x15, 0x00, 0x00, +0x02, 0xa8, 0xaa, 0xaa, 0x1a, 0x00, 0x00, +0x00, 0x50, 0x55, 0xd5, 0x0d, 0x00, 0x00, +0x30, 0xa0, 0xaa, 0xea, 0x06, 0x00, 0x00, +0x00, 0x50, 0x55, 0x55, 0x03, 0x00, 0x00, +0x60, 0xa0, 0xaa, 0xaa, 0x01, 0x00, 0x00, +0x00, 0xc0, 0x55, 0xd5, 0x00, 0x00, 0x00, +0x80, 0x01, 0xab, 0x3a, 0x20, 0x00, 0x00, +0x00, 0x00, 0xfc, 0x0f, 0x20, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, +0x00, 0x00, 0xa8, 0x42, 0x0a, 0x00, 0x00, +0x00, 0x00, 0xa8, 0x52, 0x02, 0x00, 0x00, +0x00, 0x00, 0xa4, 0x12, 0x00, 0x00, 0x00, +0x00, 0x00, 0xa4, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0xa0, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/whiteking_4.xbm view
@@ -0,0 +1,60 @@+#define whiteking_4_width 56+#define whiteking_4_height 56+static unsigned char whiteking_4_bits[] = {+0x00, 0x00, 0xf0, 0x03, 0x00, 0x00, 0x00, +0x00, 0x80, 0xbf, 0x7e, 0x00, 0x00, 0x00, +0x00, 0xe0, 0xb6, 0xf6, 0x01, 0x00, 0x00, +0x00, 0xb8, 0xad, 0xb6, 0x07, 0x00, 0x00, +0x00, 0x6e, 0xad, 0xda, 0x1e, 0x00, 0x00, +0x00, 0x6b, 0xab, 0x6a, 0x3b, 0x00, 0x00, +0x80, 0xdb, 0xfe, 0xbf, 0x6d, 0x00, 0x00, +0xc0, 0xb6, 0x03, 0xf0, 0xf6, 0x00, 0x00, +0xe0, 0xee, 0xa8, 0xca, 0x9b, 0x01, 0x00, +0xb0, 0x3d, 0x55, 0x15, 0xef, 0x03, 0x00, +0x70, 0x9b, 0xaa, 0xaa, 0x76, 0x02, 0x00, +0xd8, 0x4e, 0xf5, 0x55, 0xbd, 0x07, 0x00, +0xb8, 0xa7, 0x6f, 0xbe, 0xda, 0x04, 0x00, +0x6c, 0x53, 0x33, 0x4d, 0x75, 0x0f, 0x00, +0xdc, 0xf9, 0xa9, 0xe6, 0xab, 0x0b, 0x00, +0xb6, 0x35, 0x55, 0xd5, 0xe4, 0x1c, 0x00, +0xee, 0x9a, 0xa6, 0x66, 0x4a, 0x17, 0x00, +0xde, 0x54, 0x47, 0x47, 0xd5, 0x19, 0x00, +0x72, 0xaa, 0x8e, 0xa3, 0xaa, 0x1e, 0x00, +0x4e, 0x1d, 0x97, 0xc5, 0x91, 0x17, 0x00, +0x7f, 0x3a, 0xab, 0xca, 0xa8, 0x38, 0x00, +0x41, 0x5d, 0x57, 0x55, 0x90, 0x3f, 0x00, +0x7f, 0xba, 0xaa, 0xaa, 0xa8, 0x20, 0x00, +0x41, 0x75, 0x55, 0x55, 0x94, 0x3f, 0x00, +0x7f, 0xba, 0xaa, 0x2a, 0xa8, 0x20, 0x00, +0x47, 0x75, 0x55, 0x55, 0x94, 0x3f, 0x00, +0x7a, 0xea, 0xaa, 0x2a, 0xaa, 0x1c, 0x00, +0x5e, 0xd5, 0x55, 0x15, 0x94, 0x13, 0x00, +0xe6, 0xea, 0xab, 0x2a, 0xca, 0x1e, 0x00, +0xba, 0xd4, 0x55, 0x15, 0xd4, 0x1d, 0x00, +0xce, 0xa9, 0x01, 0x00, 0x6a, 0x1b, 0x00, +0x74, 0x55, 0x01, 0x00, 0xe5, 0x0e, 0x00, +0xbc, 0xab, 0x00, 0x00, 0xb2, 0x0d, 0x00, +0xc8, 0x56, 0x01, 0x00, 0x79, 0x07, 0x00, +0x78, 0xaf, 0xaa, 0xaa, 0xdc, 0x06, 0x00, +0x90, 0x5b, 0x55, 0x55, 0xb6, 0x03, 0x00, +0xf0, 0x3d, 0xaa, 0x2a, 0x6f, 0x03, 0x00, +0x60, 0xf6, 0x54, 0xc5, 0xdd, 0x01, 0x00, +0xc0, 0xdb, 0x03, 0x70, 0xdb, 0x00, 0x00, +0x80, 0x6d, 0xff, 0xdf, 0x76, 0x00, 0x00, +0x00, 0xb7, 0x55, 0xb5, 0x35, 0x00, 0x00, +0x00, 0xde, 0x56, 0xad, 0x1d, 0x00, 0x00, +0x00, 0x78, 0x5b, 0x6d, 0x07, 0x00, 0x00, +0x00, 0xe0, 0x5b, 0xdb, 0x01, 0x00, 0x00, +0x00, 0x80, 0x5f, 0x7f, 0x00, 0x00, 0x00, +0x00, 0x00, 0xf0, 0x03, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +};
+ c-examples/pixmaps/yellow.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * yellow_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #2A4602",+"+	c #435B00",+"@	c #818600",+"#	c #969900",+"$	c #A3A400",+"%	c #B0AF00",+"&	c #B4B425",+"*	c #BAB800",+"=	c #BABE02",+"-	c #B4B73F",+";	c #C0C300",+">	c #C7C905",+",	c #C6C821",+"'	c #CBCC00",+")	c #CAC835",+"!	c #C9C943",+"~	c #D1D201",+"{	c #C7C94E",+"]	c #CACB5D",+"^	c #D8D700",+"/	c #D9DB3C",+"(	c #D5D67B",+"_	c #DADB6D",+":	c #DFDE57",+"<	c #DFDF64",+"[	c #D9DB8A",+"}	c #EAEB76",+"|	c #E7E7A1",+"1	c #EBEC82",+"2	c #EEED91",+"3	c #EEEF9C",+"     +@$;**%**==;=*%*=;;$@+     ",+"   .#'/<2||||||||||||||[_)*#.   ",+"  +>^}32233||3|333||||||||(*=+  ",+" .>'2222222233322223||||||||,'. ",+" #,1111111112222212122[[[[[[[^# ",+"+*:_111}}}}1_1(111}1111([[[[[_'+",+"@,___}}}}}}_____1}}}}}_(((((((,@",+"$/<<:<<<<<__](]]<}:}<}__](](](!$",+"*:!<!::::{{]{]]{<:::::::<{]]]]{*",+"*!!!:!!{{{]{{{{{!}///:::!<{]]]]*",+"%!))/!!----{!!!!!::///::!!!{---$",+"%))!))-&-&-&!&!!))/////)!!!!---$",+"*,,)&*&&&&&&&),))))///,))&&----$",+"=,,*&&$&&&&&)','''',,',,)))*&$&%",+"=;,*&$$%%*>>'''/,/'),,'>>,)*&&&%",+"*>';*&$&*;''',>;;>>'****,*****%%",+"*'~'**%%;>~'>,;***''****;;******",+"*>'>;***>'^****;'*>>;***;,**%*%%",+"%*;*;*''^'~>*%%*****,*;*'>,*%%$%",+"%****''^~^~;*%%%%%*****''''>=%%$",+"%**>;'^^^^^'*%$$$$%%%**>''''*%%%",+"%**>^^^^^^~^*%%$#$$%%%**>'~''=%%",+"*;*>'^^^^^~;*%%$$$#$$%**'>~';==*",+";***'^~'^~;;****%%%%%****>'';;*=",+"%**;;>;**;;*;;;***%***;*;;'^~~>%",+"@***,**%%****>''>;*;*;***>^~^~~@",+"+*****%$#%%*****;>>'';***'^~^^~+",+" #*****$$#%%%%****'''>*;'^~~~~# ",+" .%;*,;%$$$$$$%**~^'>**>~^^^~>. ",+"  +*>'*%%$%%$$$**>'^';;*~^^~>+  ",+"   .#';*%$$%$$$*;';>>*>;~~^$.   ",+"     +@#%**%$$$%>*>>>'*>$@+     "};
+ c-examples/pixmaps/yellow_bomb.xpm view
@@ -0,0 +1,67 @@+/* XPM */+static const char * yellow_bomb_xpm[] = {+"32 32 32 1",+" 	c #000100",+".	c #393900",+"+	c #2A4602",+"@	c #434101",+"#	c #474900",+"$	c #435B00",+"%	c #515116",+"&	c #5B5C20",+"*	c #676800",+"=	c #666635",+"-	c #7C7B50",+";	c #848323",+">	c #838442",+",	c #8E9200",+"'	c #8A8A5F",+")	c #A6A600",+"!	c #9A9B6D",+"~	c #B2B102",+"{	c #AFB132",+"]	c #BAB900",+"^	c #C1C300",+"/	c #C6C42C",+"(	c #CFD000",+"_	c #C7C84F",+":	c #CBCA40",+"<	c #CCCC67",+"[	c #D7D984",+"}	c #E0E167",+"|	c #E0E07A",+"1	c #E6E6A0",+"2	c #EEEE88",+"3	c #EDED97",+"     $,)]]]~]]]]^]]~]]^^),$     ",+"   +,(/}2111111111111113</~,+   ",+"  $((}33333113133311111111[]^$  ",+" +^(233223233333233111111111/(+ ",+" ,^2222222222332222233[[1[[1[() ",+"$^}2|2}22}22|||22222}22[[[[[[}^$",+",^}}}|}}}}}[!!'!!!![<|}|<[[[[[^,",+"):_}}}}}}}!''''''!''!!<|<<<<<<_)",+"^:}:}}:}<'''-''''''''!'<}_}<<<_]",+"]_:}/:}{-=--------'>'>--_}_____]",+"~::/:/_>=-=--=--=--=---->____<<)",+"~:///:;=============>===={:{{{{)",+"]^///:>%=.=.========&====>{:{{{,",+"^^^]~{.=.==.=%%%&&&&&=&&&%/~{{{~",+"]^^/))....=.%%=%%%%&%%%%%%/~~~~~",+"^^^^/{.=...%@@@@%#%@%@%%%%]/~/~~",+"^((^]~...%%@@@@.@@@@@@.@@@]]]~]]",+"]^((]/..@@@%..@@@@@@@.@.@@]~~]~~",+"~]]^]]@%@#@@...@@@@@@.@@@@^]~))~",+")~]]^^;@##@#@........@@@#;^^]~))",+"~~]]^()#@##@@......@..@@@)((^]~)",+"~]^^(((*####@..........@*(((^~~]",+"]]^^(((^##@@@..........@)^^(^]]]",+"/]]((((()##@..........@)(((((^]]",+")]~]((^^])*@@@@.....@*,]]^^((((~",+",]]]]]]~~~~,*@@#@@@*,]]]^^((((^,",+"$~~]/]~)))~]]]]]^^(((^]]^(((((($",+" ,]~]~~),))~~~~]]^((^^]]((((((, ",+" +]]^^^])))))))~^^(((]]^((((((+ ",+"  $^^^]~)))))))]^(((^^](((((($  ",+"   +,(^]~)~))))~]^^^^^/^((({+   ",+"     $,,~]~)),)~^^(^(^^^/,$     "};
+ c-examples/progress-simple.c view
@@ -0,0 +1,50 @@+#include <stdio.h>+#include <Fl_C.h>+#include <Fl_WindowC.h>+#include <Fl_ButtonC.h>+#include <Fl_ProgressC.h>++#ifdef WIN32+// WINDOWS+#include <windows.h>+#define usleep(v) Sleep(v/1000)+#else /*WIN32*/+// UNIX+#include <unistd.h>                            // usleep+#endif /*WIN32*/++void butt_cb(fl_Widget b, void* data){+  fl_Button butt = (fl_Button)b;+  Fl_Button_deactivate(butt);+  Fl_check();+  fl_Window w = (fl_Window)data;+  Fl_Window_begin(w);+  fl_Progress progress = Fl_Progress_New(10,50,200,30);+  Fl_Progress_set_minimum(progress,0);+  Fl_Progress_set_maximum(progress,1);+  Fl_Progress_set_color(progress,0x88888800);+  Fl_Progress_set_selection_color(progress,0x4444ff00);+  Fl_Progress_set_labelcolor(progress,FL_WHITE);+  Fl_Window_end(w);+  int t = 1;+  for (;t <= 500; t++){+    Fl_Progress_set_value(progress,t/500.0);+    char percent[10];+    sprintf(percent, "%d%%", (int)((t/500.0)*100.0));+    Fl_Progress_set_label(progress,percent);+    Fl_check();+    usleep(1000);+  }+  Fl_Window_remove_widget(w,progress);+  Fl_Progress_Destroy(progress);+  Fl_Button_activate(butt);+  Fl_Window_redraw(w);+}+int main(int argc, char** argv){+  fl_Window win = (fl_Window)Fl_Window_New(220,90);+  fl_Button butt = (fl_Button)Fl_Button_New_WithLabel(10,10,100,25,"Press");+  Fl_Button_set_callback_with_user_data(butt,butt_cb, (void*)win);+  Fl_Window_resizable(win);+  Fl_Window_show(win);+  return(Fl_run());+}
+ c-examples/rgb.txt view
@@ -0,0 +1,753 @@+! $Xorg: rgb.txt,v 1.3 2000/08/17 19:54:00 cpqbld Exp $+255 250 250		snow+248 248 255		ghost white+248 248 255		GhostWhite+245 245 245		white smoke+245 245 245		WhiteSmoke+220 220 220		gainsboro+255 250 240		floral white+255 250 240		FloralWhite+253 245 230		old lace+253 245 230		OldLace+250 240 230		linen+250 235 215		antique white+250 235 215		AntiqueWhite+255 239 213		papaya whip+255 239 213		PapayaWhip+255 235 205		blanched almond+255 235 205		BlanchedAlmond+255 228 196		bisque+255 218 185		peach puff+255 218 185		PeachPuff+255 222 173		navajo white+255 222 173		NavajoWhite+255 228 181		moccasin+255 248 220		cornsilk+255 255 240		ivory+255 250 205		lemon chiffon+255 250 205		LemonChiffon+255 245 238		seashell+240 255 240		honeydew+245 255 250		mint cream+245 255 250		MintCream+240 255 255		azure+240 248 255		alice blue+240 248 255		AliceBlue+230 230 250		lavender+255 240 245		lavender blush+255 240 245		LavenderBlush+255 228 225		misty rose+255 228 225		MistyRose+255 255 255		white+  0   0   0		black+ 47  79  79		dark slate gray+ 47  79  79		DarkSlateGray+ 47  79  79		dark slate grey+ 47  79  79		DarkSlateGrey+105 105 105		dim gray+105 105 105		DimGray+105 105 105		dim grey+105 105 105		DimGrey+112 128 144		slate gray+112 128 144		SlateGray+112 128 144		slate grey+112 128 144		SlateGrey+119 136 153		light slate gray+119 136 153		LightSlateGray+119 136 153		light slate grey+119 136 153		LightSlateGrey+190 190 190		gray+190 190 190		grey+211 211 211		light grey+211 211 211		LightGrey+211 211 211		light gray+211 211 211		LightGray+ 25  25 112		midnight blue+ 25  25 112		MidnightBlue+  0   0 128		navy+  0   0 128		navy blue+  0   0 128		NavyBlue+100 149 237		cornflower blue+100 149 237		CornflowerBlue+ 72  61 139		dark slate blue+ 72  61 139		DarkSlateBlue+106  90 205		slate blue+106  90 205		SlateBlue+123 104 238		medium slate blue+123 104 238		MediumSlateBlue+132 112 255		light slate blue+132 112 255		LightSlateBlue+  0   0 205		medium blue+  0   0 205		MediumBlue+ 65 105 225		royal blue+ 65 105 225		RoyalBlue+  0   0 255		blue+ 30 144 255		dodger blue+ 30 144 255		DodgerBlue+  0 191 255		deep sky blue+  0 191 255		DeepSkyBlue+135 206 235		sky blue+135 206 235		SkyBlue+135 206 250		light sky blue+135 206 250		LightSkyBlue+ 70 130 180		steel blue+ 70 130 180		SteelBlue+176 196 222		light steel blue+176 196 222		LightSteelBlue+173 216 230		light blue+173 216 230		LightBlue+176 224 230		powder blue+176 224 230		PowderBlue+175 238 238		pale turquoise+175 238 238		PaleTurquoise+  0 206 209		dark turquoise+  0 206 209		DarkTurquoise+ 72 209 204		medium turquoise+ 72 209 204		MediumTurquoise+ 64 224 208		turquoise+  0 255 255		cyan+224 255 255		light cyan+224 255 255		LightCyan+ 95 158 160		cadet blue+ 95 158 160		CadetBlue+102 205 170		medium aquamarine+102 205 170		MediumAquamarine+127 255 212		aquamarine+  0 100   0		dark green+  0 100   0		DarkGreen+ 85 107  47		dark olive green+ 85 107  47		DarkOliveGreen+143 188 143		dark sea green+143 188 143		DarkSeaGreen+ 46 139  87		sea green+ 46 139  87		SeaGreen+ 60 179 113		medium sea green+ 60 179 113		MediumSeaGreen+ 32 178 170		light sea green+ 32 178 170		LightSeaGreen+152 251 152		pale green+152 251 152		PaleGreen+  0 255 127		spring green+  0 255 127		SpringGreen+124 252   0		lawn green+124 252   0		LawnGreen+  0 255   0		green+127 255   0		chartreuse+  0 250 154		medium spring green+  0 250 154		MediumSpringGreen+173 255  47		green yellow+173 255  47		GreenYellow+ 50 205  50		lime green+ 50 205  50		LimeGreen+154 205  50		yellow green+154 205  50		YellowGreen+ 34 139  34		forest green+ 34 139  34		ForestGreen+107 142  35		olive drab+107 142  35		OliveDrab+189 183 107		dark khaki+189 183 107		DarkKhaki+240 230 140		khaki+238 232 170		pale goldenrod+238 232 170		PaleGoldenrod+250 250 210		light goldenrod yellow+250 250 210		LightGoldenrodYellow+255 255 224		light yellow+255 255 224		LightYellow+255 255   0		yellow+255 215   0 		gold+238 221 130		light goldenrod+238 221 130		LightGoldenrod+218 165  32		goldenrod+184 134  11		dark goldenrod+184 134  11		DarkGoldenrod+188 143 143		rosy brown+188 143 143		RosyBrown+205  92  92		indian red+205  92  92		IndianRed+139  69  19		saddle brown+139  69  19		SaddleBrown+160  82  45		sienna+205 133  63		peru+222 184 135		burlywood+245 245 220		beige+245 222 179		wheat+244 164  96		sandy brown+244 164  96		SandyBrown+210 180 140		tan+210 105  30		chocolate+178  34  34		firebrick+165  42  42		brown+233 150 122		dark salmon+233 150 122		DarkSalmon+250 128 114		salmon+255 160 122		light salmon+255 160 122		LightSalmon+255 165   0		orange+255 140   0		dark orange+255 140   0		DarkOrange+255 127  80		coral+240 128 128		light coral+240 128 128		LightCoral+255  99  71		tomato+255  69   0		orange red+255  69   0		OrangeRed+255   0   0		red+255 105 180		hot pink+255 105 180		HotPink+255  20 147		deep pink+255  20 147		DeepPink+255 192 203		pink+255 182 193		light pink+255 182 193		LightPink+219 112 147		pale violet red+219 112 147		PaleVioletRed+176  48  96		maroon+199  21 133		medium violet red+199  21 133		MediumVioletRed+208  32 144		violet red+208  32 144		VioletRed+255   0 255		magenta+238 130 238		violet+221 160 221		plum+218 112 214		orchid+186  85 211		medium orchid+186  85 211		MediumOrchid+153  50 204		dark orchid+153  50 204		DarkOrchid+148   0 211		dark violet+148   0 211		DarkViolet+138  43 226		blue violet+138  43 226		BlueViolet+160  32 240		purple+147 112 219		medium purple+147 112 219		MediumPurple+216 191 216		thistle+255 250 250		snow1+238 233 233		snow2+205 201 201		snow3+139 137 137		snow4+255 245 238		seashell1+238 229 222		seashell2+205 197 191		seashell3+139 134 130		seashell4+255 239 219		AntiqueWhite1+238 223 204		AntiqueWhite2+205 192 176		AntiqueWhite3+139 131 120		AntiqueWhite4+255 228 196		bisque1+238 213 183		bisque2+205 183 158		bisque3+139 125 107		bisque4+255 218 185		PeachPuff1+238 203 173		PeachPuff2+205 175 149		PeachPuff3+139 119 101		PeachPuff4+255 222 173		NavajoWhite1+238 207 161		NavajoWhite2+205 179 139		NavajoWhite3+139 121	 94		NavajoWhite4+255 250 205		LemonChiffon1+238 233 191		LemonChiffon2+205 201 165		LemonChiffon3+139 137 112		LemonChiffon4+255 248 220		cornsilk1+238 232 205		cornsilk2+205 200 177		cornsilk3+139 136 120		cornsilk4+255 255 240		ivory1+238 238 224		ivory2+205 205 193		ivory3+139 139 131		ivory4+240 255 240		honeydew1+224 238 224		honeydew2+193 205 193		honeydew3+131 139 131		honeydew4+255 240 245		LavenderBlush1+238 224 229		LavenderBlush2+205 193 197		LavenderBlush3+139 131 134		LavenderBlush4+255 228 225		MistyRose1+238 213 210		MistyRose2+205 183 181		MistyRose3+139 125 123		MistyRose4+240 255 255		azure1+224 238 238		azure2+193 205 205		azure3+131 139 139		azure4+131 111 255		SlateBlue1+122 103 238		SlateBlue2+105  89 205		SlateBlue3+ 71  60 139		SlateBlue4+ 72 118 255		RoyalBlue1+ 67 110 238		RoyalBlue2+ 58  95 205		RoyalBlue3+ 39  64 139		RoyalBlue4+  0   0 255		blue1+  0   0 238		blue2+  0   0 205		blue3+  0   0 139		blue4+ 30 144 255		DodgerBlue1+ 28 134 238		DodgerBlue2+ 24 116 205		DodgerBlue3+ 16  78 139		DodgerBlue4+ 99 184 255		SteelBlue1+ 92 172 238		SteelBlue2+ 79 148 205		SteelBlue3+ 54 100 139		SteelBlue4+  0 191 255		DeepSkyBlue1+  0 178 238		DeepSkyBlue2+  0 154 205		DeepSkyBlue3+  0 104 139		DeepSkyBlue4+135 206 255		SkyBlue1+126 192 238		SkyBlue2+108 166 205		SkyBlue3+ 74 112 139		SkyBlue4+176 226 255		LightSkyBlue1+164 211 238		LightSkyBlue2+141 182 205		LightSkyBlue3+ 96 123 139		LightSkyBlue4+198 226 255		SlateGray1+185 211 238		SlateGray2+159 182 205		SlateGray3+108 123 139		SlateGray4+202 225 255		LightSteelBlue1+188 210 238		LightSteelBlue2+162 181 205		LightSteelBlue3+110 123 139		LightSteelBlue4+191 239 255		LightBlue1+178 223 238		LightBlue2+154 192 205		LightBlue3+104 131 139		LightBlue4+224 255 255		LightCyan1+209 238 238		LightCyan2+180 205 205		LightCyan3+122 139 139		LightCyan4+187 255 255		PaleTurquoise1+174 238 238		PaleTurquoise2+150 205 205		PaleTurquoise3+102 139 139		PaleTurquoise4+152 245 255		CadetBlue1+142 229 238		CadetBlue2+122 197 205		CadetBlue3+ 83 134 139		CadetBlue4+  0 245 255		turquoise1+  0 229 238		turquoise2+  0 197 205		turquoise3+  0 134 139		turquoise4+  0 255 255		cyan1+  0 238 238		cyan2+  0 205 205		cyan3+  0 139 139		cyan4+151 255 255		DarkSlateGray1+141 238 238		DarkSlateGray2+121 205 205		DarkSlateGray3+ 82 139 139		DarkSlateGray4+127 255 212		aquamarine1+118 238 198		aquamarine2+102 205 170		aquamarine3+ 69 139 116		aquamarine4+193 255 193		DarkSeaGreen1+180 238 180		DarkSeaGreen2+155 205 155		DarkSeaGreen3+105 139 105		DarkSeaGreen4+ 84 255 159		SeaGreen1+ 78 238 148		SeaGreen2+ 67 205 128		SeaGreen3+ 46 139	 87		SeaGreen4+154 255 154		PaleGreen1+144 238 144		PaleGreen2+124 205 124		PaleGreen3+ 84 139	 84		PaleGreen4+  0 255 127		SpringGreen1+  0 238 118		SpringGreen2+  0 205 102		SpringGreen3+  0 139	 69		SpringGreen4+  0 255	  0		green1+  0 238	  0		green2+  0 205	  0		green3+  0 139	  0		green4+127 255	  0		chartreuse1+118 238	  0		chartreuse2+102 205	  0		chartreuse3+ 69 139	  0		chartreuse4+192 255	 62		OliveDrab1+179 238	 58		OliveDrab2+154 205	 50		OliveDrab3+105 139	 34		OliveDrab4+202 255 112		DarkOliveGreen1+188 238 104		DarkOliveGreen2+162 205	 90		DarkOliveGreen3+110 139	 61		DarkOliveGreen4+255 246 143		khaki1+238 230 133		khaki2+205 198 115		khaki3+139 134	 78		khaki4+255 236 139		LightGoldenrod1+238 220 130		LightGoldenrod2+205 190 112		LightGoldenrod3+139 129	 76		LightGoldenrod4+255 255 224		LightYellow1+238 238 209		LightYellow2+205 205 180		LightYellow3+139 139 122		LightYellow4+255 255	  0		yellow1+238 238	  0		yellow2+205 205	  0		yellow3+139 139	  0		yellow4+255 215	  0		gold1+238 201	  0		gold2+205 173	  0		gold3+139 117	  0		gold4+255 193	 37		goldenrod1+238 180	 34		goldenrod2+205 155	 29		goldenrod3+139 105	 20		goldenrod4+255 185	 15		DarkGoldenrod1+238 173	 14		DarkGoldenrod2+205 149	 12		DarkGoldenrod3+139 101	  8		DarkGoldenrod4+255 193 193		RosyBrown1+238 180 180		RosyBrown2+205 155 155		RosyBrown3+139 105 105		RosyBrown4+255 106 106		IndianRed1+238  99	 99		IndianRed2+205  85	 85		IndianRed3+139  58	 58		IndianRed4+255 130	 71		sienna1+238 121	 66		sienna2+205 104	 57		sienna3+139  71	 38		sienna4+255 211 155		burlywood1+238 197 145		burlywood2+205 170 125		burlywood3+139 115	 85		burlywood4+255 231 186		wheat1+238 216 174		wheat2+205 186 150		wheat3+139 126 102		wheat4+255 165	 79		tan1+238 154	 73		tan2+205 133	 63		tan3+139  90	 43		tan4+255 127	 36		chocolate1+238 118	 33		chocolate2+205 102	 29		chocolate3+139  69	 19		chocolate4+255  48	 48		firebrick1+238  44	 44		firebrick2+205  38	 38		firebrick3+139  26	 26		firebrick4+255  64	 64		brown1+238  59	 59		brown2+205  51	 51		brown3+139  35	 35		brown4+255 140 105		salmon1+238 130	 98		salmon2+205 112	 84		salmon3+139  76	 57		salmon4+255 160 122		LightSalmon1+238 149 114		LightSalmon2+205 129	 98		LightSalmon3+139  87	 66		LightSalmon4+255 165	  0		orange1+238 154	  0		orange2+205 133	  0		orange3+139  90	  0		orange4+255 127	  0		DarkOrange1+238 118	  0		DarkOrange2+205 102	  0		DarkOrange3+139  69	  0		DarkOrange4+255 114	 86		coral1+238 106	 80		coral2+205  91	 69		coral3+139  62	 47		coral4+255  99	 71		tomato1+238  92	 66		tomato2+205  79	 57		tomato3+139  54	 38		tomato4+255  69	  0		OrangeRed1+238  64	  0		OrangeRed2+205  55	  0		OrangeRed3+139  37	  0		OrangeRed4+255   0	  0		red1+238   0	  0		red2+205   0	  0		red3+139   0	  0		red4+255  20 147		DeepPink1+238  18 137		DeepPink2+205  16 118		DeepPink3+139  10	 80		DeepPink4+255 110 180		HotPink1+238 106 167		HotPink2+205  96 144		HotPink3+139  58  98		HotPink4+255 181 197		pink1+238 169 184		pink2+205 145 158		pink3+139  99 108		pink4+255 174 185		LightPink1+238 162 173		LightPink2+205 140 149		LightPink3+139  95 101		LightPink4+255 130 171		PaleVioletRed1+238 121 159		PaleVioletRed2+205 104 137		PaleVioletRed3+139  71	 93		PaleVioletRed4+255  52 179		maroon1+238  48 167		maroon2+205  41 144		maroon3+139  28	 98		maroon4+255  62 150		VioletRed1+238  58 140		VioletRed2+205  50 120		VioletRed3+139  34	 82		VioletRed4+255   0 255		magenta1+238   0 238		magenta2+205   0 205		magenta3+139   0 139		magenta4+255 131 250		orchid1+238 122 233		orchid2+205 105 201		orchid3+139  71 137		orchid4+255 187 255		plum1+238 174 238		plum2+205 150 205		plum3+139 102 139		plum4+224 102 255		MediumOrchid1+209  95 238		MediumOrchid2+180  82 205		MediumOrchid3+122  55 139		MediumOrchid4+191  62 255		DarkOrchid1+178  58 238		DarkOrchid2+154  50 205		DarkOrchid3+104  34 139		DarkOrchid4+155  48 255		purple1+145  44 238		purple2+125  38 205		purple3+ 85  26 139		purple4+171 130 255		MediumPurple1+159 121 238		MediumPurple2+137 104 205		MediumPurple3+ 93  71 139		MediumPurple4+255 225 255		thistle1+238 210 238		thistle2+205 181 205		thistle3+139 123 139		thistle4+  0   0   0		gray0+  0   0   0		grey0+  3   3   3		gray1+  3   3   3		grey1+  5   5   5		gray2+  5   5   5		grey2+  8   8   8		gray3+  8   8   8		grey3+ 10  10  10 		gray4+ 10  10  10 		grey4+ 13  13  13 		gray5+ 13  13  13 		grey5+ 15  15  15 		gray6+ 15  15  15 		grey6+ 18  18  18 		gray7+ 18  18  18 		grey7+ 20  20  20 		gray8+ 20  20  20 		grey8+ 23  23  23 		gray9+ 23  23  23 		grey9+ 26  26  26 		gray10+ 26  26  26 		grey10+ 28  28  28 		gray11+ 28  28  28 		grey11+ 31  31  31 		gray12+ 31  31  31 		grey12+ 33  33  33 		gray13+ 33  33  33 		grey13+ 36  36  36 		gray14+ 36  36  36 		grey14+ 38  38  38 		gray15+ 38  38  38 		grey15+ 41  41  41 		gray16+ 41  41  41 		grey16+ 43  43  43 		gray17+ 43  43  43 		grey17+ 46  46  46 		gray18+ 46  46  46 		grey18+ 48  48  48 		gray19+ 48  48  48 		grey19+ 51  51  51 		gray20+ 51  51  51 		grey20+ 54  54  54 		gray21+ 54  54  54 		grey21+ 56  56  56 		gray22+ 56  56  56 		grey22+ 59  59  59 		gray23+ 59  59  59 		grey23+ 61  61  61 		gray24+ 61  61  61 		grey24+ 64  64  64 		gray25+ 64  64  64 		grey25+ 66  66  66 		gray26+ 66  66  66 		grey26+ 69  69  69 		gray27+ 69  69  69 		grey27+ 71  71  71 		gray28+ 71  71  71 		grey28+ 74  74  74 		gray29+ 74  74  74 		grey29+ 77  77  77 		gray30+ 77  77  77 		grey30+ 79  79  79 		gray31+ 79  79  79 		grey31+ 82  82  82 		gray32+ 82  82  82 		grey32+ 84  84  84 		gray33+ 84  84  84 		grey33+ 87  87  87 		gray34+ 87  87  87 		grey34+ 89  89  89 		gray35+ 89  89  89 		grey35+ 92  92  92 		gray36+ 92  92  92 		grey36+ 94  94  94 		gray37+ 94  94  94 		grey37+ 97  97  97 		gray38+ 97  97  97 		grey38+ 99  99  99 		gray39+ 99  99  99 		grey39+102 102 102 		gray40+102 102 102 		grey40+105 105 105 		gray41+105 105 105 		grey41+107 107 107 		gray42+107 107 107 		grey42+110 110 110 		gray43+110 110 110 		grey43+112 112 112 		gray44+112 112 112 		grey44+115 115 115 		gray45+115 115 115 		grey45+117 117 117 		gray46+117 117 117 		grey46+120 120 120 		gray47+120 120 120 		grey47+122 122 122 		gray48+122 122 122 		grey48+125 125 125 		gray49+125 125 125 		grey49+127 127 127 		gray50+127 127 127 		grey50+130 130 130 		gray51+130 130 130 		grey51+133 133 133 		gray52+133 133 133 		grey52+135 135 135 		gray53+135 135 135 		grey53+138 138 138 		gray54+138 138 138 		grey54+140 140 140 		gray55+140 140 140 		grey55+143 143 143 		gray56+143 143 143 		grey56+145 145 145 		gray57+145 145 145 		grey57+148 148 148 		gray58+148 148 148 		grey58+150 150 150 		gray59+150 150 150 		grey59+153 153 153 		gray60+153 153 153 		grey60+156 156 156 		gray61+156 156 156 		grey61+158 158 158 		gray62+158 158 158 		grey62+161 161 161 		gray63+161 161 161 		grey63+163 163 163 		gray64+163 163 163 		grey64+166 166 166 		gray65+166 166 166 		grey65+168 168 168 		gray66+168 168 168 		grey66+171 171 171 		gray67+171 171 171 		grey67+173 173 173 		gray68+173 173 173 		grey68+176 176 176 		gray69+176 176 176 		grey69+179 179 179 		gray70+179 179 179 		grey70+181 181 181 		gray71+181 181 181 		grey71+184 184 184 		gray72+184 184 184 		grey72+186 186 186 		gray73+186 186 186 		grey73+189 189 189 		gray74+189 189 189 		grey74+191 191 191 		gray75+191 191 191 		grey75+194 194 194 		gray76+194 194 194 		grey76+196 196 196 		gray77+196 196 196 		grey77+199 199 199 		gray78+199 199 199 		grey78+201 201 201 		gray79+201 201 201 		grey79+204 204 204 		gray80+204 204 204 		grey80+207 207 207 		gray81+207 207 207 		grey81+209 209 209 		gray82+209 209 209 		grey82+212 212 212 		gray83+212 212 212 		grey83+214 214 214 		gray84+214 214 214 		grey84+217 217 217 		gray85+217 217 217 		grey85+219 219 219 		gray86+219 219 219 		grey86+222 222 222 		gray87+222 222 222 		grey87+224 224 224 		gray88+224 224 224 		grey88+227 227 227 		gray89+227 227 227 		grey89+229 229 229 		gray90+229 229 229 		grey90+232 232 232 		gray91+232 232 232 		grey91+235 235 235 		gray92+235 235 235 		grey92+237 237 237 		gray93+237 237 237 		grey93+240 240 240 		gray94+240 240 240 		grey94+242 242 242 		gray95+242 242 242 		grey95+245 245 245 		gray96+245 245 245 		grey96+247 247 247 		gray97+247 247 247 		grey97+250 250 250 		gray98+250 250 250 		grey98+252 252 252 		gray99+252 252 252 		grey99+255 255 255 		gray100+255 255 255 		grey100+169 169 169		dark grey+169 169 169		DarkGrey+169 169 169		dark gray+169 169 169		DarkGray+0     0 139		dark blue+0     0 139		DarkBlue+0   139 139		dark cyan+0   139 139		DarkCyan+139   0 139		dark magenta+139   0 139		DarkMagenta+139   0   0		dark red+139   0   0		DarkRed+144 238 144		light green+144 238 144		LightGreen
+ c-examples/sanity_check.c view
@@ -0,0 +1,97 @@+#include <stdio.h>+#include <Fl_C.h>+#include <Fl_Types.h>+#include <Fl_EnumerationsC.h>+#include <Fl_AskC.h>+#include <Fl_BitmapC.h>+#include <Fl_BoxC.h>+#include <Fl_BrowserC.h>+#include <Fl_ButtonC.h>+#include <Fl_Check_ButtonC.h>+#include <Fl_ChoiceC.h>+#include <Fl_ScrollbarC.h>+#include <Fl_Value_SliderC.h>+#include <Fl_ClockC.h>+#include <Fl_ClockC.h>+#include <Fl_Color_ChooserC.h>+#include <Fl_CounterC.h>+#include <Fl_DeviceC.h>+#include <Fl_Double_WindowC.h>+#include <Fl_DialC.h>+#include <Fl_DrawC.h>+#include <Fl_ExportMacros.h>+#include <Fl_File_BrowserC.h>+#include <Fl_File_ChooserC.h>+#include <Fl_File_IconC.h>+#include <Fl_File_InputC.h>+#include <Fl_Float_InputC.h>+#include <Fl_Gl_WindowC.h>+#include <Fl_TimerC.h>+#include <Fl_ProgressC.h>+#include <Fl_PositionerC.h>+#include <Fl_GroupC.h>+#include <Fl_Hold_BrowserC.h>+#include <Fl_ImageC.h>+#include <Fl_InputC.h>+#include <Fl_Input_C.h>+#include <Fl_Int_InputC.h>+#include <Fl_Light_ButtonC.h>+#include <Fl_Menu_C.h>+#include <Fl_Sys_Menu_BarC.h>+#include <Fl_Menu_ButtonC.h>+#include <Fl_Menu_ItemC.h>+#include <Fl_ChoiceC.h>+#include <Fl_Multi_BrowserC.h>+#include <Fl_Multiline_InputC.h>+#include <Fl_Multiline_OutputC.h>+#include <Fl_Native_File_ChooserC.h>+#include <Fl_OutputC.h>+#include <Fl_Overlay_WindowC.h>+#include <Fl_PNM_ImageC.h>+#include <Fl_Paged_DeviceC.h>+#include <Fl_PixmapC.h>+#include <Fl_PreferencesC.h>+#include <Fl_PrinterC.h>+#include <Fl_ProgressC.h>+#include <Fl_RGB_ImageC.h>+#include <Fl_Radio_ButtonC.h>+#include <Fl_Radio_Light_ButtonC.h>+#include <Fl_Repeat_ButtonC.h>+#include <Fl_Return_ButtonC.h>+#include <Fl_Round_ButtonC.h>+#include <Fl_Round_ClockC.h>+#include <Fl_Secret_InputC.h>+#include <Fl_Select_BrowserC.h>+#include <Fl_Shared_ImageC.h>+#include <Fl_Single_WindowC.h>+#include <Fl_SliderC.h>+#include <Fl_TableC.h>+#include <Fl_Table_RowC.h>+#include <Fl_TabsC.h>+#include <Fl_Text_BufferC.h>+#include <Fl_Text_DisplayC.h>+#include <Fl_Text_EditorC.h>+#include <Fl_Text_SelectionC.h>+#include <Fl_TileC.h>+#include <Fl_Toggle_ButtonC.h>+#include <Fl_TooltipC.h>+#include <Fl_TreeC.h>+#include <Fl_Tree_ItemC.h>+#include <Fl_Tree_PrefsC.h>+#include <Fl_ValuatorC.h>+#include <Fl_AdjusterC.h>+#include <Fl_RollerC.h>+#include <Fl_Value_InputC.h>+#include <Fl_Value_SliderC.h>+#include <Fl_WidgetC.h>+#include <Fl_WindowC.h>+#include <Fl_WizardC.h>+#include <filenameC.h>+#include <fl_show_colormapC.h>+#include <glC.h>+#include <glutC.h>+#include <xC.h>++int main(int argc, char** argv) {+  return 0;+}
+ c-examples/table-as-container.c view
@@ -0,0 +1,122 @@+#include <stdio.h>+#include <string.h>+#include <Fl_C.h>+#include <Fl_Double_WindowC.h>+#include <Fl_Light_ButtonC.h>+#include <Fl_InputC.h>+#include <Fl_DrawC.h>+#include <Fl_WidgetC.h>+#include <Fl_TableC.h>++void button_cb(fl_Widget w, void* userdata){+  fprintf(stderr, "BUTTON: %s\n", (const char*)Fl_Widget_label(w));+}+void SetSize(fl_Table table, int newrows, int newcols){+  Fl_Table_clear(table);+  Fl_Table_set_rows(table,newrows);+  Fl_Table_set_cols(table,newcols);++  Fl_Table_begin(table);+  {+    int r;+    int c;+    for (r = 0; r<newrows; r++ ) {+      for (c = 0; c<newcols; c++ ) {+	int X,Y,W,H;+	Fl_Table_find_cell(table, CONTEXT_TABLEC, r, c, &X, &Y, &W, &H);+	char s[40];+	if ( c & 1 ) {+	  // Create the input widgets+	  sprintf(s, "%d.%d", r, c);+	  fl_Input in = (fl_Input)Fl_Input_New(X,Y,W,H);+	  Fl_Input_set_value(in, s);+	} else {+	  // Create the light buttons+	  sprintf(s, "%d/%d ", r, c);+	  fl_Light_Button butt = Fl_Light_Button_New_WithLabel(X,Y,W,H,strdup(s));+	  Fl_Light_Button_set_align(butt,FL_ALIGN_CENTER|FL_ALIGN_INSIDE);+	  Fl_Light_Button_set_callback_with_user_data(butt,(fl_Callback*)button_cb, (void*)0);+	  Fl_Light_Button_set_value(butt,((r+c*2) & 4 ) ? 1 : 0);+	}+      }+    }+  }+  Fl_Table_end(table);+}+// Handle drawing all cells in table+void draw_cell(fl_Table table, TableContextC context,+	       int R, int C, int X, int Y, int W, int H) {+  switch ( context ) {+  case CONTEXT_STARTPAGEC:+    flc_set_font(FL_HELVETICA, 12);		// font used by all headers+    break;++  case CONTEXT_RC_RESIZEC: {+    int X, Y, W, H;+    int index = 0;+    int r;+    int c;+    for ( r = 0; r<Fl_Table_rows(table); r++ ) {+      for ( c = 0; c<Fl_Table_cols(table); c++ ) {+	if ( index >= Fl_Table_children(table) ) break;+	Fl_Table_find_cell(table,CONTEXT_TABLEC, r, c, &X, &Y, &W, &H);+	fl_Widget child = (fl_Widget) Fl_Table_child(table,index++);+	Fl_Widget_resize(child,X,Y,W,H);+      }+    }+    Fl_Table_init_sizes(table);+    return;+  }++  case CONTEXT_ROW_HEADERC:+    flc_push_clip(X, Y, W, H);+    {+      static char s[40];+      sprintf(s, "Row %d", R);+      flc_draw_box(FL_THIN_UP_BOX, X, Y, W, H, Fl_Table_row_header_color(table));+      flc_set_color(FL_BLACK);+      flc_draw_with_align(s, X, Y, W, H, FL_ALIGN_CENTER);+    }+    flc_pop_clip();+    return;++  case CONTEXT_COL_HEADERC:+    flc_push_clip(X, Y, W, H);+    {+      static char s[40];+      sprintf(s, "Column %d", C);+      flc_draw_box(FL_THIN_UP_BOX, X, Y, W, H, Fl_Table_col_header_color(table));+      flc_set_color(FL_BLACK);+      flc_draw_with_align(s, X, Y, W, H, FL_ALIGN_CENTER);+    }+    flc_pop_clip();+    return;++  case CONTEXT_CELLC:+    return;		// fltk handles drawing the widgets++  default:+    return;+  }+}+void initializeTable(fl_Table table){+  Fl_Table_set_col_header(table,1);+  Fl_Table_set_col_resize(table,1);+  Fl_Table_set_col_header_height(table,25);+  Fl_Table_set_row_header(table,1);+  Fl_Table_set_row_resize(table,1);+  Fl_Table_set_row_header_width(table,80);+  Fl_Table_end(table);+}+int main(int argc, char** argv){+  fl_Double_Window win = (fl_Double_Window)Fl_Double_Window_New_WithLabel(940, 500, "table as container");+  fl_Table_Virtual_Funcs* funcs = (fl_Table_Virtual_Funcs*)Fl_Table_default_virtual_funcs();+  funcs->draw_cell = &draw_cell;+  fl_Table table = (fl_Table)Fl_Table_New_WithLabel(20, 20, Fl_Double_Window_w(win)-40, Fl_Double_Window_h(win)-40, "FLTK widget table", funcs);+  initializeTable(table);+  SetSize(table,50,50);+  Fl_Double_Window_end(win);+  Fl_Double_Window_set_resizable(win,table);+  Fl_Double_Window_show(win);+  return Fl_run();+}
+ c-examples/table-simple.c view
@@ -0,0 +1,78 @@+#include <stdio.h>+#include "Fl_C.h"+#include "Fl_EnumerationsC.h"+#include "Fl_Types.h"+#include "Fl_Double_WindowC.h"+#include "Fl_DrawC.h"+#include "Fl_TableC.h"++#define MAX_ROWS 30+#define MAX_COLS 26		// A-Z+int data[MAX_ROWS][MAX_COLS];		// data array for cells++void DrawHeader(fl_Table table,const char *s, int X, int Y, int W, int H){+  flc_push_clip(X,Y,W,H);+  flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, Fl_Table_row_header_color(table));+  flc_set_color(FL_BLACK);+  flc_draw_with_align(s, X,Y,W,H, FL_ALIGN_CENTER);+  flc_pop_clip();+}+void DrawData(fl_Table table,const char *s, int X, int Y, int W, int H){+  flc_push_clip(X,Y,W,H);+  flc_set_color(FL_WHITE); flc_rectf(X,Y,W,H);+  flc_set_color(FL_GRAY0); flc_draw_with_align(s, X,Y,W,H, FL_ALIGN_CENTER);+  flc_set_color(Fl_Table_color(table));  flc_rect(X,Y,W,H);+  flc_pop_clip();+}+void draw_cell(fl_Table table,TableContextC context, int ROW, int COL, int X, int Y, int W, int H){+  static char s[40];+  switch ( context ) {+  case CONTEXT_STARTPAGEC:+    flc_set_font(FL_HELVETICA, 16);+    return;+  case CONTEXT_COL_HEADERC:+    sprintf(s,"%c",'A'+COL);+    DrawHeader(table,s,X,Y,W,H);+    return;+  case CONTEXT_ROW_HEADERC:+    sprintf(s,"%03d:",ROW);+    DrawHeader(table,s,X,Y,W,H);+    return;+  case CONTEXT_CELLC:+    sprintf(s,"%d",data[ROW][COL]);+    DrawData(table,s,X,Y,W,H);+    return;+  default:+    return;+  }+}+void initialize_table(fl_Table table){+  // Fill data array+  int r;+  int c;+  for (r = 0 ; r<MAX_ROWS; r++ )+    for ( c = 0 ; c<MAX_COLS; c++ )+      data[r][c] = 1000+(r*1000)+c;+  // Rows+  Fl_Table_set_rows(table,MAX_ROWS);             // how many rows+  Fl_Table_set_row_header(table,1);              // enable row headers (along left)+  Fl_Table_set_row_height_all(table,20);         // default height of rows+  Fl_Table_set_row_resize(table,0);              // disable row resizing+  Fl_Table_set_cols(table,MAX_COLS);             // how many columns+  Fl_Table_set_col_header(table,1);              // enable column headers (along top)+  Fl_Table_set_col_width_all(table,80);          // default width of columns+  Fl_Table_set_col_resize(table,1);              // enable column resizing+  Fl_Table_end(table);			// end the Fl_Table group+}+int main(int argc, char** argv){+  fl_Table_Virtual_Funcs* funcs = (fl_Table_Virtual_Funcs*)Fl_Table_default_virtual_funcs();+  funcs->draw_cell = &draw_cell;+  fl_Double_Window window = (fl_Double_Window)Fl_Double_Window_New_WithLabel(900,400,"Simple Table");+  Fl_Double_Window_begin(window);+  fl_Table table = (fl_Table)Fl_Table_New(10,10,880,380,funcs);+  initialize_table(table);+  Fl_Double_Window_set_resizable(window, table);+  Fl_Double_Window_end(window);+  Fl_Double_Window_show(window);+  return (Fl_run());+}
+ c-examples/table-sort.c view
@@ -0,0 +1,731 @@+#include <stdio.h>+#include <string.h>+#include <stdlib.h>+#include <Fl_C.h>+#include <Fl_Table_RowC.h>+#include <Fl_DrawC.h>+#include <Fl_Double_WindowC.h>+#include <Fl_WindowC.h>++typedef char* string;++#define MARGIN 20++#ifdef WIN32+// WINDOWS+#  define DIRCMD          "dir"+static const char *G_header[] = { "Date", "Time", "Size", "Filename", "", "", "", "", "", 0 };+#  ifdef _MSC_VER+#    define popen           _popen+#  endif+#else // WIN32+// UNIX+#  include <ctype.h>+#  define DIRCMD          "ls -l"+static const char *G_header[] = { "Perms", "#L", "Own", "Group", "Size", "Date", "", "", "Filename", 0 };+#endif /* WIN32 */++// Font face/sizes for header and rows+#define HEADER_FONTFACE FL_HELVETICA_BOLD+#define HEADER_FONTSIZE 16+#define ROW_FONTFACE    FL_HELVETICA+#define ROW_FONTSIZE    16++void print_array(string arr[], int length){+  printf("{");+  int i = 0;+  for(;i<length;i++){+    if (strcmp(arr[i],"") == 0){+      printf(" <N> ");+    }+    else {+      printf(" %s ", arr[i]);+    }+  }+  printf("}\n");+}++void print_addresses(void* arr[], int length){+  printf("{");+  int i = 0;+  for(;i<length;i++){+    printf(" %p ", &arr[i]);+  }+  printf("}\n");+}++/**+   Doubly Linked List, can't insert or delete mid-list+ */+typedef struct Row {+  int* length;+  string* row; // a 1D array+} Row;++Row* to_row(string* arr, int length){+  int* length_cpy;+  length_cpy = malloc(sizeof(int));+  *length_cpy = length;+  Row* result = malloc(sizeof(Row));+  result->length = length_cpy;+  result->row = arr;+  return result;+}++string get_sort_index(Row* row, int sort_index){+  string* ss = row->row;+  string result;+  if (sort_index > *(row->length)-1){+    result = "";+  }+  else {+    result = ss[sort_index];+  }+  return result;+}+void print_sort_index(Row* row, int sort_index){+  string s = get_sort_index(row, sort_index);+  if (strcmp(s,"") == 0){+    printf("<N>");+  }+  else {+    printf("%s",s);+  }+}+string* extract_index(Row* arr[], int rows, int index){+  int i = 0;+  string* result = malloc(sizeof(string) * rows);+  for(;i<rows;i++){+    result[i] = get_sort_index(arr[i], index);+  }+  return result;+}+typedef struct Node {+  struct Node* prev;+  struct Node* next;+  struct Row* row;+} Node;++Node* make_node(Row* row){+  Node* empty = malloc(sizeof(Node));+  empty->prev = NULL;+  empty->next = NULL;+  empty->row = row;+  return empty;+}++void append(Node* n, Node* next){+  n->next = next;+  next->prev = n;+}++Node* from_array(Row* arr[], int length){+  int curr_index = 0;+  Node* start = NULL;+  Node* curr_node = NULL;+  while(curr_index < length){+    Row* row = arr[curr_index];+    if (curr_index == 0){+      curr_node = make_node(row);+      start = curr_node;+    }+    else {+      Node* new_node = make_node(row);+      append(curr_node, new_node);+      curr_node = new_node;+    }+    curr_index++;+  }+  return start;+}++Node* get_last(Node* start){+  Node* curr = start;+  while (curr->next != NULL){+    curr = curr->next;+  }+  return curr;+}++void traverse_forward(Node* start, void** runningState, void (*f)(void** runningState, Row* row)){+  (*f)(runningState, start->row);+  if (start->next != NULL){+    traverse_forward(start->next, runningState, f);+  }+}++void traverse_backward(Node* end, void** runningState, void (*f)(void** runningState, Row* row)){+  (*f)(runningState, end->row);+  if (end->prev != NULL){+    traverse_backward(end->prev, runningState, f);+  }+}++void update_count(void** soFar_ref, Row* ignored){+  int* soFar = (int*)(*soFar_ref);+  *soFar = *soFar + 1;+}++typedef struct {+  int* soFar;+  struct Row** row; // array of rows+} accumulator;++void into_accumulator(void** accum_ref, Row* row){+  accumulator* accum = (accumulator*)(*accum_ref);+  accum->row[*(accum->soFar)] = row;+  *(accum->soFar) = *(accum->soFar) + 1;+}++int* count_nodes(Node* start){+  int* count = malloc(sizeof(int));+  *count = 0;+  traverse_forward(start, (void**)&count, &update_count);+  return count;+}++void update_max(void** max, Row* row){+  int* maxSoFar = (int*)(*max);+  int* length = row->length;+  if (*length > *maxSoFar) {+    *maxSoFar = *maxSoFar + 1;+  }+}++int* max_cols(Node* start){+  int* max = malloc(sizeof(int));+  *max = 0;+  traverse_forward(start, (void**)&max, &update_max);+  return max;+}++Row** to_array(Node* start){+  int* count = count_nodes(start);+  Row** into;+  into = malloc(sizeof(Row) * (*count));+  int soFar = 0;+  accumulator* accum = malloc(sizeof(accumulator));+  accum->soFar = &soFar;+  accum->row = into;+  traverse_forward(start, (void**)&accum, &into_accumulator);+  return into;+}++void print_node(void** ignored, Row* row){+  if (row != NULL){+    print_array(row->row, *(row->length));+  }+  else {+    puts("Row: NULL");+  }+}++void unlink_dll(Node** start){+  Node* next = (*start)->next;+  (*start)->next = NULL;+  (*start)->prev = NULL;+  (*start)->row = NULL;+  if (next != NULL){+    unlink_dll(&next);+  }+}++void free_row(Row* r){+  free(r->length);+  free(r);+  r->row = NULL;+  r->length = NULL;+  r = NULL;+}++void free_rows(Row* arr[], int length){+  int i = 0;+  for(;i<length;i++){+    free_row(arr[i]);+  }+  arr = NULL;+}++void print_rows(Row* rows[], int num_rows){+  printf("{");+  int i = 0;+  for (;i<num_rows;i++){+    print_array(rows[i]->row, *(rows[i]->length));+  }+  printf("}\n");+}++int find_pivot(int i, int j, int sort_index, Row* A[], int (*cmp)(string,string)){+  string firstKey = get_sort_index(A[i],sort_index);+  int k = i + 1;+  for(;k<=j;k++){+    int comparison = (*cmp)(get_sort_index(A[k], sort_index), firstKey);+    if (comparison == 1) {+      return k;+    }+    else if (comparison == -1) {+      return i;+    }+  }+  return -1;+}++void swap(void** a, void** b){+  void* tmp = *a;+  *a = *b;+  *b = tmp;+}++int numcmp(string a, string b){+  int a_int;+  int b_int;+  (strcmp(a,"") == 0) ? a_int = 0 : sscanf(a, "%d", &a_int);+  (strcmp(b,"") == 0) ? b_int = 0 : sscanf(b, "%d", &b_int);+  if (a_int < b_int) {+    return -1;+  }+  else if (a_int > b_int) {+    return 1;+  }+  else {+    return 0;+  }+}++int strcmp_wrapper(string a, string b){+  return strcmp(a,b);+}++int partition(int i, int j, int sort_index,string pivot, Row* A[], int (*cmp)(string,string)){+  int l = i;+  int r = j;+  while(l <= r){+    swap((void**)&A[l], (void**)&A[r]);+    while((*cmp)(get_sort_index(A[l],sort_index),pivot) < 0){+      l++;+    }+    while(((*cmp)(get_sort_index(A[r],sort_index),pivot) >= 0)){+      r--;+    }+  }+  return l;+}++void quicksort(int i, int j, int sort_index, Row* arr[], int (*cmp)(string,string)){+  int pivot_index = find_pivot(i,j,sort_index,arr,cmp);+  string pivot;+  int k;+  if(pivot_index != -1){+    pivot = get_sort_index(arr[pivot_index], sort_index);+    k = partition(i,j,sort_index,pivot,arr,cmp);+    quicksort(i, k-1, sort_index,arr,cmp);+    quicksort(k, j,sort_index, arr,cmp);+  }+}++void reverse(void* arr[], int l, int r){+  int last = r - 1;+  while(l <= last){+    swap(&arr[l],&arr[last]);+    l++;last--;+  }+}++int numeric(string candidate){+  string endptr;+  long int parse = strtol(candidate, &endptr, 0);+  int result = ((parse != 0L) && (*endptr == '\0'));+  return result;+}++int get_first_non_null_index(string arr[], int length){+  int index = -1;+  int curr = 0;+  while(index == -1 && curr < length){+    if (strcmp(arr[curr],"") != 0){+      index = curr;+    }+    curr++;+  }+  return index;+}++int (*(determine_comparator(Row* arr[], int rows, int index)))(string,string){+  int (*cmp)(char*, char*) = NULL;+  string* col  = extract_index(arr,rows,index);+  int test_index = get_first_non_null_index(col, rows);+  if (test_index != -1){+    if (numeric(col[test_index])){+      cmp = &numcmp;+    }+    else {+      cmp = &strcmp_wrapper;+    }+  }+  return cmp;+}++typedef struct {+  Node* _rowData;+  int* _sort_reverse;+  int* _sort_lastcol;+} other_data;++void sort_column(fl_Table_Row table, int col, int should_reverse){+  other_data* o = (other_data*)Fl_Table_Row_other_data(table);+  Node* _rowData = o->_rowData;+  int num_rows = *count_nodes(_rowData);+  Row** rows = to_array(_rowData);++  int (*cmp)(string,string) = NULL;+  cmp = determine_comparator(rows,num_rows,col);+  quicksort(0,num_rows - 1, col, rows, cmp);+  if (should_reverse) {+    reverse((void**)rows, 0, num_rows);+  }+  unlink_dll(&_rowData);+  _rowData = from_array(rows, num_rows);+  o->_rowData = _rowData;+  Fl_Table_Row_set_other_data(table,(void*)o);+  Fl_Table_Row_redraw(table);+}++void event_callback(fl_Widget widget, void* data){+  fl_Table_Row table = (fl_Table_Row) widget; // does nothing but aid readability+  int COL = Fl_Table_Row_callback_col(table);+  TableContextC context = Fl_Table_Row_callback_context(table);+  other_data* o = (other_data*)Fl_Table_Row_other_data(table);+  int* _sort_lastcol = o->_sort_lastcol;+  int* _sort_reverse = o->_sort_reverse;+  switch ( context ) {+  case CONTEXT_COL_HEADERC: {              // someone clicked on column header+    if ( Fl_event() == FL_RELEASE && Fl_event_button() == 1 ) {+      if ( *_sort_lastcol == COL ) {   // Click same column? Toggle sort+	*(o->_sort_reverse) ^= 1;+      } else {                        // Click diff column? Up sort+	*(o->_sort_reverse) ^= 0;+      }+      sort_column(table, COL,*_sort_reverse);+      *(o->_sort_lastcol) = COL;+      Fl_Table_Row_set_other_data(table,(void*)o);+    }+    break;+  }+  default:+    break;+  }+}++void initializeTable(fl_Table_Row table){+  other_data* d = malloc(sizeof(other_data));+  d->_sort_reverse = malloc(sizeof(int));;+  *(d->_sort_reverse) = 0;+  d->_sort_lastcol = malloc(sizeof(int));+  *(d->_sort_lastcol) = -1;+  d->_rowData = malloc(sizeof(Node));+  d->_rowData = NULL;+  Fl_Table_Row_set_other_data(table,(void*) d);+  Fl_Table_Row_set_callback(table,(fl_Callback*)event_callback);+}++void autowidth(fl_Table_Row table, int pad){+  int w, h;+  other_data* o = (other_data*)Fl_Table_Row_other_data(table);+  int num_rows = *(count_nodes(o->_rowData));+  int num_cols = *(max_cols(o->_rowData));+  Row** rows = to_array(o->_rowData);+  // Initialize all column widths to header width+  flc_set_font(HEADER_FONTFACE, HEADER_FONTSIZE);+  int c = 0;+  for (; G_header[c]; c++ ) {+    w=0;+    flc_measure_with_draw_symbols(G_header[c], &w, &h, 0);+    Fl_Table_Row_set_col_width(table, c, w+pad);+  }+  flc_set_font(ROW_FONTFACE, ROW_FONTSIZE);+  int r = 0;+  for (;r<num_rows; r++ ) {+    int c = 0;+    for (; c<num_cols; c++ ) {+      string s = get_sort_index(rows[r], c);+      w=0;+      flc_measure_with_draw_symbols(s, &w, &h, 0);+      if ( (w + pad) > Fl_Table_Row_col_width(table,c)) Fl_Table_Row_set_col_width(table, c, w + pad);+    }+  }+  // need to do { table_resized(); redraw(); }+  // but table_resized() is unexposed.+  // setting the row_header flag induces this.+  int row_header = Fl_Table_Row_row_header(table);+  Fl_Table_Row_set_row_header(table, row_header);+}++void load_command(fl_Table_Row table, const string cmd){+  char s[512];+  FILE *fp = popen(cmd,"r");+  Fl_Table_Row_set_cols(table,0);+  Node* first_row;+  Node* curr_row;+  int r = 0;+  for (;fgets(s, sizeof(s)-1, fp); r++){+    string ss;+    const string delim = " \t\n";+    int t = 0;+    Node* first_col;+    Node* curr_col;+    for(;(t==0)?(ss=strtok(s,delim)):(ss=strtok(NULL, delim));t++) {+      Row* r = malloc(sizeof(Row));+      int* length = malloc(sizeof(int));+      *length = 1;+      string* contents = malloc(sizeof(char*));+      contents[0] = strdup(ss);+      r->length = length;+      r->row = contents;+      Node* new_col = make_node(r);+      if(t == 0){+	first_col = curr_col = new_col;+      }+      else {+	append(curr_col, new_col);+	curr_col = curr_col->next;+      }+    }+    int* num_cols = count_nodes(first_col);+    Row** fragmented = to_array(first_col);+    string* cols = extract_index(fragmented, *num_cols, 0);+    Row* row = malloc(sizeof(Row));+    row->length = num_cols;+    row->row = cols;+    Node* new_row = make_node(row);+    if (r == 0){+      first_row = curr_row = new_row;+    }+    else{+      append(curr_row, new_row);+      curr_row = curr_row->next;+    }+    if (*num_cols > Fl_Table_Row_cols(table)){+      Fl_Table_Row_set_cols(table,*num_cols);+    }+  }+  other_data* o = (other_data*)Fl_Table_Row_other_data(table);+  o->_rowData = first_row;+  Fl_Table_Row_set_other_data(table, (void*)o);+  int num_rows = *count_nodes(first_row);+  Fl_Table_Row_set_rows(table,num_rows);+  autowidth(table, 20);+}++void draw_sort_arrow(fl_Table_Row table,int X,int Y,int W,int H){+  other_data* o = (other_data*)Fl_Table_Row_other_data(table);+  int sort_reverse = *(o->_sort_reverse);+  int xlft = X+(W-6)-8;+  int xctr = X+(W-6)-4;+  int xrit = X+(W-6)-0;+  int ytop = Y+(H/2)-4;+  int ybot = Y+(H/2)+4;+  if ( sort_reverse ) {+    // Engraved down arrow+    flc_set_color(FL_WHITE);+    flc_line(xrit, ytop, xctr, ybot);+    flc_set_color(41);                   // dark gray+    flc_line(xlft, ytop, xrit, ytop);+    flc_line(xlft, ytop, xctr, ybot);+  } else {+    // Engraved up arrow+    flc_set_color(FL_WHITE);+    flc_line(xrit, ybot, xctr, ytop);+    flc_line(xrit, ybot, xlft, ybot);+    flc_set_color(41);                   // dark gray+    flc_line(xlft, ybot, xctr, ytop);+  }+}++void draw_cell(fl_Table_Row table, TableContextC context, int R, int C, int X, int Y, int W, int H) {+  const char *s = "";+  other_data* o = (other_data*)Fl_Table_Row_other_data(table);+  Node* _rowdata = o->_rowData;+  if (_rowdata != NULL){+    Row** rows = to_array(_rowdata);+    int num_rows = *count_nodes(_rowdata);+    if ( R < num_rows && C < *(rows[R]->length)){+      s = rows[R]->row[C];+    }+  }+  switch ( context ) {+  case CONTEXT_COL_HEADERC:+    flc_push_clip(X,Y,W,H);+    {+      flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, FL_BACKGROUND_COLOR);+      if ( C < 9 ) {+	flc_set_font(HEADER_FONTFACE, HEADER_FONTSIZE);+	flc_set_color(FL_BLACK);+	flc_draw_with_img_draw_symbols(G_header[C], X+2,Y,W,H, FL_ALIGN_LEFT, 0, 0);         // +2=pad left+	// Draw sort arrow+	if ( C == *(o->_sort_lastcol)) {+	  draw_sort_arrow(table,X,Y,W,H);+	}+      }+    }+    flc_pop_clip();+    return;+  case CONTEXT_CELLC: {+    flc_push_clip(X,Y,W,H);+    {+      // Bg color+      Fl_Color bgcolor;+      if (Fl_Table_Row_row_selected(table,R)){+	bgcolor = Fl_Table_Row_selection_color(table);+      }+      else {+	bgcolor = FL_WHITE;+      }+      flc_set_color(bgcolor);+      flc_rectf(X,Y,W,H);+      flc_set_font(ROW_FONTFACE, ROW_FONTSIZE);+      flc_set_color(FL_BLACK);+      flc_draw_with_align(s, X+2,Y,W,H, FL_ALIGN_LEFT);+      // Border+      flc_set_color(FL_LIGHT2);+      flc_rect(X,Y,W,H);+    }+    flc_pop_clip();+    return;+  }+  default:+    return;+  }+}++// Resize parent window to size of table+void resize_window(fl_Table table) {+  int width = 4;                                          // width of table borders+  int t = 0;+  for (; t<Fl_Table_Row_cols(table); t++ ){+    width += Fl_Table_Row_col_width(table,t);+  }+  width += MARGIN*2;+  if (width < 200 || width > Fl_w()) return;+  fl_Window window = (fl_Window)Fl_Table_Row_window(table);+  Fl_Window_resize(window, Fl_Window_x(window), Fl_Window_y(window), width, Fl_Window_h(window));+}++void test(){+  int arr_length = 11;+  string a[] = {"a","4"};+  Row* a_row = to_row(a,2);+  string b[] = {"b","3","row_B"};+  Row* b_row = to_row(b,3);+  string c[] = {"c","2","row_C"};+  Row* c_row = to_row(c,3);+  string d[] = {"d","1","row_D"};+  Row* d_row = to_row(d,3);+  string e[] = {"e","1","row_E"};+  Row* e_row = to_row(e,3);+  string f[] = {"f","1","row_F"};+  Row* f_row = to_row(f,3);+  string g[] = {"g","1","row_G"};+  Row* g_row = to_row(g,3);+  string h[] = {"h","1","row_H"};+  Row* h_row = to_row(h,3);+  string i[] = {"i","1","row_I"};+  Row* i_row = to_row(i,3);+  string j[] = {"j","1","row_J"};+  Row* j_row = to_row(j,3);+  string k[] = {"k","1","row_K"};+  Row* k_row = to_row(k,3);+  int sort_index = 0;+  Row** rows;+  rows = malloc(sizeof(Row*) * arr_length);+  rows[0] = a_row;+  rows[1] = b_row;+  rows[2] = c_row;+  rows[3] = d_row;+  rows[4] = e_row;+  rows[5] = f_row;+  rows[6] = g_row;+  rows[7] = h_row;+  rows[8] = i_row;+  rows[9] = j_row;+  rows[10] = k_row;++  // Reversing a reversed list should be idempotent+  reverse((void**)rows, 0, arr_length);+  print_rows(rows, arr_length);+  reverse((void**)rows, 0, arr_length);+  print_rows(rows, arr_length);+  puts("Row array -> doubly linked list.");+  Node* start = from_array(rows, arr_length);+  unlink_dll(&start);+  start = NULL;++  puts("Doubly linked list -> row array");+  int (*cmp)(string,string) = NULL;+  cmp = determine_comparator(rows,arr_length,sort_index);+  printf("Sort by column : %d\n", sort_index);+  quicksort(0,arr_length - 1,sort_index,rows,cmp);+  puts("Row array -> doubly linked list.");+  puts("Print doubly linked list");+  start = from_array(rows, arr_length);+  traverse_forward(start, NULL, &print_node);++  puts("Print it backwards");+  Node* last = get_last(start);+  traverse_backward(last, NULL, &print_node);++  unlink_dll(&start);+  start = NULL;++  puts("Change sort index to the numbers");+  sort_index = 1;+  cmp =  determine_comparator(rows,arr_length,sort_index);+  puts("Re-sort");+  quicksort(0,arr_length - 1,sort_index,rows,cmp);+  start = from_array(rows, arr_length);+  traverse_forward(start, NULL, &print_node);+  reverse((void**)rows, 0, arr_length);+  unlink_dll(&start);+  start = NULL;++  puts("Change sort index to uppercase letters");+  sort_index = 2;+  cmp =  determine_comparator(rows,arr_length,sort_index);+  puts("Re-sort");+  quicksort(0,arr_length - 1,sort_index,rows,cmp);+  start = from_array(rows, arr_length);+  traverse_forward(start, NULL, &print_node);+  unlink_dll(&start);+  start = NULL;++  puts("Count nodes");+  start = from_array(rows, arr_length);+  int* count = count_nodes(start);+  printf("Number of nodes: %d\n", *count);++  puts("Test turning a dll back into an array");+  Row** from_node = to_array(start);+  print_rows(from_node, arr_length);+  free_rows(rows, arr_length);+}++int main(int argc, string* argv){+  fl_Table_Row_Virtual_Funcs* funcs = (fl_Table_Row_Virtual_Funcs*)Fl_Table_Row_default_virtual_funcs();+  funcs->draw_cell = &draw_cell;+  fl_Double_Window window = (fl_Double_Window)Fl_Double_Window_New_WithLabel(900,500,"Table Sorting");+  Fl_Double_Window_begin(window);+  fl_Table_Row table = (fl_Table_Row)Fl_OverriddenTable_Row_New(MARGIN, MARGIN, Fl_Double_Window_w(window)-MARGIN*2, Fl_Double_Window_h(window)-MARGIN*2,funcs);+  initializeTable(table);+  Fl_Table_Row_set_selection_color(table,FL_YELLOW);+  Fl_Table_Row_set_col_header(table,1);+  Fl_Table_Row_set_col_resize(table,1);+  Fl_Table_Row_set_when(table,FL_WHEN_RELEASE);+  load_command(table,DIRCMD);+  Fl_Table_Row_set_row_height_all(table,18);+  Fl_Table_Row_set_tooltip(table,"Click on column headings to toggle column sorting");+  Fl_Table_Row_set_color(table,FL_WHITE);+  Fl_Double_Window_end(window);+  Fl_Double_Window_set_resizable(window,table);+  resize_window(table);+  Fl_Double_Window_show(window);+  return (Fl_run());+}
+ c-examples/table-spreadsheet-with-keyboard-nav.c view
@@ -0,0 +1,334 @@+#include <stdio.h>+#include <stdlib.h>+#include <string.h>+#include "Fl_C.h"+#include "Fl_EnumerationsC.h"+#include "Fl_Types.h"+#include "Fl_TableC.h"+#include "Fl_Int_InputC.h"+#include "Fl_WindowC.h"+#include "Fl_Double_WindowC.h"+#include "Fl_Value_SliderC.h"+#include "Fl_DrawC.h"+#include "Fl_ValuatorC.h"+#define MAX_COLS 26+#define MAX_ROWS 500+int values[MAX_ROWS][MAX_COLS];++typedef struct {+  int row_edit;+  int col_edit;+  fl_Int_Input input;+  int s_left;+  int s_top;+  int s_right;+  int s_bottom;			// kb nav + mouse selection+} spreadsheet_properties;++void set_value_hide(fl_Table table) {+  spreadsheet_properties* e = (spreadsheet_properties*)Fl_Table_other_data(table);+  fl_Int_Input input = (fl_Int_Input)(e->input);+  int row_edit = e->row_edit;+  int col_edit = e->col_edit;+  const char* input_value = (const char*)Fl_Int_Input_value(input);+  values[row_edit][col_edit] = atoi(input_value);+  Fl_Int_Input_hide(input);+  fl_Window window = (fl_Window)Fl_Table_window(table);+  Fl_Window_set_cursor(window, FL_CURSOR_DEFAULT);+}++void start_editing(fl_Table table, int R, int C) {+  spreadsheet_properties* e = (spreadsheet_properties*)Fl_Table_other_data(table);+  e->row_edit = R;+  e->col_edit = C;+  fl_Int_Input input = (fl_Int_Input)(e->input);+  Fl_Table_set_selection(table,R,C,R,C);+  int X;+  int Y;+  int W;+  int H;+  Fl_Table_find_cell(table,CONTEXT_CELLC, R,C, &X,&Y,&W,&H);+  Fl_Int_Input_resize(input,X,Y,W,H);+  char s[30]; sprintf(s, "%d", values[R][C]);+  Fl_Int_Input_set_value(input,s);+  Fl_Int_Input_set_position_with_cursor_mark(input,0,strlen(s));+  Fl_Int_Input_show(input);+  Fl_Int_Input_take_focus(input);+}+void done_editing(fl_Table table) {+  spreadsheet_properties* e = (spreadsheet_properties*)Fl_Table_other_data(table);+  fl_Int_Input input = (fl_Int_Input)(e->input);+  if (Fl_Int_Input_visible(input)){+    set_value_hide(table);+  }+}+int sum_rows(fl_Table table,int C) {+  int sum = 0;+  int r;+  int rows = Fl_Table_rows(table);+  for (r=0; r<rows-1; ++r)+    sum += values[r][C];+  return(sum);+}+// Return the sum of all cols in this row+int sum_cols(fl_Table table, int R) {+  int sum = 0;+  int c;+  int cols = Fl_Table_cols(table);+  for (c=0; c<cols-1; ++c)+    sum += values[R][c];+  return(sum);+}+// Return the sum of all cells in table+int sum_all(fl_Table table) {+  int sum = 0;+  int c;+  int r;+  int rows = Fl_Table_rows(table);+  int cols = Fl_Table_cols(table);+  for (c=0; c<cols-1; ++c)+    for (r=0; r<rows-1; ++r)+      sum += values[r][c];+  return(sum);+}++void event_callback(fl_Widget w, void* user_data){+  fl_Table table = (fl_Table)w; // only for readability+  spreadsheet_properties* e = (spreadsheet_properties*)Fl_Table_other_data(table);+  fl_Int_Input input = (fl_Int_Input)e->input;+  int R = Fl_Table_callback_row(table);+  int C = Fl_Table_callback_col(table);+  TableContextC context = Fl_Table_callback_context(table);+  int rows = Fl_Table_rows(table);+  int cols = Fl_Table_cols(table);+  switch ( context ) {+  case CONTEXT_CELLC: {+    switch (Fl_event()) {+    case FL_PUSH:+      done_editing(table);+      if (R != rows-1 && C != cols-1 )+	start_editing(table,R,C);+      return;+    case FL_KEYBOARD:+      if ( Fl_event_key() == FL_Escape ) exit(0);+      if (C == Fl_Table_cols(table)-1 || R == Fl_Table_rows(table)-1) return;+      done_editing(table);+      Fl_Table_set_selection(table,R,C,R,C);+      start_editing(table, R,C);+      if (Fl_event() == FL_KEYBOARD && Fl_event_text()[0] != '\r') {+	Fl_Int_Input_handle(input, Fl_event());			// pass keypress to input widget+      }+      return;+    }+    return;+  }+  case CONTEXT_TABLEC:+  case CONTEXT_ROW_HEADERC:+  case CONTEXT_COL_HEADERC:+    done_editing(table);+    return;+  default:+    return;+  }+}+void input_cb(fl_Widget widget, void* user_data){+  set_value_hide((fl_Table)user_data);+}+void initializeTable(fl_Table table){+  Fl_Table_begin(table);+  Fl_Table_set_callback_with_user_data(table, event_callback, (void*)table);+  Fl_Table_set_when(table,FL_WHEN_NOT_CHANGED|Fl_Table_when(table));+  fl_Int_Input input = (fl_Int_Input)Fl_Int_Input_New(Fl_Table_w(table)/2,+  						      Fl_Table_h(table)/2,+  						      0,0);+  Fl_Int_Input_hide(input);+  Fl_Int_Input_set_callback_with_user_data(input, input_cb, (void*)table);+  Fl_Int_Input_set_when(input,FL_WHEN_ENTER_KEY_ALWAYS);+  Fl_Int_Input_set_maximum_size(input,5);+  int c;+  int r;+  for (c = 0; c < MAX_COLS; c++)+    for (r = 0; r < MAX_ROWS; r++)+      values[r][c] = (r + 2) * (c + 3);+  Fl_Table_end(table);+  spreadsheet_properties* e = (spreadsheet_properties*)malloc(sizeof(spreadsheet_properties));+  e->row_edit = 0;+  e->col_edit = 0;+  e->s_top = 0;+  e->s_left = 0;+  e->s_right = 0;+  e->s_bottom = 0;+  e->input = input;+  Fl_Table_set_other_data(table, (void*)e);+  Fl_Table_set_selection(table,0,0,0,0);+}+void draw_cell(fl_Table table,TableContextC context, int R,int C, int X,int Y,int W,int H){++  static char s[30];+  spreadsheet_properties* e = (spreadsheet_properties*)Fl_Table_other_data(table);+  int row_edit = e->row_edit;+  int col_edit = e->col_edit;++  int rows = Fl_Table_rows(table);+  int cols = Fl_Table_cols(table);+  fl_Int_Input input = (fl_Int_Input)e->input;+  switch ( context ) {+  case CONTEXT_STARTPAGEC:+    Fl_Table_get_selection(table, &e->s_top, &e->s_left, &e->s_bottom, &e->s_right);+    break;++  case CONTEXT_COL_HEADERC:+    flc_set_font(FL_HELVETICA | FL_BOLD, 14);+    flc_push_clip(X,Y,W,H);+    {+      flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, Fl_Table_col_header_color(table));+      flc_set_color(FL_BLACK);+      if (C == cols-1) {+	flc_draw_with_align("TOTAL", X,Y,W,H, FL_ALIGN_CENTER);+      } else {+	sprintf(s, "%c", 'A' + C);+	flc_draw_with_align(s, X,Y,W,H, FL_ALIGN_CENTER);+      }+    }+    flc_pop_clip();+    return;++  case CONTEXT_ROW_HEADERC:+    flc_set_font(FL_HELVETICA | FL_BOLD, 14);+    flc_push_clip(X,Y,W,H);+    {+      flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, Fl_Table_row_header_color(table));+      flc_set_color(FL_BLACK);+      if (R == rows-1) {+	flc_draw_with_align("TOTAL", X,Y,W,H, FL_ALIGN_CENTER);+      } else {+	sprintf(s, "%d", R+1);+	flc_draw_with_align(s, X,Y,W,H, FL_ALIGN_CENTER);+      }+    }+    flc_pop_clip();+    return;++  case CONTEXT_CELLC: {+    if (R == row_edit && C == col_edit && Fl_Int_Input_visible(input)) {+      return;+    }+    if (R >= e->s_top && R <= e->s_bottom && C >= e->s_left && C <= e->s_right) {+      flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, FL_YELLOW);+    }+    else if ( C < cols-1 && R < rows-1 ) {+      flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, Fl_Table_is_selected(table,R,C) ? FL_YELLOW : FL_WHITE);+    } else {+      flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, 0xbbddbb00);+    }+    flc_push_clip(X+3, Y+3, W-6, H-6);+    {+      flc_set_color(FL_BLACK);+      if (C == cols-1 || R == rows-1) {+	flc_set_font(FL_HELVETICA | FL_BOLD, 14);+	if (C == cols-1 && R == Fl_Table_rows(table)-1) {+	  sprintf(s, "%d", sum_all(table));+	} else if (C == cols-1) {+	  sprintf(s, "%d", sum_cols(table,R));+	} else if (R == rows-1) {+	  sprintf(s, "%d", sum_rows(table,C));+	}+	flc_draw_with_align(s, X+3,Y+3,W-6,H-6, FL_ALIGN_RIGHT);+      } else {+	flc_set_font(FL_HELVETICA, 14);+	sprintf(s, "%d", values[R][C]);+	flc_draw_with_align(s, X+3,Y+3,W-6,H-6, FL_ALIGN_RIGHT);+      }+    }+    flc_pop_clip();+    return;+    }+    case CONTEXT_RC_RESIZEC: {			// table resizing rows or columns+      if (!Fl_Int_Input_visible(input)) return;+      Fl_Table_find_cell(table,CONTEXT_TABLEC, row_edit, col_edit, &X, &Y, &W, &H);+      if (X==Fl_Int_Input_x(input) && Y==Fl_Int_Input_y(input) && W==Fl_Int_Input_w(input) && H==Fl_Int_Input_h(input)) {+	return;					// no change? ignore+      }+      Fl_Int_Input_resize(input,X,Y,W,H);+      return;+    }+  default:+    return;+  }+}++// Change number of columns+void setcols_cb(fl_Widget w, void* v) {+  fl_Table table = (fl_Table)v;+  fl_Valuator in = (fl_Valuator)w;+  int cols = (int)(Fl_Valuator_value(in)) + 1;+  Fl_Table_set_cols(table,cols);+  Fl_Table_redraw(table);+}++// Change number of rows+void setrows_cb(fl_Widget w, void* v) {+  fl_Table table = (fl_Table)v;+  fl_Valuator in = (fl_Valuator)w;+  int rows = (int)(Fl_Valuator_value(in)) + 1;+  Fl_Table_set_rows(table,rows);+  Fl_Table_redraw(table);+}++int main(){+  Fl_set_option(OPTION_ARROW_FOCUS,1);+  fl_Double_Window win = (fl_Double_Window) Fl_Double_Window_New_WithLabel(922, 382, "Fl_Table Spreadsheet with Keyboard Navigation");+  Fl_Double_Window_begin(win);+  fl_Table_Virtual_Funcs* funcs = (fl_Table_Virtual_Funcs*)Fl_Table_default_virtual_funcs();+  funcs->draw_cell = &draw_cell;+  fl_Table spreadsheet = (fl_Table)Fl_Table_New(20,20,+						Fl_Double_Window_w(win)-80,+						Fl_Double_Window_h(win)-80,+						funcs);+  initializeTable(spreadsheet);+#if FLTK_ABI_VERSION >= 10303+  Fl_Table_set_tab_cell_nav(spreadsheet,1);+#endif+  Fl_Table_set_tooltip(spreadsheet,"Use keyboard to navigate cells:\n Arrow keys or Tab/Shift-Tab");+    // Table rows+  Fl_Table_set_row_header(spreadsheet,1);+  Fl_Table_set_row_header_width(spreadsheet,70);+  Fl_Table_set_row_resize(spreadsheet,1);+  Fl_Table_set_rows(spreadsheet,11);+  Fl_Table_set_row_height_all(spreadsheet,25);+  // Table cols+  Fl_Table_set_col_header(spreadsheet,1);+  Fl_Table_set_col_header_height(spreadsheet,25);+  Fl_Table_set_col_resize(spreadsheet,1);+  Fl_Table_set_cols(spreadsheet,11);+  Fl_Table_set_col_width_all(spreadsheet,70);+++  Fl_Double_Window_begin(win);++  // Row slider+  fl_Value_Slider setrows = (fl_Value_Slider)Fl_Value_Slider_New(Fl_Double_Window_w(win)-40,20,20,Fl_Double_Window_h(win)-80);+  Fl_Value_Slider_set_type(setrows,FL_VERT_NICE_SLIDER);+  Fl_Value_Slider_bounds(setrows,2,MAX_ROWS);+  Fl_Value_Slider_set_step(setrows,1);+  Fl_Value_Slider_set_value(setrows,Fl_Table_rows(spreadsheet)-1);+  Fl_Value_Slider_set_callback_with_user_data(setrows,setrows_cb, (void*)spreadsheet);+  Fl_Value_Slider_set_when(setrows,FL_WHEN_CHANGED);+  Fl_Value_Slider_clear_visible_focus(setrows);++  // Column slider+  fl_Value_Slider setcols = (fl_Value_Slider)Fl_Value_Slider_New(20,Fl_Double_Window_h(win)-40,Fl_Double_Window_w(win)-80,20);++  Fl_Value_Slider_set_type(setcols,FL_HOR_NICE_SLIDER);+  Fl_Value_Slider_bounds(setcols,2,MAX_COLS);+  Fl_Value_Slider_set_step(setcols,1);+  Fl_Value_Slider_set_value(setcols,Fl_Table_cols(spreadsheet)-1);+  Fl_Value_Slider_set_callback_with_user_data(setcols,setcols_cb, (void*)spreadsheet);+  Fl_Value_Slider_set_when(setcols,FL_WHEN_CHANGED);+  Fl_Value_Slider_clear_visible_focus(setcols);++  Fl_Double_Window_end(win);+  Fl_Double_Window_set_resizable(win,spreadsheet);+  Fl_Double_Window_show(win);+  return Fl_run();+}
+ c-examples/table-spreadsheet.c view
@@ -0,0 +1,273 @@+#include <stdio.h>+#include <stdlib.h>+#include <string.h>+#include "Fl_C.h"+#include "Fl_EnumerationsC.h"+#include "Fl_Types.h"+#include "Fl_TableC.h"+#include "Fl_Int_InputC.h"+#include "Fl_WindowC.h"+#include "Fl_Double_WindowC.h"+#include "Fl_DrawC.h"+#define MAX_ROWS 10+#define MAX_COLS 10+int values[MAX_ROWS][MAX_COLS];		// data array for cells++typedef struct {+  int row_edit;+  int col_edit;+  fl_Int_Input input;+} spreadsheet_properties;+void set_value_hide(fl_Table table) {+  spreadsheet_properties* e = (spreadsheet_properties*)Fl_Table_other_data(table);+  fl_Int_Input input = (fl_Int_Input)(e->input);+  int row_edit = e->row_edit;+  int col_edit = e->col_edit;+  const char* input_value = (const char*)Fl_Int_Input_value(input);+  values[row_edit][col_edit] = atoi(input_value);+  Fl_Int_Input_hide(input);+  fl_Window window = (fl_Window)Fl_Table_window(table);+  Fl_Window_set_cursor(window, FL_CURSOR_DEFAULT);+}++void start_editing(fl_Table table, int R, int C) {+  spreadsheet_properties* e = (spreadsheet_properties*)Fl_Table_other_data(table);+  e->row_edit = R;+  e->col_edit = C;+  fl_Int_Input input = (fl_Int_Input)(e->input);+  Fl_Table_set_selection(table,R,C,R,C);+  int X;+  int Y;+  int W;+  int H;+  Fl_Table_find_cell(table,CONTEXT_CELLC, R,C, &X,&Y,&W,&H);+  Fl_Int_Input_resize(input,X,Y,W,H);+  char s[30]; sprintf(s, "%d", values[R][C]);+  Fl_Int_Input_set_value(input,s);+  Fl_Int_Input_set_position_with_cursor_mark(input,0,strlen(s));+  Fl_Int_Input_show(input);+  Fl_Int_Input_take_focus(input);+}+void done_editing(fl_Table table) {+  spreadsheet_properties* e = (spreadsheet_properties*)Fl_Table_other_data(table);+  fl_Int_Input input = (fl_Int_Input)(e->input);+  if (Fl_Int_Input_visible(input)){+    set_value_hide(table);+  }+}+int sum_rows(fl_Table table,int C) {+  int sum = 0;+  int r;+  int rows = Fl_Table_rows(table);+  for (r=0; r<rows-1; ++r)+    sum += values[r][C];+  return(sum);+}+// Return the sum of all cols in this row+int sum_cols(fl_Table table, int R) {+  int sum = 0;+  int c;+  int cols = Fl_Table_cols(table);+  for (c=0; c<cols-1; ++c)+    sum += values[R][c];+  return(sum);+}+// Return the sum of all cells in table+int sum_all(fl_Table table) {+  int sum = 0;+  int c;+  int r;+  int rows = Fl_Table_rows(table);+  int cols = Fl_Table_cols(table);+  for (c=0; c<cols-1; ++c)+    for (r=0; r<rows-1; ++r)+      sum += values[r][c];+  return(sum);+}++void event_callback(fl_Widget w, void* user_data){+  fl_Table table = (fl_Table)w; // only for readability+  spreadsheet_properties* e = (spreadsheet_properties*)Fl_Table_other_data(table);+  fl_Int_Input input = (fl_Int_Input)e->input;+  int R = Fl_Table_callback_row(table);+  int C = Fl_Table_callback_col(table);+  TableContextC context = Fl_Table_callback_context(table);+  int rows = Fl_Table_rows(table);+  int cols = Fl_Table_cols(table);+  switch ( context ) {+  case CONTEXT_CELLC: {+    switch (Fl_event()) {+    case FL_PUSH:+      done_editing(table);+      if (R != rows-1 && C != cols-1 )+	start_editing(table,R,C);+      return;+    case FL_KEYBOARD:+      if ( Fl_event_key() == FL_Escape ) exit(0);+      done_editing(table);+      if (C==cols-1 || R==rows-1) return;+      switch ( Fl_event_text()[0] ) {+      case '0': case '1': case '2': case '3':+      case '4': case '5': case '6': case '7':+      case '8': case '9': case '+': case '-':+	start_editing(table,R,C);+	Fl_Int_Input_handle(input,Fl_event());+	break;+      case '\r': case '\n':+	start_editing(table,R,C);+	break;+      }+      return;+    }+    return;+  }+  case CONTEXT_TABLEC:+  case CONTEXT_ROW_HEADERC:+  case CONTEXT_COL_HEADERC:+    done_editing(table);+    return;+  default:+    return;+  }+}+void input_cb(fl_Table table, void* user_data){+  set_value_hide((fl_Table)user_data);+}+void initializeTable(fl_Table table){+  Fl_Table_begin(table);+  Fl_Table_set_callback_with_user_data(table, (fl_Callback*)event_callback, (void*)table);+  Fl_Table_set_when(table,FL_WHEN_NOT_CHANGED|Fl_Table_when(table));+  fl_Int_Input input = (fl_Int_Input)Fl_Int_Input_New(Fl_Table_w(table)/2,+  						      Fl_Table_h(table)/2,+  						      0,0);+  Fl_Int_Input_hide(input);+  Fl_Int_Input_set_callback_with_user_data(input, (fl_Callback*)input_cb, (void*)table);+  Fl_Int_Input_set_when(input,FL_WHEN_ENTER_KEY_ALWAYS);+  Fl_Int_Input_set_maximum_size(input,5);+  Fl_Int_Input_set_color(input,FL_YELLOW);+  int c;+  int r;+  for (c = 0; c < MAX_COLS; c++)+    for (r = 0; r < MAX_ROWS; r++)+      values[r][c] = c + (r*MAX_COLS);		// initialize cells+  Fl_Table_end(table);+  spreadsheet_properties* e = (spreadsheet_properties*)malloc(sizeof(spreadsheet_properties));+  e->row_edit = 0;+  e->col_edit = 0;+  e->input = input;+  Fl_Table_set_other_data(table, (void*)e);+  Fl_Table_set_selection(table,0,0,0,0);+}++void draw_cell(fl_Table table,TableContextC context, int R,int C, int X,int Y,int W,int H){+  static char s[30];+  spreadsheet_properties* e = (spreadsheet_properties*)Fl_Table_other_data(table);+  int row_edit = e->row_edit;+  int col_edit = e->col_edit;+  int rows = Fl_Table_rows(table);+  int cols = Fl_Table_cols(table);+  fl_Int_Input input = (fl_Int_Input)e->input;+  switch ( context ) {+  case CONTEXT_STARTPAGEC:+    break;++  case CONTEXT_COL_HEADERC:+    flc_set_font(FL_HELVETICA | FL_BOLD, 14);+    flc_push_clip(X,Y,W,H);+    {+      flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, Fl_Table_col_header_color(table));+      flc_set_color(FL_BLACK);+      if (C == cols-1) {+	flc_draw_with_align("TOTAL", X,Y,W,H, FL_ALIGN_CENTER);+      } else {+	sprintf(s, "%c", 'A' + C);+	flc_draw_with_align(s, X,Y,W,H, FL_ALIGN_CENTER);+      }+    }+    flc_pop_clip();+    return;++  case CONTEXT_ROW_HEADERC:+    flc_set_font(FL_HELVETICA | FL_BOLD, 14);+    flc_push_clip(X,Y,W,H);+    {+      flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, Fl_Table_row_header_color(table));+      flc_set_color(FL_BLACK);+      if (R == rows-1) {+	flc_draw_with_align("TOTAL", X,Y,W,H, FL_ALIGN_CENTER);+      } else {+	sprintf(s, "%d", R+1);+	flc_draw_with_align(s, X,Y,W,H, FL_ALIGN_CENTER);+      }+    }+    flc_pop_clip();+    return;++  case CONTEXT_CELLC: {+    if (R == row_edit && C == col_edit && Fl_Int_Input_visible(input)) {+      return;+    }+    if ( C < cols-1 && R < rows-1 ) {+      flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, Fl_Table_is_selected(table,R,C) ? FL_YELLOW : FL_WHITE);+    } else {+      flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, 0xbbddbb00);+    }+    flc_push_clip(X+3, Y+3, W-6, H-6);+    {+      flc_set_color(FL_BLACK);+      if (C == cols-1 || R == rows-1) {+	flc_set_font(FL_HELVETICA | FL_BOLD, 14);+	if (C == cols-1 && R == Fl_Table_rows(table)-1) {+	  sprintf(s, "%d", sum_all(table));+	} else if (C == cols-1) {+	  sprintf(s, "%d", sum_cols(table,R));+	} else if (R == rows-1) {+	  sprintf(s, "%d", sum_rows(table,C));+	}+	flc_draw_with_align(s, X+3,Y+3,W-6,H-6, FL_ALIGN_RIGHT);+      } else {+	flc_set_font(FL_HELVETICA, 14);+	sprintf(s, "%d", values[R][C]);+	flc_draw_with_align(s, X+3,Y+3,W-6,H-6, FL_ALIGN_RIGHT);+      }+    }+    flc_pop_clip();+    return;+  }+  default:+    return;+  }+}++int main(){+  fl_Double_Window win = (fl_Double_Window) Fl_Double_Window_New_WithLabel(862,322,"Fl_Table Spreadsheet");+  Fl_Double_Window_begin(win);+  fl_Table_Virtual_Funcs* funcs = (fl_Table_Virtual_Funcs*)Fl_Table_default_virtual_funcs();+  funcs->draw_cell = &draw_cell;+  fl_Table spreadsheet = (fl_Table)Fl_Table_New(10,10,+						Fl_Double_Window_w(win)-20,+						Fl_Double_Window_h(win)-20,+						funcs);+  initializeTable(spreadsheet);+#if FLTK_ABI_VERSION >= 10303+  Fl_Table_set_tab_cell_nav(spreadsheet,1);+#endif+  Fl_Table_set_tooltip(spreadsheet,"Use keyboard to navigate cells:\n Arrow keys or Tab/Shift-Tab");+    // Table rows+  Fl_Table_set_row_header(spreadsheet,1);+  Fl_Table_set_row_header_width(spreadsheet,70);+  Fl_Table_set_row_resize(spreadsheet,1);+  Fl_Table_set_rows(spreadsheet,MAX_ROWS+1);+  Fl_Table_set_row_height_all(spreadsheet,25);+  // Table cols+  Fl_Table_set_col_header(spreadsheet,1);+  Fl_Table_set_col_header_height(spreadsheet,25);+  Fl_Table_set_col_resize(spreadsheet,1);+  Fl_Table_set_cols(spreadsheet,MAX_COLS+1);+  Fl_Table_set_col_width_all(spreadsheet,70);++  Fl_Double_Window_end(win);+  Fl_Double_Window_set_resizable(win,spreadsheet);+  Fl_Double_Window_show(win);+  return Fl_run();+}
+ c-examples/table-with-keynav.c view
@@ -0,0 +1,146 @@+#include <Fl_C.h>+#include <Fl_DrawC.h>+#include <Fl_Double_WindowC.h>+#include <Fl_Toggle_ButtonC.h>+#include <Fl_OutputC.h>+#include <Fl_TableC.h>+#include <Fl_Table_RowC.h>+#include <FL/names.h>+#include <stdio.h>+#include <stdlib.h>+#include <string.h>++fl_Toggle_Button G_rowselect = 0;+fl_Table_Row     G_table = 0;+fl_Output        G_sum = 0;++void draw_cell(fl_Table_Row table_row,TableContextC context, int R,int C, int X,int Y,int W,int H){+  static char s[30];+  switch ( context ) {+  case CONTEXT_COL_HEADERC:+  case CONTEXT_ROW_HEADERC:+    flc_set_font(FL_HELVETICA | FL_BOLD, 14);+    flc_push_clip(X,Y,W,H);+    {+      flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, Fl_Table_col_header_color(table_row));+      flc_set_color(FL_BLACK);+      sprintf(s, "%d", (context == CONTEXT_COL_HEADERC) ? C : R);+      flc_draw_with_align(s, X, Y, W, H, FL_ALIGN_CENTER);+    }+    flc_pop_clip();+    return;++  case CONTEXT_CELLC: {+    int selected = Fl_Toggle_Button_value(G_rowselect) ? Fl_Table_Row_row_selected(table_row,R) : Fl_Table_Row_is_selected(table_row,R,C);+    flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H,selected ? FL_YELLOW:FL_WHITE);+    flc_push_clip(X+3,Y+3,W-6,H-6);+    {+      flc_set_font(FL_HELVETICA, 14);+      flc_set_color(FL_BLACK);+      sprintf(s, "%d", R*C);+      flc_draw_with_align(s, X+3,Y+3,W-6,H-6, FL_ALIGN_CENTER);+    }+    flc_pop_clip();+    return;+  }+  default:+    return;+  }+}+void initializeTable(fl_Table_Row table_row){+  Fl_Table_Row_begin(table_row);+  Fl_Table_Row_set_row_header_width(table_row,70);+  Fl_Table_Row_set_row_header(table_row,1);+  Fl_Table_Row_set_row_resize(table_row,1);+  Fl_Table_Row_set_rows(table_row,11);+  Fl_Table_Row_set_row_height_all(table_row,20);+  Fl_Table_Row_set_col_header(table_row,1);+  Fl_Table_Row_set_col_header_height(table_row,20);+  Fl_Table_Row_set_col_resize(table_row,1);+  Fl_Table_Row_set_cols(table_row,11);+  Fl_Table_Row_set_col_width_all(table_row,70);+  Fl_Table_Row_end(table_row);+}++int GetSelectionSum(fl_Table_Row table_row){+  int sum = -1;+  int R = 0;+  int rows =  Fl_Table_Row_rows(table_row);+  int cols = Fl_Table_Row_cols(table_row);+  for(;R<rows;R++){+    int C = 0;+    for (;C<cols;C++){+      if (Fl_Toggle_Button_value(G_rowselect) ? Fl_Table_Row_row_selected(table_row,R) : Fl_Table_Row_is_selected(table_row,R,C)) {+	if ( sum == -1 ) sum = 0;+	sum += R*C;+      }+    }+  }+  return(sum);+}+void UpdateSum(fl_Table_Row table_row) {+  static char s[80];+  int sum = GetSelectionSum(table_row);+  if ( sum == -1 ) { sprintf(s, "(nothing selected)"); Fl_Output_set_color(G_sum, 48); }+  else             { sprintf(s, "%d", sum); Fl_Output_set_color(G_sum,FL_WHITE); }+  // Update only if different (lets one copy/paste from sum)+  if ( strcmp(s,Fl_Output_value(G_sum)))+    { Fl_Output_set_value(G_sum,s); Fl_Output_redraw(G_sum); }+}++int handle(fl_Table_Row table_row, int e){+  int ret = Fl_Table_Row_handle_super(table_row,e);+  if ( e == FL_KEYBOARD && Fl_event_key() == FL_Escape ) exit(0);+  switch (e) {+  case FL_PUSH:+  case FL_RELEASE:+  case FL_KEYUP:+  case FL_KEYDOWN:+  case FL_DRAG:+ {+    UpdateSum(table_row);+    Fl_Table_Row_redraw(table_row);+    break;+  }+  case FL_FOCUS:+  case FL_UNFOCUS:+    ret = 1;+    break;+  }+  return(ret);+}+void RowSelect_CB(fl_Widget w, void* user_data) {+  fl_Toggle_Button b = (fl_Toggle_Button)w;+  fl_Double_Window window = Fl_Toggle_Button_window(b);+  Fl_Double_Window_redraw(window);+  fl_Table_Row r = (fl_Table_Row)user_data;+  UpdateSum(r);+}+int main (int argc, char** argv){+  Fl_set_option(OPTION_ARROW_FOCUS,0);+  fl_Double_Window win = (fl_Double_Window) Fl_Double_Window_New_WithLabel(862, 312, "Times Table");+  Fl_Double_Window_begin(win);++  fl_Table_Row_Virtual_Funcs* funcs = Fl_Table_Row_default_virtual_funcs();+  funcs->draw_cell = &draw_cell;+  funcs->handle = &handle;+  G_table = (fl_Table_Row)Fl_OverriddenTable_Row_New_WithLabel(10, 30, Fl_Double_Window_w(win)-20, Fl_Double_Window_h(win)-70, "Times Table", funcs);+  initializeTable(G_table);+  Fl_Table_Row_set_tooltip(G_table,"Use mouse or Shift + Arrow Keys to make selections.\n Sum of selected values is shown.");+  G_rowselect = (fl_Toggle_Button)Fl_Toggle_Button_New_WithLabel(140,10,12,12,"Row selection");+  Fl_Toggle_Button_set_align(G_rowselect,FL_ALIGN_LEFT);+  Fl_Toggle_Button_set_value(G_rowselect,0);+  Fl_Toggle_Button_set_selection_color(G_rowselect,FL_YELLOW);+  Fl_Toggle_Button_set_callback_with_user_data(G_rowselect,RowSelect_CB, (void*)G_table);+  Fl_Toggle_Button_set_tooltip(G_rowselect,"Click to toggle row vs. row/col selection");+  Fl_Double_Window_end(win);+  Fl_Double_Window_begin(win);+  G_sum = (fl_Output)Fl_Output_New_WithLabel(140,Fl_Table_Row_y(G_table)+Fl_Table_Row_h(G_table)+10,160,25,"Selection Sum:");+  Fl_Output_set_value(G_sum,"(nothing selected)");+  Fl_Output_set_color(G_sum,48);+  Fl_Output_set_tooltip(G_sum,"This field shows the sum of the selected cells in the table");+  Fl_Double_Window_end(win);+  Fl_Double_Window_set_resizable(win, G_table);+  Fl_Double_Window_show(win);+  return (Fl_run());+}
+ c-examples/tabs-simple.c view
@@ -0,0 +1,47 @@+#include <Fl_C.h>+#include <Fl_WindowC.h>+#include <Fl_TabsC.h>+#include <Fl_ButtonC.h>+#include <Fl_GroupC.h>++int main (int argc, char** argv){+  Fl_set_scheme("gtk+");+  fl_Window win = (fl_Window)Fl_Window_New_WithLabel(500,200,"Tabs Example");+  {++    // Create the tab widget+    fl_Tabs tabs = (fl_Tabs)Fl_Tabs_New(10,10,500-20,200-20);+    {+      fl_Group aaa = (fl_Group)Fl_Group_New_WithLabel(10,35,500-20,200-45,"Aaa");+      {+	fl_Button b1 = (fl_Button)Fl_Button_New_WithLabel(50, 60,90,25,"Button A1");+	Fl_Button_set_color(b1,88+1);+	fl_Button b2 = (fl_Button)Fl_Button_New_WithLabel(50, 90,90,25,"Button A2");+	Fl_Button_set_color(b2,88+2);+	fl_Button b3 = (fl_Button)Fl_Button_New_WithLabel(50, 120,90,25,"Button A3");+	Fl_Button_set_color(b3,88+3);+      }+      Fl_Group_end(aaa);+      fl_Group bbb = (fl_Group)Fl_Group_New_WithLabel(10,35,500-20,200-45,"Bbb");+      {+	fl_Button b1 = (fl_Button)Fl_Button_New_WithLabel(50, 60,90,25,"Button B1");+	Fl_Button_set_color(b1,88+1);+	fl_Button b2 = (fl_Button)Fl_Button_New_WithLabel(150, 60,90,25,"Button B2");+	Fl_Button_set_color(b2,88+3);+	fl_Button b3 = (fl_Button)Fl_Button_New_WithLabel(50, 60,90,25,"Button B3");+	Fl_Button_set_color(b3,88+5);+	fl_Button b4 = (fl_Button)Fl_Button_New_WithLabel(50, 60,90,25,"Button B4");+	Fl_Button_set_color(b4,88+2);+	fl_Button b5 = (fl_Button)Fl_Button_New_WithLabel(150, 60,90,25,"Button B5");+	Fl_Button_set_color(b5,88+4);+	fl_Button b6 = (fl_Button)Fl_Button_New_WithLabel(250, 60,90,25,"Button B6");+	Fl_Button_set_color(b6,88+6);+      }+      Fl_Group_end(bbb);+    }+    Fl_Tabs_end(tabs);+  }+  Fl_Window_end(win);+  Fl_Window_show_with_args(win, argc, argv);+  return (Fl_run());+}
+ c-examples/textdisplay-with-colors.c view
@@ -0,0 +1,25 @@+#include <stdio.h>+#include <Fl_C.h>+#include <Fl_WindowC.h>+#include <Fl_Text_DisplayC.h>+#include <Fl_Text_BufferC.h>+int main(int argc, char** argv){+   Style_Table_Entry stable[] = {+       {  FL_RED,         FL_COURIER, 18 },+       {  FL_DARK_YELLOW, FL_COURIER, 18 },+       {  FL_DARK_GREEN,  FL_COURIER, 18 },+       {  FL_BLUE,        FL_COURIER, 18 },+   };+   fl_Window win = (fl_Window)Fl_Window_New_WithLabel(640, 480, "Simple Text Display With Colors");+   fl_Text_Display disp = (fl_Text_Display)Fl_Text_Display_New(20, 20, 640-40, 480-40);+   fl_Text_Buffer tbuff = (fl_Text_Buffer)Fl_Text_Buffer_New();+   fl_Text_Buffer sbuff = (fl_Text_Buffer)Fl_Text_Buffer_New();+   Fl_Text_Display_set_buffer(disp,tbuff);+   int stable_size = sizeof(stable)/sizeof(stable[0]);	// # entries in style table (4)+   Fl_Text_Display_highlight_data(disp,sbuff, stable, stable_size, 'A', 0, 0);+   Fl_Text_Buffer_set_text(tbuff,"Red Line 1\nYel Line 2\nGrn Line 3\nBlu Line 4\nRed Line 5\nYel Line 6\nGrn Line 7\nBlu Line 8\n");+   Fl_Text_Buffer_set_text(sbuff,"AAAAAAAAAA\nBBBBBBBBBB\nCCCCCCCCCC\nDDDDDDDDDD\nAAAAAAAAAA\nBBBBBBBBBB\nCCCCCCCCCC\nDDDDDDDDDD\n");+   Fl_Window_set_resizable(win,disp);+   Fl_Window_show(win);+   return (Fl_run());+}
+ c-examples/texteditor-simple.c view
@@ -0,0 +1,14 @@+#include "Fl_C.h"+#include "Fl_Double_WindowC.h"+#include "Fl_Text_EditorC.h"+#include "Fl_Text_BufferC.h"+int main(int argc, char** argv){+  fl_Double_Window win = (fl_Double_Window)Fl_Double_Window_New_WithLabel(640, 480, "Simple Fl_Text_Editor");+  fl_Text_Buffer buff = (fl_Text_Buffer)Fl_Text_Buffer_New();+  fl_Text_Editor edit = (fl_Text_Editor)Fl_Text_Editor_New(20, 20, 640-40, 480-40);+  Fl_Text_Editor_set_buffer(edit, buff);+  Fl_Double_Window_set_resizable(win,edit);+  Fl_Double_Window_show(win);+  Fl_Text_Buffer_set_text(buff,"line 0\nline 1\nline 2\nline 3\nline 4\nline 5\nline 6\nline 7\nline 8\nline 9\nline 10\nline 11\nline 12\nline 13\nline 14\nline 15\nline 16\nline 17\nline 18\nline 19\nline 20\nline 21\nline 22\nline 23\n");+  return (Fl_run());+}
+ c-examples/tree-of-tables.c view
@@ -0,0 +1,142 @@+#include <stdio.h>+#include <math.h>		// powf()+#include <string.h>+#include "Fl_C.h"+#include "Fl_EnumerationsC.h"+#include "Fl_Double_WindowC.h"+#include "Fl_TableC.h"+#include "Fl_DrawC.h"+#include "Fl_TreeC.h"+#include "Fl_Tree_ItemC.h"+#include "Fl_AskC.h"+#ifndef PI+#define PI 3.14159+#endif++#if FLTK_ABI_VERSION >= 10301+void initializeTable(fl_Table table, char* m){+  void* user_data = (void*)m;+  Fl_Table_set_other_data(table,user_data);+  Fl_Table_begin(table);+  Fl_Table_set_rows(table,11);+  Fl_Table_set_row_height_all(table,20);+  Fl_Table_set_row_header(table,1);+  Fl_Table_set_cols(table,11);+  Fl_Table_set_col_width_all(table,60);+  Fl_Table_set_col_header(table,1);+  Fl_Table_set_col_resize(table,1);+  Fl_Table_end(table);+}+void resize(fl_Table table,int X,int Y,int W,int H){+  if ( W > 718 ) W = 718;+  H = Fl_Table_h(table);+  Fl_Table_resize_super(table,X,Y,W,H);+}++void draw_cell(fl_Table table,TableContextC context, int ROW, int COL, int X, int Y, int W, int H){+  static char s[40];+  char* mode = (char*)Fl_Table_other_data(table);+  switch ( context ) {+      case CONTEXT_STARTPAGEC:         // before page is drawn..+        flc_set_font(FL_HELVETICA, 10);    // set the font for our drawing operations+        return;+      case CONTEXT_COL_HEADERC:	      // Drawing column/row headers+      case CONTEXT_ROW_HEADERC: {+        int val = context==CONTEXT_COL_HEADERC ? COL : ROW;+        int col = context==CONTEXT_COL_HEADERC ? Fl_Table_col_header_color(table) : Fl_Table_row_header_color(table);+        flc_push_clip(X,Y,W,H);+	if ( strcmp(mode, "SinCos" ) == 0 ) { sprintf(s, "%.2f", ((val/10.0)*PI)); }+	else sprintf(s,"%d",val);+	flc_draw_box(FL_THIN_UP_BOX, X,Y,W,H, col);+	flc_set_color(FL_BLACK);+	flc_draw_with_align(s, X,Y,W,H, FL_ALIGN_CENTER);+        flc_pop_clip();+        return;+      }+      case CONTEXT_CELLC: {            // Draw data in cells+        int col = Fl_Table_is_selected(table,ROW,COL) ? FL_YELLOW : FL_WHITE;+        flc_push_clip(X,Y,W,H);+        if ( strcmp(mode, "Addition") == 0 ) { sprintf(s, "%d", ROW+COL); } else+        if ( strcmp(mode, "Subtract") == 0 ) { sprintf(s, "%d", ROW-COL); } else+	if ( strcmp(mode, "Multiply") == 0 ) { sprintf(s, "%d", ROW*COL); } else+	if ( strcmp(mode, "Divide"  ) == 0 ) { if ( COL==0 ) sprintf(s, "N/A"); else sprintf(s, "%.2f", (float)ROW/(float)COL); } else+	if ( strcmp(mode, "Exponent") == 0 ) { sprintf(s, "%g", powf((float)ROW,(float)COL)); } else+	if ( strcmp(mode, "SinCos"  ) == 0 ) { sprintf(s, "%.2f", sin((ROW/10.0)*PI) * cos((COL/10.0)*PI)); } else+	                                     { sprintf(s, "???"); }+	flc_set_color(col); flc_rectf(X,Y,W,H);				// bg+	flc_set_color(FL_GRAY0); flc_draw_with_align(s, X,Y,W,H, FL_ALIGN_CENTER);	// text+	flc_set_color(Fl_Table_color(table));  flc_rect(X,Y,W,H);				// box+        flc_pop_clip();+        return;+      }+      default:+        return;+    }+}+int main(int argc, char *argv[]) {+  fl_Double_Window win = (fl_Double_Window)Fl_Double_Window_New_WithLabel(700,400,"Tree Of Tables");+  Fl_Double_Window_begin(win);+  {+    fl_Tree tree = (fl_Tree)Fl_Tree_New(10,10,Fl_Double_Window_w(win)-20,Fl_Double_Window_h(win)-20);+    fl_Tree_Item root = (fl_Tree_Item)Fl_Tree_root(tree);+    Fl_Tree_Item_set_label(root, "Math Tables");+    Fl_Tree_set_item_labelfont(tree,FL_COURIER);+    Fl_Tree_set_linespacing(tree,4);+    Fl_Tree_set_item_draw_mode(tree,+			       Fl_Tree_item_draw_mode(tree)|+			       FL_TREE_ITEM_DRAW_LABEL_AND_WIDGET |+			       FL_TREE_ITEM_HEIGHT_FROM_WIDGET);+    Fl_Tree_set_selectmode(tree, FL_TREE_SELECT_NONE);+    Fl_Tree_set_widgetmarginleft(tree, 12);+    Fl_Tree_set_connectorstyle(tree,FL_TREE_CONNECTOR_DOTTED);+    Fl_Tree_begin(tree);+    {+      fl_Table table;+      fl_Tree_Item item;+      fl_Table_Virtual_Funcs* funcs = (fl_Table_Virtual_Funcs*)Fl_Table_default_virtual_funcs();+      funcs->resize = &resize;+      funcs->draw_cell = &draw_cell;++      table = (fl_Table)Fl_Table_New(0,0,500,156,funcs);+      initializeTable(table,"Addition");+      item = (fl_Tree_Item)Fl_Tree_add(tree, "Arithmetic/Addition");+      Fl_Tree_Item_set_widget(item, table);++      table = (fl_Table)Fl_Table_New(0,0,500,156,funcs);+      initializeTable(table,"Subtract");+      item = (fl_Tree_Item)Fl_Tree_add(tree, "Arithmetic/Subtract");+      Fl_Tree_Item_set_widget(item, table);++      table = (fl_Table)Fl_Table_New(0,0,500,156,funcs);+      initializeTable(table,"Multiply");+      item = (fl_Tree_Item)Fl_Tree_add(tree, "Arithmetic/Multiply");+      Fl_Tree_Item_set_widget(item, table);++      table = (fl_Table)Fl_Table_New(0,0,500,156,funcs);+      initializeTable(table,"Divide");+      item = (fl_Tree_Item)Fl_Tree_add(tree, "Arithmetic/Divide");+      Fl_Tree_Item_set_widget(item, table);++      table = (fl_Table)Fl_Table_New(0,0,500,156,funcs);+      initializeTable(table,"Exponent");+      item = (fl_Tree_Item)Fl_Tree_add(tree, "Misc/Exponent");+      Fl_Tree_Item_set_widget(item, table);++      table = (fl_Table)Fl_Table_New(0,0,500,156,funcs);+      initializeTable(table,"SinCos");+      item = (fl_Tree_Item)Fl_Tree_add(tree, "Misc/Sin*Cos");+      Fl_Tree_Item_set_widget(item, table);+    }+    Fl_Tree_end(tree);+  }+  Fl_Double_Window_end(win);+  Fl_Double_Window_set_resizable(win,win);+  Fl_Double_Window_show(win);+  return Fl_run();+}+#else+int main(int argc, char *argv[]) {+  flc_alert("This example must have FLTK_ABI_VERSION enabled to work properly.");+  return 0;+}+#endif
+ c-examples/tree-simple.c view
@@ -0,0 +1,57 @@+#include <stdio.h>+#include "Fl_C.h"+#include "Fl_EnumerationsC.h"+#include "Fl_Types.h"+#include "Fl_WindowC.h"+#include "Fl_TreeC.h"+#include "Fl_Tree_ItemC.h"++void TreeCallback(fl_Widget w, void* data){+  fl_Tree tree = (fl_Tree)w;+  fl_Tree_Item item = (fl_Tree_Item)Fl_Tree_callback_item(tree);+  if (! item ) return;+  switch( Fl_Tree_callback_reason(tree)) {+    case FL_TREE_REASON_SELECTED: {+      char pathname[256];+      Fl_Tree_item_pathname(tree,pathname, sizeof(pathname), item);+      printf("TreeCallback: Item selected='%s', Full pathname='%s'\n", (const char*)(Fl_Tree_Item_label(item)), pathname);+      break;+    }+    case FL_TREE_REASON_DESELECTED:+      printf("TreeCallback: Item '%s' deselected\n", (const char*)(Fl_Tree_Item_label(item)));+      break;+    case FL_TREE_REASON_OPENED:+      printf("TreeCallback: Item '%s' opened\n", (const char*)(Fl_Tree_Item_label(item)));+      break;+    case FL_TREE_REASON_CLOSED:+      printf("TreeCallback: Item '%s' closed\n", (const char*)(Fl_Tree_Item_label(item)));+    default:+      break;+  }+}+int main(int argc, char** argv) {+  Fl_set_scheme("gtk+");+  fl_Window window = (fl_Window)Fl_Window_New_WithLabel(250,400,"Simple Tree");+  Fl_Window_begin(window);+  fl_Tree tree = (fl_Tree)Fl_Tree_New(10,10,Fl_Window_w(window)-20,Fl_Window_h(window)-20);+  Fl_Tree_set_showroot(tree,0);++  Fl_Tree_add(tree,"Flintstones/Fred");+  Fl_Tree_add(tree,"Flintstones/Wilma");+  Fl_Tree_add(tree,"Flintstones/Pebbles");+  Fl_Tree_add(tree,"Simpsons/Homer");+  Fl_Tree_add(tree,"Simpsons/Marge");+  Fl_Tree_add(tree,"Simpsons/Bart");+  Fl_Tree_add(tree,"Simpsons/Lisa");+  Fl_Tree_add(tree,"Pathnames/\\/bin");		// front slashes+  Fl_Tree_add(tree,"Pathnames/\\/usr\\/sbin");+  Fl_Tree_add(tree,"Pathnames/C:\\\\Program Files");	// backslashes+  Fl_Tree_add(tree,"Pathnames/C:\\\\Documents and Settings");++  Fl_Tree_close_with_path(tree,"Simpsons");+  Fl_Tree_close_with_path(tree,"Pathnames");+  Fl_Tree_set_callback(tree,TreeCallback);+  Fl_Window_end(window);+  Fl_Window_show(window);+  return Fl_run();+}
+ c-examples/wizard-simple.c view
@@ -0,0 +1,68 @@+#include <stdlib.h>+#include "Fl_C.h"+#include "Fl_WindowC.h"+#include "Fl_GroupC.h"+#include "Fl_WizardC.h"+#include "Fl_ButtonC.h"+#include "Fl_Multiline_OutputC.h"++fl_Window G_win = 0;+fl_Wizard G_wiz = 0;++void back_cb(fl_Widget w, void* user_data){+  Fl_Wizard_prev(G_wiz);+}+void next_cb(fl_Widget w, void* user_data){+  Fl_Wizard_next(G_wiz);+}+void done_cb(fl_Widget w, void* user_data){+  exit(0);+}+int main (int argc, char** argv){+  G_win = (fl_Window)Fl_Window_New_WithLabel(400,300,"Example Wizard");+  G_wiz = (fl_Wizard)Fl_Wizard_New(0,0,400,300);+  Fl_Wizard_begin(G_wiz);+  {+    fl_Group g = (fl_Group)Fl_Group_New(0,0,400,300);+    fl_Button next = (fl_Button)Fl_Button_New_WithLabel(290,265,100,25,"Next @->");+    Fl_Button_set_callback(next,next_cb);++    fl_Multiline_Output out = (fl_Multiline_Output)Fl_Multiline_Output_New_WithLabel(10,30,400-20,300-80,"Welcome");+    Fl_Multiline_Output_set_labelsize(out,20);+    Fl_Multiline_Output_set_align(out, FL_ALIGN_TOP|FL_ALIGN_LEFT);+    Fl_Multiline_Output_set_value(out, "This is First page");+    Fl_Group_end(g);+  }+  {+    fl_Group g = (fl_Group)Fl_Group_New(0,0,400,300);+    fl_Button next = (fl_Button)Fl_Button_New_WithLabel(290,265,100,25,"Next @->");+    Fl_Button_set_callback(next,next_cb);++    fl_Button back = (fl_Button)Fl_Button_New_WithLabel(180,265,100,25,"@<- Back");+    Fl_Button_set_callback(back,back_cb);++    fl_Multiline_Output out = (fl_Multiline_Output)Fl_Multiline_Output_New_WithLabel(10,30,400-20,300-80,"Terms And Conditions");+    Fl_Multiline_Output_set_labelsize(out,20);+    Fl_Multiline_Output_set_align(out, FL_ALIGN_TOP|FL_ALIGN_LEFT);+    Fl_Multiline_Output_set_value(out, "This is Second page");+    Fl_Group_end(g);+  }+  {+    fl_Group g = (fl_Group)Fl_Group_New(0,0,400,300);+    fl_Button next = (fl_Button)Fl_Button_New_WithLabel(290,265,100,25,"Next @->");+    Fl_Button_set_callback(next,next_cb);++    fl_Button back = (fl_Button)Fl_Button_New_WithLabel(180,265,100,25,"@<- Back");+    Fl_Button_set_callback(back,back_cb);++    fl_Multiline_Output out = (fl_Multiline_Output)Fl_Multiline_Output_New_WithLabel(10,30,400-20,300-80,"Finish");+    Fl_Multiline_Output_set_labelsize(out,20);+    Fl_Multiline_Output_set_align(out, FL_ALIGN_TOP|FL_ALIGN_LEFT);+    Fl_Multiline_Output_set_value(out, "Finish");+    Fl_Group_end(g);+  }+  Fl_Wizard_end(G_wiz);+  Fl_Window_end(G_win);+  Fl_Window_show_with_args(G_win,argc,argv);+  return (Fl_run());+}
+ c-src/DerivedShared_Image.cpp view
@@ -0,0 +1,92 @@+#include "DerivedShared_Image.h"+fl_Shared_Handler* DerivedShared_Image::fl_handlers_ = 0;+int                DerivedShared_Image::fl_num_handlers_ = 0;+int                DerivedShared_Image::fl_alloc_handlers_ = 0;+// a total copy, needed because fl_Shared_Handler is different+void DerivedShared_Image::add_handler(fl_Shared_Handler f){+  int			i;		// Looping var...+  fl_Shared_Handler	*temp;		// New image handler array...++  // First see if we have already added the handler...+  for (i = 0; i < fl_num_handlers_; i ++) {+    if (fl_handlers_[i] == f) return;+  }+  if (fl_num_handlers_ >= fl_alloc_handlers_) {+    // Allocate more memory...+    temp = new fl_Shared_Handler [fl_alloc_handlers_ + 32];++    if (alloc_handlers_) {+      memcpy(temp, fl_handlers_, fl_alloc_handlers_ * sizeof(fl_Shared_Handler));++      delete[] fl_handlers_;+    }++    fl_handlers_       = temp;+    fl_alloc_handlers_ += 32;+  }++  fl_handlers_[fl_num_handlers_] = f;+  fl_num_handlers_ ++;+}+void DerivedShared_Image::reload(){+  int		i;+  FILE		*fp;+  uchar		header[64];+  Fl_Image	*img;++  if (!name_) return;++  if ((fp = fl_fopen(name_, "rb")) != NULL) {+    if (fread(header, 1, sizeof(header), fp)==0) { /* ignore */ }+    fclose(fp);+  } else {+    return;+  }++  if (memcmp(header, "#define", 7) == 0) // XBM file+    img = new Fl_XBM_Image(name_);+  else if (memcmp(header, "/* XPM */", 9) == 0) // XPM file+    img = new Fl_XPM_Image(name_);+  else {+    for (i = 0, img = 0; i < num_handlers_; i ++) {+      // The only difference is the cast+      img = (static_cast<Fl_Image*>((fl_handlers_[i])(name_, header, sizeof(header))));++      if (img) break;+    }+  }++  if (img) {+    if (alloc_image_) delete image_;++    alloc_image_ = 1;++    if ((img->w() != w() && w()) || (img->h() != h() && h())) {+      Fl_Image *temp = img->copy(w(), h());+      delete img;+      image_ = temp;+    } else {+      image_ = img;+    }++    update();+  }+};+void DerivedShared_Image::remove_handler(fl_Shared_Handler f){+  int	i;				// Looping var...+  // First see if the handler has been added...+  for (i = 0; i < fl_num_handlers_; i ++) {+    if (fl_handlers_[i] == f) break;+  }++  if (i >= fl_num_handlers_) return;++  // OK, remove the handler from the array...+  fl_num_handlers_ --;++  if (i < fl_num_handlers_) {+    // Shift later handlers down 1...+    memmove(fl_handlers_ + i, fl_handlers_ + i + 1,+           (fl_num_handlers_ - i) * sizeof(fl_Shared_Handler ));+  }+}
+ c-src/DerivedShared_Image.h view
@@ -0,0 +1,21 @@+#ifndef __DERIVEDSHARED_IMAGE__+#define __DERIVEDSHARED_IMAGE__+#include "FL/Fl.H"+#include "FL/Fl_Shared_Image.H"+#include "FL/Fl_XBM_Image.H"+#include "FL/Fl_XPM_Image.H"+#include "Fl_Types.h"+typedef void* (*fl_Shared_Handler)(const char *name, uchar *header,int headerlen);+class DerivedShared_Image : public Fl_Shared_Image {+  static fl_Shared_Handler* fl_handlers_;+  static int fl_num_handlers_;+  static int fl_alloc_handlers_;+ public:+  void reload();+  static void add_handler(fl_Shared_Handler h);+  static void remove_handler(fl_Shared_Handler h);+ DerivedShared_Image() : Fl_Shared_Image() {};+ DerivedShared_Image(const char *n, Fl_Image *img = 0) : Fl_Shared_Image(n, img) {};+};++#endif /* __DERIVEDSHARED_IMAGE__  */
+ c-src/DerivedText_Editor.cpp view
@@ -0,0 +1,147 @@+#include "DerivedText_Editor.h"+#include "Fl_CallbackC.h"++#ifndef FL_DOXYGEN+DerivedText_Editor::Key_Binding_With_Callback* DerivedText_Editor::global_key_bindings = 0;+#endif++DerivedText_Editor::DerivedText_Editor(int x,int y,int w,int h,const char* t) : Fl_Text_Editor(x,y,w,h,t){+    key_bindings = 0;+    key_bindings = get_default_keybindings();+    curr_callback_context = 0;+    default_callback_context_ = 0;+    default_key_function_ = C_to_Fl_Callback::intercept;+ }+C_to_Fl_Callback* DerivedText_Editor::get_curr_callback_context(){+  return curr_callback_context;+}+C_to_Fl_Callback* DerivedText_Editor::get_default_callback_context(){+  return default_callback_context_;+}+// straight copy from Fl_Text_Editor+static void kill_selection(Fl_Text_Editor* e) {+  if (e->buffer()->selected()) {+    e->insert_position(e->buffer()->primary_selection()->start());+    e->buffer()->remove_selection();+  }+}++void DerivedText_Editor::replace_key_bindings(Key_Binding_With_Callback** l1, Key_Binding_With_Callback** l2){+  remove_all_key_bindings(l1);+  l1 = l2;+}+void DerivedText_Editor::replace_key_bindings(Key_Binding_With_Callback** l) {+  replace_key_bindings(&key_bindings, l);+}+void DerivedText_Editor::add_key_binding(int key,+					 int state,+					 C_to_Fl_Callback* callback_context,+					 Key_Binding_With_Callback** list){+  Key_Binding_With_Callback* curr = *list;+  // iterate to the last binding+  while(curr->next){curr = curr->next;}++  Key_Binding_With_Callback* kb = new Key_Binding_With_Callback();+  kb->key = key;+  kb->state = state;+  kb->callback = C_to_Fl_Callback::intercept;+  kb->callback_context = callback_context;+  kb->next = NULL;+  curr->next = kb;+}++DerivedText_Editor::Key_Binding_With_Callback* DerivedText_Editor::convert_keybindings (Key_Binding* bindings){+  Key_Binding_With_Callback* start = new Key_Binding_With_Callback();+  Key_Binding* curr_super = bindings;+  Key_Binding_With_Callback* curr = start;+  for (;curr_super;curr_super = curr_super->next){+    curr->key = curr_super->key;+    curr->state = curr_super->state;+    curr->callback = C_to_Fl_Callback::intercept;+    C_to_Fl_Callback* cb_object = new C_to_Fl_Callback(&(curr_super->function));+    curr->callback_context = cb_object;+    if (curr_super->next) {+      curr->next = new Key_Binding_With_Callback();+      curr = curr->next;+    }+  }+  return start;+}+C_to_Fl_Callback* DerivedText_Editor::bound_key_function(int key, int state, Key_Binding_With_Callback* list){+  Key_Binding_With_Callback* curr = list;+  for (;curr;curr = curr->next){+    if (curr->key == key)+      if (curr->state == FL_TEXT_EDITOR_ANY_STATE || curr->state == state)+        break;+  }+  if (!curr) return NULL;+  return curr->callback_context;+}++void DerivedText_Editor::remove_all_key_bindings(Key_Binding_With_Callback** list){+  Key_Binding_With_Callback* curr = *list;+  Key_Binding_With_Callback* next;+  for (;curr;curr = next){+    next = curr->next;+    delete curr;+  }+  *list = 0;+}+void DerivedText_Editor::remove_all_key_bindings(){+  remove_all_key_bindings(&key_bindings);+}+void DerivedText_Editor::remove_key_binding(int key, int state, Key_Binding_With_Callback** list) {+  Key_Binding_With_Callback* curr = *list;+  Key_Binding_With_Callback* last = NULL;+  for (;curr;last = curr, curr = curr->next){+     if (curr->key == key && curr->state == state) break;+  }+  if (!curr) return;+  if (last) last->next = curr->next;+  else *list = curr->next;+  delete curr;+}++void DerivedText_Editor::remove_key_binding(int key, int state) {+  remove_key_binding(key,state,&key_bindings);+}+int DerivedText_Editor::handle_key(){+  // Call FLTK's rules to try to turn this into a printing character.+  // This uses the right-hand ctrl key as a "compose prefix" and returns+  // the changes that should be made to the text, as a number of+  // bytes to delete and a string to insert:+  int del = 0;+  if (Fl::compose(del)) {+    if (del) {+      // del is a number of bytes+      int dp = insert_position() - del;+      if ( dp < 0 ) dp = 0;+      buffer()->select(dp, insert_position());+    }+    kill_selection(this);+    if (Fl::event_length()) {+      if (insert_mode()) insert(Fl::event_text());+      else overstrike(Fl::event_text());+    }+#ifdef __APPLE__+    if (Fl::compose_state) {+      int pos = this->insert_position();+      this->buffer()->select(pos - Fl::compose_state, pos);+      }+#endif+    show_insert_position();+    set_changed();+    if (when()&FL_WHEN_CHANGED) do_callback();+    return 1;+  }++  int key = Fl::event_key(), state = Fl::event_state(), c = Fl::event_text()[0];+  state &= FL_SHIFT|FL_CTRL|FL_ALT|FL_META; // only care about these states+  C_to_Fl_Callback* f;+  f = bound_key_function(key, state, global_key_bindings);+  this->curr_callback_context = f;+  if (!f) f = bound_key_function(key, state, key_bindings);+  if (f) return C_to_Fl_Callback::intercept(key, this);+  if (default_key_function_ && !state) return default_key_function_(c, this);+  return 0;+}
+ c-src/DerivedText_Editor.h view
@@ -0,0 +1,68 @@+#ifndef __DERIVEDTEXT_EDITOR__+#define __DERIVEDTEXT_EDITOR__+#include "FL/Fl.H"+#include "FL/Fl_Text_Editor.H"++class C_to_Fl_Callback;++class DerivedText_Editor : public Fl_Text_Editor {+ private:+  C_to_Fl_Callback* curr_callback_context;+ public:+  typedef int (*Key_Func)(int key, DerivedText_Editor* editor);+  struct Key_Binding_With_Callback {+    int               key;+    int               state;+    Key_Func          callback;+    C_to_Fl_Callback* callback_context;+    Key_Binding_With_Callback*   next;+  };+  // points to the head of the list after it's done converting+  static Key_Binding_With_Callback* convert_keybindings (Fl_Text_Editor::Key_Binding* bindings);+  Key_Binding_With_Callback* get_default_keybindings(){+    Fl_Text_Editor::Key_Binding* default_bindings = 0;+    Fl_Text_Editor::add_default_key_bindings(&default_bindings);+    return DerivedText_Editor::convert_keybindings(default_bindings);+  }++  void add_default_key_bindings(Key_Binding_With_Callback** list){+    Key_Binding_With_Callback* default_bindings = get_default_keybindings();+    add_key_binding(default_bindings,list);+  }++  // Unlike Fl_Text_Editor a new binding is appended rather than prepended+  void add_key_binding(int key, int state, C_to_Fl_Callback* callback_context,+		       Key_Binding_With_Callback** list);++  void add_key_binding(Key_Binding_With_Callback* new_bindings,+		       Key_Binding_With_Callback** old_bindings){+    Key_Binding_With_Callback* curr = *old_bindings;+    // iterate to the last binding+    while(curr->next){curr = curr->next;}+    curr->next = new_bindings;+  }+  void default_callback_context(C_to_Fl_Callback* context) {+    default_callback_context_ = context;+  }+  void add_key_binding(int key, int state, C_to_Fl_Callback* context){+    add_key_binding(key,state,context,&key_bindings);+  }+  C_to_Fl_Callback* bound_key_function(int key, int state, Key_Binding_With_Callback* list);+  void remove_all_key_bindings(Key_Binding_With_Callback** list);+  void remove_all_key_bindings();+  void remove_key_binding(int key, int state, Key_Binding_With_Callback** list);+  void remove_key_binding(int key, int state);+  void replace_key_bindings(Key_Binding_With_Callback** l1, Key_Binding_With_Callback** l2);+  void replace_key_bindings(Key_Binding_With_Callback** l);+  Key_Binding_With_Callback* key_bindings;+  C_to_Fl_Callback* get_curr_callback_context();+  C_to_Fl_Callback* get_default_callback_context();+  DerivedText_Editor(int x,int y,int w,int h,const char* t=0);+ protected:+  int handle_key();+  Key_Func default_key_function_;+  static Key_Binding_With_Callback* global_key_bindings;+  C_to_Fl_Callback* default_callback_context_;+};++#endif /* __DERIVEDTEXT_EDITOR__  */
+ c-src/Fl_AdjusterC.cpp view
@@ -0,0 +1,330 @@+#include "Fl_AdjusterC.h"+#ifdef __cplusplus+EXPORT {+#endif  +  FL_EXPORT_C(fl_Group,Fl_Adjuster_parent)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->parent();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_parent)(fl_Adjuster adjuster,fl_Group grp){+    (static_cast<Fl_Adjuster*>(adjuster))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Adjuster_type)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->type();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_type)(fl_Adjuster adjuster,uchar t){+    (static_cast<Fl_Adjuster*>(adjuster))->type(t);+  }+  FL_EXPORT_C(int,Fl_Adjuster_x)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->x();+  }+  FL_EXPORT_C(int,Fl_Adjuster_y)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->y();+  }+  FL_EXPORT_C(int,Fl_Adjuster_w)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->w();+  }+  FL_EXPORT_C(int,Fl_Adjuster_h)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->h();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_align)(fl_Adjuster adjuster,Fl_Align alignment){+    (static_cast<Fl_Adjuster*>(adjuster))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Adjuster_align)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Adjuster_box)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->box();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_box)(fl_Adjuster adjuster,Fl_Boxtype new_box){+    (static_cast<Fl_Adjuster*>(adjuster))->box(new_box);+  }+  FL_EXPORT_C(Fl_Color,Fl_Adjuster_color)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->color();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_color)(fl_Adjuster adjuster,Fl_Color bg){+    (static_cast<Fl_Adjuster*>(adjuster))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_color_with_bg_sel)(fl_Adjuster adjuster,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Adjuster*>(adjuster))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Adjuster_selection_color)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_selection_color)(fl_Adjuster adjuster,Fl_Color a){+    (static_cast<Fl_Adjuster*>(adjuster))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Adjuster_label)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->label();+  }+  FL_EXPORT_C(void,Fl_Adjuster_copy_label)(fl_Adjuster adjuster,const char* new_label){+    (static_cast<Fl_Adjuster*>(adjuster))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_label)(fl_Adjuster adjuster,const char* text){+    (static_cast<Fl_Adjuster*>(adjuster))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Adjuster_labeltype)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_labeltype)(fl_Adjuster adjuster,Fl_Labeltype a){+    (static_cast<Fl_Adjuster*>(adjuster))->labeltype(a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Adjuster_labelcolor)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->labelcolor();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_labelcolor)(fl_Adjuster adjuster,Fl_Color c){+    (static_cast<Fl_Adjuster*>(adjuster))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Font,Fl_Adjuster_labelfont)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_labelfont)(fl_Adjuster adjuster,Fl_Font c){+    (static_cast<Fl_Adjuster*>(adjuster))->labelfont(c);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Adjuster_labelsize)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_labelsize)(fl_Adjuster adjuster,Fl_Fontsize pix){+    (static_cast<Fl_Adjuster*>(adjuster))->labelsize(pix);+  }+  FL_EXPORT_C(fl_Image,Fl_Adjuster_image)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->image();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_image)(fl_Adjuster adjuster,fl_Image pix){+    (static_cast<Fl_Adjuster*>(adjuster))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Adjuster_deimage)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->deimage();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_deimage)(fl_Adjuster adjuster,fl_Image pix){+    (static_cast<Fl_Adjuster*>(adjuster))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Adjuster_tooltip)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Adjuster_copy_tooltip)(fl_Adjuster adjuster,const char* text){+    (static_cast<Fl_Adjuster*>(adjuster))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_tooltip)(fl_Adjuster adjuster,const char* text){+    (static_cast<Fl_Adjuster*>(adjuster))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_callback_with_user_data)(fl_Adjuster adjuster,fl_Callback* cb,void* p){+    Fl_Adjuster* castedAdjuster = (static_cast<Fl_Adjuster*>(adjuster));+    new C_to_Fl_Callback(castedAdjuster, cb, p);+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_callback)(fl_Adjuster adjuster,fl_Callback* cb){+    Fl_Adjuster* castedAdjuster = (static_cast<Fl_Adjuster*>(adjuster));+    new C_to_Fl_Callback(castedAdjuster, cb);+  }+  FL_EXPORT_C(void*,Fl_Adjuster_user_data)(fl_Adjuster adjuster){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Adjuster*>(adjuster))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Adjuster*>(adjuster))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_user_data)(fl_Adjuster adjuster,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Adjuster*>(adjuster))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Adjuster*>(adjuster))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Adjuster*>(adjuster))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Adjuster_argument)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->argument();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_argument)(fl_Adjuster adjuster,long v){+    (static_cast<Fl_Adjuster*>(adjuster))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Adjuster_when)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->when();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_when)(fl_Adjuster adjuster,uchar i){+    (static_cast<Fl_Adjuster*>(adjuster))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Adjuster_visible)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->visible();+  }+  FL_EXPORT_C(int,Fl_Adjuster_visible_r)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Adjuster_show)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->show();+  }+  FL_EXPORT_C(void,Fl_Adjuster_hide)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->hide();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_visible)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->visible();+  }+  FL_EXPORT_C(void,Fl_Adjuster_clear_visible)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Adjuster_active)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->active();+  }+  FL_EXPORT_C(int,Fl_Adjuster_active_r)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->active_r();+  }+  FL_EXPORT_C(void,Fl_Adjuster_activate)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->activate();+  }+  FL_EXPORT_C(void,Fl_Adjuster_deactivate)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Adjuster_output)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->output();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_output)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->output();+  }+  FL_EXPORT_C(void,Fl_Adjuster_clear_output)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Adjuster_takesevents)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_changed)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->changed();+  }+  FL_EXPORT_C(void,Fl_Adjuster_clear_changed)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Adjuster_take_focus)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_visible_focus)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Adjuster_clear_visible_focus)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Adjuster_modify_visible_focus)(fl_Adjuster adjuster,int v){+    (static_cast<Fl_Adjuster*>(adjuster))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Adjuster_visible_focus)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_Adjuster_contains)(fl_Adjuster adjuster,fl_Widget w){+    return (static_cast<Fl_Adjuster*>(adjuster))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Adjuster_inside)(fl_Adjuster adjuster,fl_Widget w){+    return (static_cast<Fl_Adjuster*>(adjuster))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Adjuster_redraw)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->redraw();+  }+  FL_EXPORT_C(void,Fl_Adjuster_redraw_label)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Adjuster_damage)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->damage();+  }+  FL_EXPORT_C(void,Fl_Adjuster_clear_damage_with_bitmask)(fl_Adjuster adjuster,uchar c){+    (static_cast<Fl_Adjuster*>(adjuster))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Adjuster_clear_damage)(fl_Adjuster adjuster){+    (static_cast<Fl_Adjuster*>(adjuster))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Adjuster_damage_with_text)(fl_Adjuster adjuster,uchar c){+    (static_cast<Fl_Adjuster*>(adjuster))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Adjuster_damage_inside_widget)(fl_Adjuster adjuster,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Adjuster*>(adjuster))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Adjuster_draw_label_with_xywh_alignment)(fl_Adjuster adjuster,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Adjuster*>(adjuster))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Adjuster_measure_label)(fl_Adjuster adjuster,int* ww,int* hh){+    (static_cast<Fl_Adjuster*>(adjuster))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,Fl_Adjuster_window)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->window();+  }+  FL_EXPORT_C(fl_Window,Fl_Adjuster_top_window)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->top_window();+  }+  FL_EXPORT_C(fl_Window,Fl_Adjuster_top_window_offset)(fl_Adjuster adjuster,int* xoff,int* yoff){+    return (fl_Window)(static_cast<Fl_Adjuster*>(adjuster))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Adjuster_as_gl_window)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Adjuster_resize)(fl_Adjuster adjuster,int X,int Y,int W,int H){+    (static_cast<Fl_Adjuster*>(adjuster))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Adjuster_bounds)(fl_Adjuster adjuster,double a,double b){+    (static_cast<Fl_Adjuster*>(adjuster))->bounds(a,b);+  }+  FL_EXPORT_C(double,Fl_Adjuster_minimum)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->minimum();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_minimum)(fl_Adjuster adjuster,double a){+    (static_cast<Fl_Adjuster*>(adjuster))->minimum(a);+  }+  FL_EXPORT_C(double,Fl_Adjuster_maximum)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->maximum();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_maximum)(fl_Adjuster adjuster,double a){+    (static_cast<Fl_Adjuster*>(adjuster))->maximum(a);+  }+  FL_EXPORT_C(void,Fl_Adjuster_range)(fl_Adjuster adjuster,double a,double b){+    (static_cast<Fl_Adjuster*>(adjuster))->range(a,b);+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_step)(fl_Adjuster adjuster,int a){+    (static_cast<Fl_Adjuster*>(adjuster))->step(a);+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_step_with_a_b)(fl_Adjuster adjuster,double a,int b){+    (static_cast<Fl_Adjuster*>(adjuster))->step(a,b);+  }+  FL_EXPORT_C(void,Fl_Adjuster_step_with_s)(fl_Adjuster adjuster,double s){+    (static_cast<Fl_Adjuster*>(adjuster))->step(s);+  }+  FL_EXPORT_C(double,Fl_Adjuster_step)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->step();+  }+  FL_EXPORT_C(void,Fl_Adjuster_precision)(fl_Adjuster adjuster,int precision){+    (static_cast<Fl_Adjuster*>(adjuster))->precision(precision);+  }+  FL_EXPORT_C(double,Fl_Adjuster_value)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->value();+  }+  FL_EXPORT_C(int,Fl_Adjuster_set_value)(fl_Adjuster adjuster,double v){+    return (static_cast<Fl_Adjuster*>(adjuster))->value(v);+  }+  FL_EXPORT_C(int,Fl_Adjuster_format)(fl_Adjuster adjuster,char* format){+    return (static_cast<Fl_Adjuster*>(adjuster))->format(format);+  }+  FL_EXPORT_C(double,Fl_Adjuster_round)(fl_Adjuster adjuster,double v){+    return (static_cast<Fl_Adjuster*>(adjuster))->round(v);+  }+  FL_EXPORT_C(double,Fl_Adjuster_clamp)(fl_Adjuster adjuster,double v){+    return (static_cast<Fl_Adjuster*>(adjuster))->clamp(v);+  }+  FL_EXPORT_C(double,Fl_Adjuster_increment)(fl_Adjuster adjuster,double v,int n){+    return (static_cast<Fl_Adjuster*>(adjuster))->increment(v,n);+  }+  FL_EXPORT_C(fl_Adjuster,Fl_Adjuster_New_WithLabel)(int x,int y,int w,int h,const char* label){+    Fl_Adjuster* adjuster = new Fl_Adjuster(x,y,w,h,label);+    return (fl_Adjuster) adjuster;+  }+  FL_EXPORT_C(fl_Adjuster,Fl_Adjuster_New)(int x,int y,int w,int h){+    Fl_Adjuster* adjuster = new Fl_Adjuster(x,y,w,h);+    return (fl_Adjuster) adjuster;+  }+  FL_EXPORT_C(void,Fl_Adjuster_Destroy)(fl_Adjuster adjuster){+    delete (static_cast<Fl_Adjuster*>(adjuster));+  }+  FL_EXPORT_C(int,Fl_Adjuster_soft)(fl_Adjuster adjuster){+    return (static_cast<Fl_Adjuster*>(adjuster))->soft();+  }+  FL_EXPORT_C(void,Fl_Adjuster_set_soft)(fl_Adjuster adjuster,int soft){+    (static_cast<Fl_Adjuster*>(adjuster))->soft(soft);+  }+#ifdef __cplusplus+}+#endif 
+ c-src/Fl_AdjusterC.h view
@@ -0,0 +1,124 @@+#ifndef __FL_ADJUSTER_C__+#define __FL_ADJUSTER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Adjuster is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Adjuster.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_Group,     Fl_Adjuster_parent)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_parent)(fl_Adjuster adjuster, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Adjuster_type)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_type)(fl_Adjuster adjuster, uchar t);++  FL_EXPORT_C(int,          Fl_Adjuster_x)(fl_Adjuster adjuster);+  FL_EXPORT_C(int,          Fl_Adjuster_y)(fl_Adjuster adjuster);+  FL_EXPORT_C(int,          Fl_Adjuster_w)(fl_Adjuster adjuster);+  FL_EXPORT_C(int,          Fl_Adjuster_h)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_align)(fl_Adjuster adjuster, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Adjuster_align)(fl_Adjuster adjuster);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Adjuster_box)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_box)(fl_Adjuster adjuster, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Adjuster_color)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_color)(fl_Adjuster adjuster, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Adjuster_set_color_with_bg_sel)(fl_Adjuster adjuster,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Adjuster_selection_color)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_selection_color)(fl_Adjuster adjuster, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Adjuster_label)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_copy_label)(fl_Adjuster adjuster, const char* new_label);+  FL_EXPORT_C(void,         Fl_Adjuster_set_label)(fl_Adjuster adjuster, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Adjuster_labeltype)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_labeltype)(fl_Adjuster adjuster, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Adjuster_labelcolor)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_labelcolor)(fl_Adjuster adjuster, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Adjuster_labelfont)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_labelfont)(fl_Adjuster adjuster, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Adjuster_labelsize)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_labelsize)(fl_Adjuster adjuster, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Adjuster_image)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_image)(fl_Adjuster adjuster, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Adjuster_deimage)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_deimage)(fl_Adjuster adjuster, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Adjuster_tooltip)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_copy_tooltip)(fl_Adjuster adjuster, const char* text);+  FL_EXPORT_C(void,         Fl_Adjuster_set_tooltip)(fl_Adjuster adjuster, const char* text);+  FL_EXPORT_C(void,         Fl_Adjuster_set_callback_with_user_data)(fl_Adjuster adjuster, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Adjuster_set_callback)(fl_Adjuster adjuster, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Adjuster_other_data)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_other_data)(fl_Adjuster adjuster, void* v);+  FL_EXPORT_C(void*,        Fl_Adjuster_user_data)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_user_data)(fl_Adjuster adjuster, void* v);+  FL_EXPORT_C(long,         Fl_Adjuster_argument)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_argument)(fl_Adjuster adjuster, long v);+  FL_EXPORT_C(Fl_When,      Fl_Adjuster_when)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_when)(fl_Adjuster adjuster, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Adjuster_visible)(fl_Adjuster adjuster);+  FL_EXPORT_C(int,          Fl_Adjuster_visible_r)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_show)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_hide)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_visible)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_clear_visible)(fl_Adjuster adjuster);+  FL_EXPORT_C(unsigned int, Fl_Adjuster_active)(fl_Adjuster adjuster);+  FL_EXPORT_C(int,          Fl_Adjuster_active_r)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_activate)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_deactivate)(fl_Adjuster adjuster);+  FL_EXPORT_C(unsigned int, Fl_Adjuster_output)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_output)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_clear_output)(fl_Adjuster adjuster);+  FL_EXPORT_C(unsigned int, Fl_Adjuster_takesevents)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_changed)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_clear_changed)(fl_Adjuster adjuster);+  FL_EXPORT_C(int,          Fl_Adjuster_take_focus)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_set_visible_focus)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_clear_visible_focus)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_modify_visible_focus)(fl_Adjuster adjuster, int v);+  FL_EXPORT_C(unsigned int, Fl_Adjuster_visible_focus)(fl_Adjuster adjuster);+  FL_EXPORT_C(int,          Fl_Adjuster_contains)(fl_Adjuster adjuster, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Adjuster_inside)(fl_Adjuster adjuster, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Adjuster_redraw)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_redraw_label)(fl_Adjuster adjuster);+  FL_EXPORT_C(uchar,        Fl_Adjuster_damage)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_clear_damage_with_bitmask)(fl_Adjuster adjuster, uchar c);+  FL_EXPORT_C(void,         Fl_Adjuster_clear_damage)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_damage_with_text)(fl_Adjuster adjuster, uchar c);+  FL_EXPORT_C(void,         Fl_Adjuster_damage_inside_widget)(fl_Adjuster adjuster, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Adjuster_draw_label_with_xywh_alignment)(fl_Adjuster adjuster, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Adjuster_measure_label)(fl_Adjuster adjuster, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Adjuster_window)(fl_Adjuster adjuster);+  FL_EXPORT_C(fl_Window,    Fl_Adjuster_top_window)(fl_Adjuster adjuster);+  FL_EXPORT_C(fl_Window ,   Fl_Adjuster_top_window_offset)(fl_Adjuster adjuster, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Gl_Window, Fl_Adjuster_as_gl_window)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,         Fl_Adjuster_resize)(fl_Table table,int X, int Y, int W, int H);++  /* Inherited from Fl_Valuator */+  FL_EXPORT_C(void, Fl_Adjuster_bounds)(fl_Adjuster adjuster, double a, double b);+  FL_EXPORT_C(double, Fl_Adjuster_minimum)(fl_Adjuster adjuster);+  FL_EXPORT_C(void, Fl_Adjuster_set_minimum)(fl_Adjuster adjuster, double a);+  FL_EXPORT_C(double, Fl_Adjuster_maximum)(fl_Adjuster adjuster);+  FL_EXPORT_C(void, Fl_Adjuster_set_maximum)(fl_Adjuster adjuster, double a);+  FL_EXPORT_C(void, Fl_Adjuster_range)(fl_Adjuster adjuster, double a, double b);+  FL_EXPORT_C(void, Fl_Adjuster_set_step)(fl_Adjuster adjuster, int a);+  FL_EXPORT_C(void, Fl_Adjuster_set_step_with_a_b)(fl_Adjuster adjuster, double a, int b);+  FL_EXPORT_C(void, Fl_Adjuster_step_with_s)(fl_Adjuster adjuster, double s);+  FL_EXPORT_C(double, Fl_Adjuster_step)(fl_Adjuster adjuster);+  FL_EXPORT_C(void, Fl_Adjuster_precision)(fl_Adjuster adjuster, int precision);+  FL_EXPORT_C(double, Fl_Adjuster_value)(fl_Adjuster adjuster);+  FL_EXPORT_C(int, Fl_Adjuster_set_value)(fl_Adjuster adjuster, double v);+  FL_EXPORT_C(int, Fl_Adjuster_format)(fl_Adjuster adjuster, char* format);+  FL_EXPORT_C(double, Fl_Adjuster_round)(fl_Adjuster adjuster, double v);+  FL_EXPORT_C(double, Fl_Adjuster_clamp)(fl_Adjuster adjuster, double v);+  FL_EXPORT_C(double, Fl_Adjuster_increment)(fl_Adjuster adjuster, double v, int n);++  /* Fl_Adjuster specific */+  FL_EXPORT_C(fl_Adjuster,    Fl_Adjuster_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Adjuster   , Fl_Adjuster_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,      Fl_Adjuster_Destroy)(fl_Adjuster adjuster);+  FL_EXPORT_C(int,      Fl_Adjuster_soft)(fl_Adjuster adjuster);+  FL_EXPORT_C(void,      Fl_Adjuster_set_soft)(fl_Adjuster adjuster, int soft);+#ifdef __cplusplus+}+#endif+#endif /* __FL_ADJUSTER_C__ */
+ c-src/Fl_AskC.cpp view
@@ -0,0 +1,56 @@+// Unimplemented until I figure out what to do with all the varargs functions+#include "Fl_AskC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(void,flc_beep)(){+    return fl_beep();+  }+  FL_EXPORT_C(void,flc_beep_with_type)(int type){+    return fl_beep(type);+  }+  FL_EXPORT_C(void,flc_message)(const char* message){+    return fl_message(message, NULL);+  }+  FL_EXPORT_C(void,flc_message_with_args)(const char* fmt,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10){+    return fl_message(fmt,arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10);+  }+  FL_EXPORT_C(void,flc_alert)(const char* alert){+    return fl_alert(alert, NULL);+  }+  FL_EXPORT_C(void,flc_alert_with_args)(const char* fmt,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10){+    return fl_alert(fmt,arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10);+  }+  FL_EXPORT_C(int,flc_choice)(const char* q, const char* b0, const char* b1, const char* b2){+    return fl_choice(q, b0,b1,b2,NULL);+  }+  FL_EXPORT_C(int,flc_choice_with_args)(const char *q,const char *b0,const char *b1,const char *b2,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10){+    return fl_choice(q,b0,b1,b2,arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10);+  }+  FL_EXPORT_C(const char*,flc_input)(const char *label){+    return fl_input(label,0,NULL);+  }+  FL_EXPORT_C(const char*,flc_input_with_deflt)(const char *label,const char* deflt){+    return fl_input(label,deflt, NULL);+  }+  FL_EXPORT_C(const char*,flc_input_with_args)(const char *label,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10){+    return fl_input(label,0,arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10);+  }+  FL_EXPORT_C(const char *,flc_input_with_args_deflt)(const char *label,const char *deflt,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10){+    return fl_input(label,deflt,arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10);+  }+  FL_EXPORT_C(const char *,flc_password)(const char *label){+    return fl_password(label,0,NULL);+  }+  FL_EXPORT_C(const char *,flc_password_with_deflt)(const char *label,const char* deflt){+    return fl_password(label,deflt,NULL);+  }+  FL_EXPORT_C(const char *,flc_password_with_args)(const char *label,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10){+    return fl_password(label,0,arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10);+  }+  FL_EXPORT_C(const char *,flc_password_with_args_deflt)(const char *label,const char *deflt,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10){+    return fl_password(label,deflt,arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_AskC.h view
@@ -0,0 +1,32 @@+// Unimplemented until I figure out what to do with all the vararg+#ifndef __FL_ASK_C__+#define __FL_ASK_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/fl_ask.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(void,flc_beep)();+  FL_EXPORT_C(void,flc_beep_with_type)(int type);+  FL_EXPORT_C(void,flc_message)(const char* message);+  FL_EXPORT_C(void,flc_message_with_args)(const char* fmt,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10);+  FL_EXPORT_C(void,flc_alert)(const char* alert);+  FL_EXPORT_C(void,flc_alert_with_args)(const char* fmt,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10);+  FL_EXPORT_C(int,flc_choice)(const char *q,const char *b0,const char *b1,const char *b2);+  FL_EXPORT_C(int,flc_choice_with_args)(const char *q,const char *b0,const char *b1,const char *b2,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10);+  FL_EXPORT_C(const char*,flc_input)(const char *label);+  FL_EXPORT_C(const char*,flc_input_with_deflt)(const char *label,const char* deflt);+  FL_EXPORT_C(const char*,flc_input_with_args)(const char *label,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10);+  FL_EXPORT_C(const char *,flc_input_with_args_deflt)(const char *label,const char *deflt,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10);+  FL_EXPORT_C(const char *,flc_password)(const char *label);+  FL_EXPORT_C(const char *,flc_password_with_deflt)(const char *label,const char* deflt);+  FL_EXPORT_C(const char *,flc_password_with_args)(const char *label,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10);+  FL_EXPORT_C(const char *,flc_password_with_args_deflt)(const char *label,const char *deflt,const char* arg1,const char* arg2,const char* arg3,const char* arg4,const char* arg5,const char* arg6,const char* arg7,const char* arg8,const char* arg9,const char* arg10);+#ifdef __cplusplus+}+#endif+#endif /* __FL_ASK_C__ */
+ c-src/Fl_BitmapC.cpp view
@@ -0,0 +1,72 @@+#include "Fl_BitmapC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(fl_Bitmap, Fl_Bitmap_New)(const char* bits, int W, int H){+    Fl_Bitmap* b = new Fl_Bitmap(bits,W,H);+    return (fl_Bitmap)b;+  }+  FL_EXPORT_C(fl_Bitmap, Fl_Bitmap_New_WithUchar)(const uchar* bits, int W, int H){+    Fl_Bitmap* b = new Fl_Bitmap(bits,W,H);+    return (fl_Bitmap)b;+  }+  FL_EXPORT_C(void, Fl_Bitmap_Destroy)(fl_Bitmap bitmap) {+    delete (static_cast<Fl_Bitmap*>(bitmap));+  }+  FL_EXPORT_C(int,Fl_Bitmap_w)(fl_Bitmap bitmap){+    return (static_cast<Fl_Bitmap*>(bitmap))->w();+  }+  FL_EXPORT_C(int,Fl_Bitmap_h)(fl_Bitmap bitmap){+    return (static_cast<Fl_Bitmap*>(bitmap))->h();+  }+  FL_EXPORT_C(int,Fl_Bitmap_d)(fl_Bitmap bitmap){+    return (static_cast<Fl_Bitmap*>(bitmap))->d();+  }+  FL_EXPORT_C(int,Fl_Bitmap_ld)(fl_Bitmap bitmap){+    return (static_cast<Fl_Bitmap*>(bitmap))->ld();+  }+  FL_EXPORT_C(int,Fl_Bitmap_count)(fl_Bitmap bitmap){+    return (static_cast<Fl_Bitmap*>(bitmap))->count();+  }+  FL_EXPORT_C(fl_Bitmap,Fl_Bitmap_copy_with_w_h)(fl_Bitmap bitmap,int W,int H){+    return (fl_Bitmap)(static_cast<Fl_Bitmap*>(bitmap))->copy(W,H);+  }+  FL_EXPORT_C(fl_Bitmap,Fl_Bitmap_copy)(fl_Bitmap bitmap){+    return (fl_Bitmap)(static_cast<Fl_Bitmap*>(bitmap))->copy();+  }+  FL_EXPORT_C(void,Fl_Bitmap_color_average)(fl_Bitmap bitmap,Fl_Color c,float i){+    return (static_cast<Fl_Bitmap*>(bitmap))->color_average(c,i);+  }+  FL_EXPORT_C(void,Fl_Bitmap_inactive)(fl_Bitmap bitmap){+    return (static_cast<Fl_Bitmap*>(bitmap))->inactive();+  }+  FL_EXPORT_C(void,Fl_Bitmap_desaturate)(fl_Bitmap bitmap){+    return (static_cast<Fl_Bitmap*>(bitmap))->desaturate();+  }+  FL_EXPORT_C(void,Fl_Bitmap_label)(fl_Bitmap bitmap,fl_Widget w){+    return (static_cast<Fl_Bitmap*>(bitmap))->label((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Bitmap_label_with_menu_item)(fl_Bitmap bitmap,fl_Menu_Item m){+    return (static_cast<Fl_Bitmap*>(bitmap))->label((static_cast<Fl_Menu_Item*>(m)));+  }+  FL_EXPORT_C(void,Fl_Bitmap_draw_with_cx_cy)(fl_Bitmap bitmap,int X,int Y,int W,int H,int cx,int cy){+    return (static_cast<Fl_Bitmap*>(bitmap))->draw(X,Y,W,H,cx,cy);+  }+  FL_EXPORT_C(void,Fl_Bitmap_draw_with_cx)(fl_Bitmap bitmap,int X,int Y,int W,int H,int cx){+    return (static_cast<Fl_Bitmap*>(bitmap))->draw(X,Y,W,H,cx);+  }+  FL_EXPORT_C(void,Fl_Bitmap_draw_with_cy)(fl_Bitmap bitmap,int X,int Y,int W,int H,int cy){+    return (static_cast<Fl_Bitmap*>(bitmap))->draw(X,Y,W,H,0,cy);+  }+  FL_EXPORT_C(void,Fl_Bitmap_draw_with)(fl_Bitmap bitmap,int X,int Y,int W,int H){+    return (static_cast<Fl_Bitmap*>(bitmap))->draw(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Bitmap_draw)(fl_Bitmap bitmap,int X,int Y){+    return (static_cast<Fl_Bitmap*>(bitmap))->draw(X,Y);+  }+  FL_EXPORT_C(void,Fl_Bitmap_uncache)(fl_Bitmap bitmap){+    return (static_cast<Fl_Bitmap*>(bitmap))->uncache();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_BitmapC.h view
@@ -0,0 +1,38 @@+#ifndef __FL_BITMAP_C__+#define __FL_BITMAP_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Bitmap.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(void*, Fl_Bitmap_other_data)(fl_Bitmap bitmap);+  FL_EXPORT_C(void, Fl_Bitmap_set_other_data)(fl_Bitmap bitmap, void* v);+  FL_EXPORT_C(fl_Bitmap, Fl_Bitmap_New)(const char* bits, int H, int D);+  FL_EXPORT_C(fl_Bitmap, Fl_Bitmap_New_WithUchar)(const uchar* bits, int H, int D);+  FL_EXPORT_C(void, Fl_Bitmap_Destroy)(fl_Bitmap bitmap);+  FL_EXPORT_C(int, Fl_Bitmap_w)(fl_Bitmap bitmap);+  FL_EXPORT_C(int, Fl_Bitmap_h)(fl_Bitmap bitmap);+  FL_EXPORT_C(int, Fl_Bitmap_d)(fl_Bitmap bitmap);+  FL_EXPORT_C(int, Fl_Bitmap_ld)(fl_Bitmap bitmap);+  FL_EXPORT_C(int, Fl_Bitmap_count)(fl_Bitmap bitmap);+  FL_EXPORT_C(fl_Bitmap, Fl_Bitmap_copy_with_w_h)(fl_Bitmap bitmap,int W, int H);+  FL_EXPORT_C(fl_Bitmap, Fl_Bitmap_copy)(fl_Bitmap bitmap);+  FL_EXPORT_C(void, Fl_Bitmap_color_average)(fl_Bitmap bitmap,Fl_Color c, float i);+  FL_EXPORT_C(void, Fl_Bitmap_inactive)(fl_Bitmap bitmap);+  FL_EXPORT_C(void, Fl_Bitmap_desaturate)(fl_Bitmap bitmap);+  FL_EXPORT_C(void, Fl_Bitmap_label)(fl_Bitmap bitmap,fl_Widget w);+  FL_EXPORT_C(void, Fl_Bitmap_label_with_menu_item)(fl_Bitmap bitmap,fl_Menu_Item m);+  FL_EXPORT_C(void, Fl_Bitmap_draw_with_cx_cy)(fl_Bitmap bitmap,int X, int Y, int W, int H, int cx, int cy);+  FL_EXPORT_C(void, Fl_Bitmap_draw_with_cx)(fl_Bitmap bitmap,int X, int Y, int W, int H, int cx);+  FL_EXPORT_C(void, Fl_Bitmap_draw_with_cy)(fl_Bitmap bitmap,int X, int Y, int W, int H, int cy);+  FL_EXPORT_C(void, Fl_Bitmap_draw_with)(fl_Bitmap bitmap,int X,int Y,int W,int H);+  FL_EXPORT_C(void, Fl_Bitmap_draw)(fl_Bitmap bitmap,int X, int Y);+  FL_EXPORT_C(void, Fl_Bitmap_uncache)(fl_Bitmap bitmap);+#ifdef __cplusplus+}+#endif+#endif /* __FL_BITMAP_C__ */
+ c-src/Fl_BoxC.cpp view
@@ -0,0 +1,457 @@+#include "Fl_BoxC.h"+#ifdef __cplusplus+Fl_DerivedBox::Fl_DerivedBox(int X, int Y, int W, int H, const char *l, fl_Box_Virtual_Funcs* funcs) : Fl_Box(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = 0;+ }+Fl_DerivedBox::Fl_DerivedBox(int X, int Y, int W, int H, fl_Box_Virtual_Funcs* funcs):Fl_Box(X,Y,W,H,0){+    overriddenFuncs = funcs;+    other_data = 0;+  }+Fl_DerivedBox::Fl_DerivedBox(Fl_Boxtype b, int X, int Y, int W, int H, const char* l, fl_Box_Virtual_Funcs* funcs):Fl_Box(b,X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = 0;+  }+Fl_DerivedBox::~Fl_DerivedBox(){+  destroy_data();+  free(overriddenFuncs);+}+void* Fl_DerivedBox::get_other_data(){+  return this->other_data;+}+void Fl_DerivedBox::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedBox::destroy_data(){+  if (this->overriddenFuncs->destroy_data != NULL){+    this->overriddenFuncs->destroy_data((fl_Box) this);+  }+}+void Fl_DerivedBox::draw_box(){+  Fl_Box::draw_box();+}+void Fl_DerivedBox::draw_box(Fl_Boxtype t, Fl_Color c){+  Fl_Box::draw_box(t,c);+}+void Fl_DerivedBox::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+  Fl_Box::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedBox::draw_backdrop(){+  Fl_Box::draw_backdrop();+}+void Fl_DerivedBox::draw_focus(){+  Fl_Box::draw_focus();+}+void Fl_DerivedBox::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+  Fl_Box::draw_focus(t,x,y,w,h);+}+void Fl_DerivedBox::draw_label(){+  Fl_Box::draw_label();+}+void Fl_DerivedBox::draw_label(int x,int y,int w,int h,Fl_Align alignment){+  Fl_Box::draw_label(x,y,w,h,alignment);+}+int Fl_DerivedBox::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Box) this,event);+  }+  else {+    i = Fl_Box::handle(event);+  }+  return i;+}+void Fl_DerivedBox::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Box) this,x,y,w,h);+  }+  else {+    Fl_Box::resize(x,y,w,h);+  }+}+void Fl_DerivedBox::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Box) this);+  }+  else {+    Fl_Box::show();+  }+}+void Fl_DerivedBox::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Box) this);+  }+  else {+    Fl_Box::hide();+  }+}+++void Fl_DerivedBox::draw_super(){+  Fl_Box::draw();+}++void Fl_DerivedBox::draw(){+  if (this->overriddenFuncs->draw != NULL) {+    this->overriddenFuncs->draw((fl_Box) this);+  }+  else {+    Fl_Box::draw();+  }+}++Fl_Window* Fl_DerivedBox::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Box) this)));+  }+  else {+    win = Fl_Box::as_window();+  }+  return win;+}+Fl_Gl_Window* Fl_DerivedBox::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Box) this)));+  }+  else {+    win = Fl_Box::as_gl_window();+  }+  return win;+}+EXPORT {+  FL_EXPORT_C(fl_Box_Virtual_Funcs*, Fl_Box_default_virtual_funcs)(){+#endif+    fl_Box_Virtual_Funcs* ptr = (fl_Box_Virtual_Funcs*)malloc(sizeof(fl_Box_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->hide = NULL;+    ptr->as_window = NULL;+    ptr->as_gl_window = NULL;+    ptr->destroy_data = NULL;+    return ptr;+  }+  FL_EXPORT_C(void, Fl_Box_draw_super)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->draw_super();+  }+  FL_EXPORT_C(int,Fl_Box_handle_super)(fl_Box box,int event){+    return (static_cast<Fl_DerivedBox*>(box))->Fl_Box::handle(event);+  }+  FL_EXPORT_C(int,Fl_Box_handle )(fl_Box box, int event){+    return (static_cast<Fl_DerivedBox*>(box))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Box_resize_super )(fl_Box box,int x, int y, int w, int h){+    (static_cast<Fl_DerivedBox*>(box))->Fl_Box::resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Box_resize )(fl_Box box,int x, int y, int w, int h){+    (static_cast<Fl_DerivedBox*>(box))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Box_show_super)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->Fl_Box::show();+  }+  FL_EXPORT_C(void,Fl_Box_show )(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->show();+  }+  FL_EXPORT_C(void,Fl_Box_hide_super)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->Fl_Box::hide();+  }+  FL_EXPORT_C(void,Fl_Box_hide )(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Box_as_window_super)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->Fl_Box::as_window();+  }+  FL_EXPORT_C(fl_Window,Fl_Box_as_window )(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->as_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Box_as_gl_window_super)(fl_Box box){+    return (fl_Gl_Window) (static_cast<Fl_DerivedBox*>(box))->Fl_Box::as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Box_as_gl_window )(fl_Box box){+    return (fl_Gl_Window) (static_cast<Fl_DerivedBox*>(box))->as_gl_window();+  };+  FL_EXPORT_C(fl_Group,Fl_Box_parent)(fl_Box box){+    return (fl_Group) (static_cast<Fl_DerivedBox*>(box))->parent();+  }+  FL_EXPORT_C(void,Fl_Box_set_parent)(fl_Box box,fl_Group grp){+    (static_cast<Fl_DerivedBox*>(box))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Box_type)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->type();+  }+  FL_EXPORT_C(void,Fl_Box_set_type)(fl_Box box,uchar t){+   (static_cast<Fl_DerivedBox*>(box))->type(t);+  }+  FL_EXPORT_C(int,Fl_Box_x)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->x();+  }+  FL_EXPORT_C(int,Fl_Box_y)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->y();+  }+  FL_EXPORT_C(int,Fl_Box_w)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->w();+  }+  FL_EXPORT_C(int,Fl_Box_h)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->h();+  }+  FL_EXPORT_C(void,Fl_Box_set_align)(fl_Box box, Fl_Align alignment){+    (static_cast<Fl_DerivedBox*>(box))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Box_align)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Box_box)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->box();+  }+  FL_EXPORT_C(void,Fl_Box_set_box)(fl_Box box,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedBox*>(box))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Box_color)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->color();+  }+  FL_EXPORT_C(void,Fl_Box_set_color)(fl_Box box,Fl_Color bg){+    (static_cast<Fl_DerivedBox*>(box))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Box_set_color_with_bg_sel)(fl_Box box,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedBox*>(box))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Box_selection_color)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Box_set_selection_color)(fl_Box box,Fl_Color a){+    (static_cast<Fl_DerivedBox*>(box))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Box_label)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->label();+  }+  FL_EXPORT_C(void,Fl_Box_copy_label)(fl_Box box,const char* new_label){+    (static_cast<Fl_DerivedBox*>(box))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Box_set_label)(fl_Box box,const char* text){+    (static_cast<Fl_DerivedBox*>(box))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Box_labeltype)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Box_set_labeltype)(fl_Box box,Fl_Labeltype a){+    (static_cast<Fl_DerivedBox*>(box))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Box_set_labelcolor)(fl_Box box,Fl_Color c){+    (static_cast<Fl_DerivedBox*>(box))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Box_labelcolor)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Box_labelfont)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Box_set_labelfont)(fl_Box box,Fl_Font c){+    (static_cast<Fl_DerivedBox*>(box))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Box_labelsize)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Box_set_labelsize)(fl_Box box,Fl_Fontsize pix){+    (static_cast<Fl_DerivedBox*>(box))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Box_image)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->image();+  }+  FL_EXPORT_C(void,Fl_Box_set_image)(fl_Box box,fl_Image pix){+    (static_cast<Fl_DerivedBox*>(box))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Box_deimage)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->deimage();+  }+  FL_EXPORT_C(void,Fl_Box_set_deimage)(fl_Box box,fl_Image pix){+    (static_cast<Fl_DerivedBox*>(box))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Box_tooltip)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Box_copy_tooltip)(fl_Box box,const char* text){+    (static_cast<Fl_DerivedBox*>(box))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Box_set_tooltip)(fl_Box box,const char* text){+    (static_cast<Fl_DerivedBox*>(box))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Box_set_callback_with_user_data)(fl_Box box,fl_Callback cb,void* p){+    Fl_Box* castedBox = (static_cast<Fl_DerivedBox*>(box));+    new C_to_Fl_Callback(castedBox, cb, p);+  }+  FL_EXPORT_C(void,Fl_Box_set_callback)(fl_Box box,fl_Callback cb){+    Fl_Box* castedBox = (static_cast<Fl_DerivedBox*>(box));+    new C_to_Fl_Callback(castedBox, cb);+  }+  FL_EXPORT_C(void*,Fl_Box_user_data)(fl_Box box){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedBox*>(box))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedBox*>(box))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Box_set_user_data)(fl_Box box,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Box*>(box))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Box*>(box))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Box*>(box))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Box_argument)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->argument();+  }+  FL_EXPORT_C(void,Fl_Box_set_argument)(fl_Box box,long v){+    (static_cast<Fl_DerivedBox*>(box))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Box_when)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->when();+  }+  FL_EXPORT_C(void,Fl_Box_set_when)(fl_Box box,uchar i){+    (static_cast<Fl_DerivedBox*>(box))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Box_visible)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->visible();+  }+  FL_EXPORT_C(int,Fl_Box_visible_r)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Box_set_visible)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->visible();+  }+  FL_EXPORT_C(void,Fl_Box_clear_visible)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Box_active)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->active();+  }+  FL_EXPORT_C(int,Fl_Box_active_r)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->active_r();+  }+  FL_EXPORT_C(void,Fl_Box_activate)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->activate();+  }+  FL_EXPORT_C(void,Fl_Box_deactivate)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Box_output)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->output();+  }+  FL_EXPORT_C(void,Fl_Box_set_output)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->output();+  }+  FL_EXPORT_C(void,Fl_Box_clear_output)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Box_takesevents)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Box_set_changed)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->changed();+  }+  FL_EXPORT_C(void,Fl_Box_clear_changed)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Box_take_focus)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Box_set_visible_focus)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Box_clear_visible_focus)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Box_modify_visible_focus)(fl_Box box,int v){+    (static_cast<Fl_DerivedBox*>(box))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Box_visible_focus)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Box_do_callback)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Box_do_callback_with_widget_and_user_data)(fl_Box box,fl_Widget w,long arg){+    (static_cast<Fl_DerivedBox*>(box))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Box_do_callback_with_widget_and_default_user_data)(fl_Box box,fl_Widget w){+    (static_cast<Fl_DerivedBox*>(box))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Box_contains)(fl_Box box,fl_Widget w){+    return (static_cast<Fl_DerivedBox*>(box))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Box_inside)(fl_Box box,fl_Widget w){+    return (static_cast<Fl_DerivedBox*>(box))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Box_redraw)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->redraw();+  }+  FL_EXPORT_C(void,Fl_Box_redraw_label)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Box_damage)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->damage();+  }+  FL_EXPORT_C(void,Fl_Box_clear_damage_with_bitmask)(fl_Box box,uchar c){+    (static_cast<Fl_DerivedBox*>(box))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Box_clear_damage)(fl_Box box){+    (static_cast<Fl_DerivedBox*>(box))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Box_damage_with_text)(fl_Box box,uchar c){+    (static_cast<Fl_DerivedBox*>(box))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Box_damage_inside_widget)(fl_Box box,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedBox*>(box))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Box_draw_label_with_xywh_alignment)(fl_Box box,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedBox*>(box))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Box_measure_label)(fl_Box box,int* ww,int* hh){+    (static_cast<Fl_DerivedBox*>(box))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(void*, Fl_Box_other_data)(fl_Box box){+    return (static_cast<Fl_DerivedBox*>(box))->get_other_data();+  }+  FL_EXPORT_C(void, Fl_Box_set_other_data)(fl_Box box, void* v){+    (static_cast<Fl_DerivedBox*>(box))->set_other_data(v);+  }+  FL_EXPORT_C(fl_Box, Fl_Box_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    fl_Box_Virtual_Funcs* funcs = Fl_Box_default_virtual_funcs();+    Fl_DerivedBox* box = new Fl_DerivedBox(x,y,w,h,label,funcs);+    return (static_cast<fl_Box>(box));+  }+  FL_EXPORT_C(fl_Box,    Fl_OverriddenBox_New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Box_Virtual_Funcs* funcs){+    Fl_DerivedBox* box = new Fl_DerivedBox(x,y,w,h,label,funcs);+    return (static_cast<fl_Box>(box));+  }+  FL_EXPORT_C(fl_Box, Fl_Box_New)(int x, int y, int w, int h) {+    fl_Box_Virtual_Funcs* funcs = Fl_Box_default_virtual_funcs();+    Fl_DerivedBox* box = new Fl_DerivedBox(x,y,w,h,0,funcs);+    return (fl_Box)box;+  }+  FL_EXPORT_C(fl_Box   , Fl_OverriddenBox_New)(int x, int y, int w, int h, fl_Box_Virtual_Funcs* funcs){+    Fl_DerivedBox* box = new Fl_DerivedBox(x,y,w,h,0,funcs);+    return (fl_Box)box;+  }+  FL_EXPORT_C(fl_Box, Fl_Box_New_WithBoxtype)(Fl_Boxtype b, int x, int y, int w, int h, const char* label) {+    fl_Box_Virtual_Funcs* funcs = Fl_Box_default_virtual_funcs();+    Fl_DerivedBox* box = new Fl_DerivedBox(b,x,y,w,h,label,funcs);+    return (static_cast<fl_Box>(box));+  }+  FL_EXPORT_C(fl_Box,    Fl_OverriddenBox_New_WithBoxtype)(Fl_Boxtype b, int x, int y, int w, int h, const char* label, fl_Box_Virtual_Funcs* funcs){+    Fl_DerivedBox* box = new Fl_DerivedBox(b,x,y,w,h,label,funcs);+    return (static_cast<fl_Box>(box));+  }+  FL_EXPORT_C(void,      Fl_Box_Destroy)(fl_Box box){+    delete (static_cast<Fl_DerivedBox*>(box));+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_BoxC.h view
@@ -0,0 +1,150 @@+#ifndef __FL_BOX_C__+#define __FL_BOX_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Box is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Box.H"+#include "Fl_CallbackC.h"+EXPORT {+  class Fl_DerivedBox : public Fl_Box {+    fl_Box_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void destroy_data();+    void draw_super();+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    virtual int handle(int event);+    void resize_super(int x, int y, int w, int h);+    virtual void resize(int x, int y, int w, int h);+    virtual void show();+    virtual void hide();+    virtual Fl_Window* as_window();+    virtual Fl_Gl_Window* as_gl_window();+    Fl_DerivedBox(int X, int Y, int W, int H, const char *l, fl_Box_Virtual_Funcs* funcs);+    Fl_DerivedBox(int X, int Y, int W, int H, fl_Box_Virtual_Funcs* funcs);+    Fl_DerivedBox(Fl_Boxtype b, int X, int Y, int W, int H, const char* l, fl_Box_Virtual_Funcs* funcs);+    ~Fl_DerivedBox();+  };+#endif+  FL_EXPORT_C(void, Fl_Box_draw_super)(fl_Box box);+  FL_EXPORT_C(int,Fl_Box_handle)(fl_Widget self, int event);+  FL_EXPORT_C(int,Fl_Box_handle_super)(fl_Widget self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Box_parent)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_parent)(fl_Box box, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Box_type)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_type)(fl_Box box, uchar t);++FL_EXPORT_C(void, Fl_Box_draw_box)(fl_Box Box);+FL_EXPORT_C(void, Fl_Box_draw_box_with_tc)(fl_Box Box,Fl_Boxtype t, Fl_Color c);+FL_EXPORT_C(void, Fl_Box_draw_box_with_txywhc)(fl_Box Box,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+FL_EXPORT_C(void, Fl_Box_draw_backdrop)(fl_Box Box);+FL_EXPORT_C(void, Fl_Box_draw_focus)(fl_Box Box);+FL_EXPORT_C(void, Fl_Box_draw_focus_with_txywh)(fl_Box Box,Fl_Boxtype t, int x,int y,int w,int h);+FL_EXPORT_C(void, Fl_Box_draw_label)(fl_Box Box);+  FL_EXPORT_C(int,          Fl_Box_x)(fl_Box box);+  FL_EXPORT_C(int,          Fl_Box_y)(fl_Box box);+  FL_EXPORT_C(int,          Fl_Box_w)(fl_Box box);+  FL_EXPORT_C(int,          Fl_Box_h)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_align)(fl_Box box, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Box_align)(fl_Box box);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Box_box)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_box)(fl_Box box, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Box_color)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_color)(fl_Box box, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Box_set_color_with_bg_sel)(fl_Box box,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Box_selection_color)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_selection_color)(fl_Box box, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Box_label)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_copy_label)(fl_Box box, const char* new_label);+  FL_EXPORT_C(void,         Fl_Box_set_label)(fl_Box box, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Box_labeltype)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_labeltype)(fl_Box box, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Box_labelcolor)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_labelcolor)(fl_Box box, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Box_labelfont)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_labelfont)(fl_Box box, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Box_labelsize)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_labelsize)(fl_Box box, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Box_image)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_image)(fl_Box box, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Box_deimage)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_deimage)(fl_Box box, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Box_tooltip)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_copy_tooltip)(fl_Box box, const char* text);+  FL_EXPORT_C(void,         Fl_Box_set_tooltip)(fl_Box box, const char* text);+  FL_EXPORT_C(void,         Fl_Box_set_callback_with_user_data)(fl_Box box, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Box_set_callback)(fl_Box box, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Box_other_data)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_other_data)(fl_Box box, void* v);+  FL_EXPORT_C(void*,        Fl_Box_user_data)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_user_data)(fl_Box box, void* v);+  FL_EXPORT_C(long,         Fl_Box_argument)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_argument)(fl_Box box, long v);+  FL_EXPORT_C(Fl_When,      Fl_Box_when)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_when)(fl_Box box, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Box_visible)(fl_Box box);+  FL_EXPORT_C(int,          Fl_Box_visible_r)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_show_super)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_show)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_hide_super)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_hide)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_visible)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_clear_visible)(fl_Box box);+  FL_EXPORT_C(unsigned int, Fl_Box_active)(fl_Box box);+  FL_EXPORT_C(int,          Fl_Box_active_r)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_activate)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_deactivate)(fl_Box box);+  FL_EXPORT_C(unsigned int, Fl_Box_output)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_output)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_clear_output)(fl_Box box);+  FL_EXPORT_C(unsigned int, Fl_Box_takesevents)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_changed)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_clear_changed)(fl_Box box);+  FL_EXPORT_C(int,          Fl_Box_take_focus)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_set_visible_focus)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_clear_visible_focus)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_modify_visible_focus)(fl_Box box, int v);+  FL_EXPORT_C(unsigned int, Fl_Box_visible_focus)(fl_Box box);+  FL_EXPORT_C(int,          Fl_Box_contains)(fl_Box box, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Box_inside)(fl_Box box, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Box_redraw)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_redraw_label)(fl_Box box);+  FL_EXPORT_C(uchar,        Fl_Box_damage)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_clear_damage_with_bitmask)(fl_Box box, uchar c);+  FL_EXPORT_C(void,         Fl_Box_clear_damage)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_damage_with_text)(fl_Box box, uchar c);+  FL_EXPORT_C(void,         Fl_Box_damage_inside_widget)(fl_Box box, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Box_draw_label_with_xywh_alignment)(fl_Box box, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Box_measure_label)(fl_Box box, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Box_window)(fl_Box box);+  FL_EXPORT_C(fl_Window,    Fl_Box_top_window)(fl_Box box);+  FL_EXPORT_C(fl_Window ,   Fl_Box_top_window_offset)(fl_Box box, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Gl_Window, Fl_Box_as_gl_window_super)(fl_Box box);+  FL_EXPORT_C(fl_Gl_Window, Fl_Box_as_gl_window)(fl_Box box);+  FL_EXPORT_C(void,         Fl_Box_resize_super)(fl_Table table,int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Box_resize)(fl_Table table,int X, int Y, int W, int H);++  FL_EXPORT_C(fl_Box_Virtual_Funcs*, Fl_Box_default_virtual_funcs)();+  FL_EXPORT_C(fl_Box,    Fl_Box_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Box,    Fl_OverriddenBox_New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Box_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Box   , Fl_Box_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Box   , Fl_OverriddenBox_New)(int x, int y, int w, int h, fl_Box_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Box,    Fl_Box_New_WithBoxtype)(Fl_Boxtype b, int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Box,    Fl_OverriddenBox_New_WithBoxtype)(Fl_Boxtype b, int x, int y, int w, int h, const char* label, fl_Box_Virtual_Funcs* funcs);+  FL_EXPORT_C(void,      Fl_Box_Destroy)(fl_Box box);+#ifdef __cplusplus+}+#endif+#endif /* __FL_BOX_C__ */
+ c-src/Fl_BrowserC.cpp view
@@ -0,0 +1,692 @@+#include "Fl_BrowserC.h"+#ifdef __cplusplus+Fl_DerivedBrowser::Fl_DerivedBrowser(int X, int Y, int W, int H, const char *l, fl_Browser_Virtual_Funcs* funcs) : Fl_Browser(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = (void*)0;+ }+Fl_DerivedBrowser::Fl_DerivedBrowser(int X, int Y, int W, int H, fl_Browser_Virtual_Funcs* funcs):Fl_Browser(X,Y,W,H,0){+    overriddenFuncs = funcs;+    other_data = (void*)0;+}+Fl_DerivedBrowser::~Fl_DerivedBrowser(){+  free(overriddenFuncs);+  free(other_data);+}+void* Fl_DerivedBrowser::get_other_data(){+  return this->other_data;+}+void Fl_DerivedBrowser::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedBrowser::draw(){+  if (this->overriddenFuncs->draw != NULL) {+    this->overriddenFuncs->draw((fl_Browser) this);+  }+  else {+    Fl_Browser::draw();+  }+}+void Fl_DerivedBrowser::draw_box(){+  Fl_Browser::draw_box();+}+void Fl_DerivedBrowser::draw_box(Fl_Boxtype t, Fl_Color c){+  Fl_Browser::draw_box(t,c);+}+void Fl_DerivedBrowser::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+  Fl_Browser::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedBrowser::draw_backdrop(){+  Fl_Browser::draw_backdrop();+}+void Fl_DerivedBrowser::draw_focus(){+  Fl_Browser::draw_focus();+}+void Fl_DerivedBrowser::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+  Fl_Browser::draw_focus(t,x,y,w,h);+}+void Fl_DerivedBrowser::draw_label(){+  Fl_Browser::draw_label();+}+void Fl_DerivedBrowser::draw_label(int x,int y,int w,int h,Fl_Align alignment){+  Fl_Browser::draw_label(x,y,w,h,alignment);+}+int Fl_DerivedBrowser::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Browser) this,event);+  }+  else {+    i = Fl_Browser::handle(event);+  }+  return i;+}+void Fl_DerivedBrowser::resize_super(int x, int y, int w, int h){+  Fl_Browser::resize(x,y,w,h);+}+void Fl_DerivedBrowser::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Browser) this,x,y,w,h);+  }+  else {+    Fl_Browser::resize(x,y,w,h);+  }+}+void Fl_DerivedBrowser::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Browser) this);+  }+  else {+    Fl_Browser::show();+  }+}+void Fl_DerivedBrowser::show(int val){+  if (this->overriddenFuncs->show_with_line != NULL) {+    this->overriddenFuncs->show_with_line((fl_Browser) this, val);+  }+  else {+    Fl_Browser::show(val);+  }+}+void Fl_DerivedBrowser::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Browser) this);+  }+  else {+    Fl_Browser::hide();+  }+}+void Fl_DerivedBrowser::hide(int line){+  if (this->overriddenFuncs->hide_with_line != NULL) {+    this->overriddenFuncs->hide_with_line((fl_Browser) this, line);+  }+  else {+    Fl_Browser::hide(line);+  }+}+Fl_Group* Fl_DerivedBrowser::as_group(){+  Fl_Group* grp;+  if (this->overriddenFuncs->as_group != NULL) {+    grp = (static_cast<Fl_Group*>(this->overriddenFuncs->as_group((fl_Browser) this)));+  }+  else {+    grp = Fl_Browser::as_group();+  }+  return grp;+}+Fl_Window* Fl_DerivedBrowser::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Browser) this)));+  }+  else {+    win = Fl_Browser::as_window();+  }+  return win;+}+Fl_Gl_Window* Fl_DerivedBrowser::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Browser) this)));+  }+  else {+    win = Fl_Browser::as_gl_window();+  }+  return win;+}+EXPORT {+#endif+  FL_EXPORT_C(fl_Browser_Virtual_Funcs*, Fl_Browser_default_virtual_funcs)(){+    fl_Browser_Virtual_Funcs* ptr = (fl_Browser_Virtual_Funcs*)malloc(sizeof(fl_Browser_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->show_with_line = NULL;+    ptr->hide = NULL;+    ptr->hide_with_line = NULL;+    ptr->as_group = NULL;+    ptr->as_window = NULL;+    ptr->as_gl_window = NULL;+    ptr->destroy_data = NULL;+    return ptr;+  }+  FL_EXPORT_C(int,Fl_Browser_handle)(fl_Browser self, int event){+    return (static_cast<Fl_DerivedBrowser*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Browser_parent)(fl_Browser browser){+    return (fl_Group) (static_cast<Fl_DerivedBrowser*>(browser))->parent();+  }+  FL_EXPORT_C(void,Fl_Browser_set_parent)(fl_Browser browser,fl_Group grp){+    (static_cast<Fl_DerivedBrowser*>(browser))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Browser_type)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->type();+  }+  FL_EXPORT_C(void,Fl_Browser_set_type)(fl_Browser browser,uchar t){+    (static_cast<Fl_DerivedBrowser*>(browser))->type(t);+  }++FL_EXPORT_C(void, Fl_Browser_draw_box)(fl_Browser Browser){+ (static_cast<Fl_DerivedBrowser*>(Browser))->draw_box();+}+FL_EXPORT_C(void, Fl_Browser_draw_box_with_tc)(fl_Browser Browser,Fl_Boxtype t, Fl_Color c){+ (static_cast<Fl_DerivedBrowser*>(Browser))->draw_box(t,c);+}+FL_EXPORT_C(void, Fl_Browser_draw_box_with_txywhc)(fl_Browser Browser,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+ (static_cast<Fl_DerivedBrowser*>(Browser))->draw_box(t,x,y,w,h,c);+}+FL_EXPORT_C(void, Fl_Browser_draw_backdrop)(fl_Browser Browser){+ (static_cast<Fl_DerivedBrowser*>(Browser))->draw_backdrop();+}+FL_EXPORT_C(void, Fl_Browser_draw_focus)(fl_Browser Browser){+ (static_cast<Fl_DerivedBrowser*>(Browser))->draw_focus();+}+FL_EXPORT_C(void, Fl_Browser_draw_focus_with_txywh)(fl_Browser Browser,Fl_Boxtype t, int x,int y,int w,int h){+ (static_cast<Fl_DerivedBrowser*>(Browser))->draw_focus(t,x,y,w,h);+}+FL_EXPORT_C(void, Fl_Browser_draw_label)(fl_Browser Browser){+ (static_cast<Fl_DerivedBrowser*>(Browser))->draw_label();+}+  FL_EXPORT_C(int,Fl_Browser_x)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->x();+  }+  FL_EXPORT_C(int,Fl_Browser_y)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->y();+  }+  FL_EXPORT_C(int,Fl_Browser_w)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->w();+  }+  FL_EXPORT_C(int,Fl_Browser_h)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->h();+  }+  FL_EXPORT_C(void,Fl_Browser_set_align)(fl_Browser browser, Fl_Align alignment){+    (static_cast<Fl_DerivedBrowser*>(browser))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Browser_align)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Browser_box)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->box();+  }+  FL_EXPORT_C(void,Fl_Browser_set_box)(fl_Browser browser,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedBrowser*>(browser))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Browser_color)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->color();+  }+  FL_EXPORT_C(void,Fl_Browser_set_color)(fl_Browser browser,Fl_Color bg){+    (static_cast<Fl_DerivedBrowser*>(browser))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Browser_set_color_with_bg_sel)(fl_Browser browser,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedBrowser*>(browser))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Browser_selection_color)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Browser_set_selection_color)(fl_Browser browser,Fl_Color a){+    (static_cast<Fl_DerivedBrowser*>(browser))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Browser_label)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->label();+  }+  FL_EXPORT_C(void,Fl_Browser_copy_label)(fl_Browser browser,const char* new_label){+    (static_cast<Fl_DerivedBrowser*>(browser))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Browser_set_label)(fl_Browser browser,const char* text){+    (static_cast<Fl_DerivedBrowser*>(browser))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Browser_labeltype)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Browser_set_labeltype)(fl_Browser browser,Fl_Labeltype a){+    (static_cast<Fl_DerivedBrowser*>(browser))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Browser_set_labelcolor)(fl_Browser browser,Fl_Color c){+    (static_cast<Fl_DerivedBrowser*>(browser))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Browser_labelcolor)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Browser_labelfont)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Browser_set_labelfont)(fl_Browser browser,Fl_Font c){+    (static_cast<Fl_DerivedBrowser*>(browser))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Browser_labelsize)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Browser_set_labelsize)(fl_Browser browser,Fl_Fontsize pix){+    (static_cast<Fl_DerivedBrowser*>(browser))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Browser_image)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->image();+  }+  FL_EXPORT_C(void,Fl_Browser_set_image)(fl_Browser browser,fl_Image pix){+    (static_cast<Fl_DerivedBrowser*>(browser))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Browser_deimage)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->deimage();+  }+  FL_EXPORT_C(void,Fl_Browser_set_deimage)(fl_Browser browser,fl_Image pix){+    (static_cast<Fl_DerivedBrowser*>(browser))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Browser_tooltip)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Browser_copy_tooltip)(fl_Browser browser,const char* text){+    (static_cast<Fl_DerivedBrowser*>(browser))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Browser_set_tooltip)(fl_Browser browser,const char* text){+    (static_cast<Fl_DerivedBrowser*>(browser))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Browser_set_callback_with_user_data)(fl_Browser browser,fl_Callback* cb,void* p){+    Fl_DerivedBrowser* castedWindow = (static_cast<Fl_DerivedBrowser*>(browser));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Browser_set_callback)(fl_Browser browser,fl_Callback* cb){+    Fl_DerivedBrowser* castedWindow = (static_cast<Fl_DerivedBrowser*>(browser));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Browser_other_data)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->get_other_data();+  }+  FL_EXPORT_C(void,Fl_Browser_set_other_data)(fl_Browser browser,void* v){+    (static_cast<Fl_DerivedBrowser*>(browser))->set_other_data(v);+  }+  FL_EXPORT_C(void*,Fl_Browser_user_data)(fl_Browser browser){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedBrowser*>(browser))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedBrowser*>(browser))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Browser_set_user_data)(fl_Browser browser,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Browser*>(browser))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Browser*>(browser))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Browser*>(browser))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Browser_argument)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->argument();+  }+  FL_EXPORT_C(void,Fl_Browser_set_argument)(fl_Browser browser,long v){+    (static_cast<Fl_DerivedBrowser*>(browser))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Browser_when)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->when();+  }+  FL_EXPORT_C(void,Fl_Browser_set_when)(fl_Browser browser,uchar i){+    (static_cast<Fl_DerivedBrowser*>(browser))->when(i);+  }+  FL_EXPORT_C(int,Fl_Browser_visible_r)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Browser_show_super)(fl_Browser browser){+    return (static_cast<Fl_Browser*>(browser))->show();+  }+  FL_EXPORT_C(void,Fl_Browser_hide_super)(fl_Browser browser){+    return (static_cast<Fl_Browser*>(browser))->hide();+  }+  FL_EXPORT_C(void,Fl_Browser_clear_visible)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Browser_active)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->active();+  }+  FL_EXPORT_C(int,Fl_Browser_active_r)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->active_r();+  }+  FL_EXPORT_C(void,Fl_Browser_activate)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->activate();+  }+  FL_EXPORT_C(void,Fl_Browser_deactivate)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Browser_output)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->output();+  }+  FL_EXPORT_C(void,Fl_Browser_set_output)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->output();+  }+  FL_EXPORT_C(void,Fl_Browser_clear_output)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Browser_takesevents)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Browser_set_changed)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->changed();+  }+  FL_EXPORT_C(void,Fl_Browser_clear_changed)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Browser_take_focus)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Browser_set_visible_focus)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Browser_clear_visible_focus)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Browser_modify_visible_focus)(fl_Browser browser,int v){+    (static_cast<Fl_DerivedBrowser*>(browser))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Browser_visible_focus)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_Browser_contains)(fl_Browser browser,fl_Widget w){+    return (static_cast<Fl_DerivedBrowser*>(browser))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Browser_inside)(fl_Browser browser,fl_Widget w){+    return (static_cast<Fl_DerivedBrowser*>(browser))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Browser_redraw)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->redraw();+  }+  FL_EXPORT_C(void,Fl_Browser_redraw_label)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Browser_damage)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->damage();+  }+  FL_EXPORT_C(void,Fl_Browser_clear_damage_with_bitmask)(fl_Browser browser,uchar c){+    (static_cast<Fl_DerivedBrowser*>(browser))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Browser_clear_damage)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Browser_damage_with_text)(fl_Browser browser,uchar c){+    (static_cast<Fl_DerivedBrowser*>(browser))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Browser_damage_inside_widget)(fl_Browser browser,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedBrowser*>(browser))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Browser_draw_label_with_xywh_alignment)(fl_Browser browser,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedBrowser*>(browser))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Browser_measure_label)(fl_Browser browser,int* ww,int* hh){+    (static_cast<Fl_DerivedBrowser*>(browser))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Browser_window)(fl_Browser browser){+    return (fl_Window) (static_cast<Fl_DerivedBrowser*>(browser))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Browser_top_window)(fl_Browser browser){+    return (fl_Window) (static_cast<Fl_DerivedBrowser*>(browser))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Browser_top_window_offset)(fl_Browser browser, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedBrowser*>(browser))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Browser_as_group_super)(fl_Browser browser){+    return (fl_Group) (static_cast<Fl_Browser*>(browser))->as_group();+  }+  FL_EXPORT_C(fl_Group,Fl_Browser_as_group)(fl_Browser browser){+    return (fl_Group) (static_cast<Fl_DerivedBrowser*>(browser))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Browser_as_gl_window_super)(fl_Browser browser){+    return (fl_Gl_Window) (static_cast<Fl_Browser*>(browser))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Browser_as_gl_window)(fl_Browser browser){+    return (fl_Gl_Window) (static_cast<Fl_DerivedBrowser*>(browser))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Browser_set_resizable_by_reference)(fl_Browser browser,fl_Widget o){+    (static_cast<Fl_DerivedBrowser*>(browser))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Browser_set_resizable)(fl_Browser browser,fl_Widget o){+    (static_cast<Fl_DerivedBrowser*>(browser))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Browser_resizable)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->resizable();+  }+  FL_EXPORT_C(void,Fl_Browser_add_resizable)(fl_Browser browser,fl_Widget o){+    return (static_cast<Fl_DerivedBrowser*>(browser))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Browser_set_clip_children)(fl_Browser browser,int c){+    return (static_cast<Fl_DerivedBrowser*>(browser))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Browser_clip_children)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Browser_focus)(fl_Browser browser, fl_Widget W){+    return (static_cast<Fl_DerivedBrowser*>(browser))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Browser__ddfdesign_kludge)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->_ddfdesign_kludge();+  }+  // FL_EXPORT_C(void,Fl_Browser_forms_end)(fl_Browser self){+  //   (static_cast<Fl_DerivedBrowser*>(self))->forms_end();+  // }++  FL_EXPORT_C(fl_Browser, Fl_Browser_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    fl_Browser_Virtual_Funcs* funcs = Fl_Browser_default_virtual_funcs();+    Fl_DerivedBrowser* browser = new Fl_DerivedBrowser(x,y,w,h,label,funcs);+    return (static_cast<fl_Browser>(browser));+  }+  FL_EXPORT_C(fl_Browser, Fl_Browser_New)(int x, int y, int w, int h) {+    fl_Browser_Virtual_Funcs* funcs = Fl_Browser_default_virtual_funcs();+    Fl_DerivedBrowser* browser = new Fl_DerivedBrowser(x,y,w,h,0,funcs);+    return (fl_Browser)browser;+  }+  FL_EXPORT_C(fl_Browser, Fl_OverriddenBrowser_New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Browser_Virtual_Funcs* funcs) {+    Fl_DerivedBrowser* browser = new Fl_DerivedBrowser(x,y,w,h,label,funcs);+    return (static_cast<fl_Browser>(browser));+  }+  FL_EXPORT_C(fl_Browser, Fl_OverriddenBrowser_New)(int x, int y, int w, int h, fl_Browser_Virtual_Funcs* funcs) {+    Fl_DerivedBrowser* browser = new Fl_DerivedBrowser(x,y,w,h,0,funcs);+    return (fl_Browser)browser;+  }+  FL_EXPORT_C(void,Fl_Browser_Destroy)(fl_Browser browser){+    delete (static_cast<Fl_DerivedBrowser*>(browser));+  }+  FL_EXPORT_C(void,Fl_Browser_remove)(fl_Browser browser,int line){+    return (static_cast<Fl_DerivedBrowser*>(browser))->remove(line);+  }+  FL_EXPORT_C(void,Fl_Browser_add)(fl_Browser browser,const char* newtext){+    return (static_cast<Fl_DerivedBrowser*>(browser))->add(newtext);+  }+  FL_EXPORT_C(void,Fl_Browser_add_with_d)(fl_Browser browser,const char* newtext,void* d){+    return (static_cast<Fl_DerivedBrowser*>(browser))->add(newtext,d);+  }+  FL_EXPORT_C(void,Fl_Browser_insert)(fl_Browser browser,int line,const char* newtext){+    return (static_cast<Fl_DerivedBrowser*>(browser))->insert(line,newtext);+  }+  FL_EXPORT_C(void,Fl_Browser_insert_with_d)(fl_Browser browser,int line,const char* newtext,void* d){+    return (static_cast<Fl_DerivedBrowser*>(browser))->insert(line,newtext,d);+  }+  FL_EXPORT_C(void,Fl_Browser_move)(fl_Browser browser,int to,int from){+    return (static_cast<Fl_DerivedBrowser*>(browser))->move(to,from);+  }+  FL_EXPORT_C(int,Fl_Browser_load)(fl_Browser browser,const char* filename){+    return (static_cast<Fl_DerivedBrowser*>(browser))->load(filename);+  }+  FL_EXPORT_C(void,Fl_Browser_swap)(fl_Browser browser,int a, int b){+    (static_cast<Fl_DerivedBrowser*>(browser))->swap(a,b);+  }+  FL_EXPORT_C(void,Fl_Browser_clear)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->clear();+  }+  FL_EXPORT_C(int,Fl_Browser_size)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->size();+  }+  FL_EXPORT_C(void,Fl_Browser_set_size)(fl_Browser browser,int W,int H){+    return (static_cast<Fl_DerivedBrowser*>(browser))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_Browser_topline)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->topline();+  }+  FL_EXPORT_C(void,Fl_Browser_lineposition)(fl_Browser browser,int line,Fl_Line_Position pos){+    Fl_Browser::Fl_Line_Position p = (Fl_Browser::Fl_Line_Position)-1;+    switch(p){+    case TOP :    {p = Fl_Browser::TOP; break;}+    case BOTTOM : {p = Fl_Browser::BOTTOM; break;}+    case MIDDLE : {p = Fl_Browser::MIDDLE; break;}+    default:      {p = (Fl_Browser::Fl_Line_Position)-1; break;}+    }+    return (static_cast<Fl_DerivedBrowser*>(browser))->lineposition(line,p);+  }+  FL_EXPORT_C(void,Fl_Browser_set_topline)(fl_Browser browser,int line){+    return (static_cast<Fl_DerivedBrowser*>(browser))->topline(line);+  }+  FL_EXPORT_C(void,Fl_Browser_bottomline)(fl_Browser browser,int line){+    return (static_cast<Fl_DerivedBrowser*>(browser))->bottomline(line);+  }+  FL_EXPORT_C(void,Fl_Browser_middleline)(fl_Browser browser,int line){+    return (static_cast<Fl_DerivedBrowser*>(browser))->middleline(line);+  }+  FL_EXPORT_C(int,Fl_Browser_select)(fl_Browser browser,int line){+    return (static_cast<Fl_DerivedBrowser*>(browser))->select(line);+  }+  FL_EXPORT_C(int,Fl_Browser_select_with_val)(fl_Browser browser,int line,int val){+    return (static_cast<Fl_DerivedBrowser*>(browser))->select(line,val);+  }+  FL_EXPORT_C(int,Fl_Browser_selected)(fl_Browser browser,int line){+    return (static_cast<Fl_DerivedBrowser*>(browser))->selected(line);+  }+  FL_EXPORT_C(void,Fl_Browser_show_with_line)(fl_Browser browser,int line){+    (static_cast<Fl_DerivedBrowser*>(browser))->show(line);+  }+  FL_EXPORT_C(void,Fl_Browser_show)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->show();+  }+  FL_EXPORT_C(void,Fl_Browser_hide_with_line)(fl_Browser browser,int line){+    (static_cast<Fl_DerivedBrowser*>(browser))->hide(line);+  }+  FL_EXPORT_C(void,Fl_Browser_hide)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->hide();+  }+  FL_EXPORT_C(int,Fl_Browser_visible)(fl_Browser browser,int line){+    return (static_cast<Fl_DerivedBrowser*>(browser))->visible(line);+  }+  FL_EXPORT_C(int,Fl_Browser_value)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->value();+  }+  FL_EXPORT_C(void,Fl_Browser_set_value)(fl_Browser browser,int line){+    (static_cast<Fl_DerivedBrowser*>(browser))->value(line);+  }+  FL_EXPORT_C(const char*,Fl_Browser_text)(fl_Browser browser,int line){+    return (static_cast<Fl_DerivedBrowser*>(browser))->text(line);+  }+  FL_EXPORT_C(void,Fl_Browser_set_text)(fl_Browser browser,int line,const char* newtext){+    (static_cast<Fl_DerivedBrowser*>(browser))->text(line,newtext);+  }+  FL_EXPORT_C(void*,Fl_Browser_data)(fl_Browser browser,int line){+    return (static_cast<Fl_DerivedBrowser*>(browser))->data(line);+  }+  FL_EXPORT_C(void,Fl_Browser_set_data)(fl_Browser browser,int line,void* d){+    (static_cast<Fl_DerivedBrowser*>(browser))->data(line,d);+  }+  FL_EXPORT_C(char,Fl_Browser_format_char)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->format_char();+  }+  FL_EXPORT_C(void,Fl_Browser_set_format_char)(fl_Browser browser,char c){+    (static_cast<Fl_DerivedBrowser*>(browser))->format_char(c);+  }+  FL_EXPORT_C(char,Fl_Browser_column_char)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->column_char();+  }+  FL_EXPORT_C(void,Fl_Browser_set_column_char)(fl_Browser browser,char c){+    (static_cast<Fl_DerivedBrowser*>(browser))->column_char(c);+  }+  FL_EXPORT_C(const int*,Fl_Browser_column_widths)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->column_widths();+  }+  FL_EXPORT_C(void,Fl_Browser_set_column_widths)(fl_Browser browser,const int* arr){+    (static_cast<Fl_DerivedBrowser*>(browser))->column_widths(arr);+  }+  FL_EXPORT_C(int,Fl_Browser_displayed)(fl_Browser browser,int line){+    return (static_cast<Fl_DerivedBrowser*>(browser))->displayed(line);+  }+  FL_EXPORT_C(void,Fl_Browser_make_visible)(fl_Browser browser,int line){+    (static_cast<Fl_DerivedBrowser*>(browser))->make_visible(line);+  }+  FL_EXPORT_C(void,Fl_Browser_set_icon)(fl_Browser browser,int line,fl_Image icon){+    (static_cast<Fl_DerivedBrowser*>(browser))->icon(line,(static_cast<Fl_Image*>(icon)));+  }+  FL_EXPORT_C(fl_Image,Fl_Browser_icon)(fl_Browser browser,int line){+    return (fl_Image)(static_cast<Fl_DerivedBrowser*>(browser))->icon(line);+  }+  FL_EXPORT_C(void,Fl_Browser_remove_icon)(fl_Browser browser,int line){+    (static_cast<Fl_DerivedBrowser*>(browser))->remove_icon(line);+  }+  FL_EXPORT_C(int,Fl_Browser_select_only)(fl_Browser browser,void *item){+    return (static_cast<Fl_DerivedBrowser*>(browser))->select_only(item);+  }+  FL_EXPORT_C(int,Fl_Browser_select_only_with_docallbacks)(fl_Browser browser,void *item,int docallbacks){+    return (static_cast<Fl_DerivedBrowser*>(browser))->select_only(item,docallbacks);+  }+  FL_EXPORT_C(int,Fl_Browser_deselect)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->deselect();+  }+  FL_EXPORT_C(int,Fl_Browser_deselect_with_docallbacks)(fl_Browser browser,int docallbacks){+    return (static_cast<Fl_DerivedBrowser*>(browser))->deselect(docallbacks);+  }+  FL_EXPORT_C(int,Fl_Browser_position)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->position();+  }+  FL_EXPORT_C(void,Fl_Browser_set_position)(fl_Browser browser,int pos){+    (static_cast<Fl_DerivedBrowser*>(browser))->position(pos);+  }+  FL_EXPORT_C(int,Fl_Browser_hposition)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->hposition();+  }+  FL_EXPORT_C(void,Fl_Browser_set_hposition)(fl_Browser browser,int ){+    (static_cast<Fl_DerivedBrowser*>(browser))->hposition();+  }+  FL_EXPORT_C(uchar,Fl_Browser_has_scrollbar)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->has_scrollbar();+  }+  FL_EXPORT_C(void,Fl_Browser_set_has_scrollbar)(fl_Browser browser,uchar mode){+    (static_cast<Fl_DerivedBrowser*>(browser))->has_scrollbar(mode);+  }+  FL_EXPORT_C(Fl_Font,Fl_Browser_textfont)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->textfont();+  }+  FL_EXPORT_C(void,Fl_Browser_set_textfont)(fl_Browser browser,Fl_Font font){+    (static_cast<Fl_DerivedBrowser*>(browser))->textfont(font);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Browser_textsize)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->textsize();+  }+  FL_EXPORT_C(void,Fl_Browser_set_textsize)(fl_Browser browser,Fl_Fontsize newSize){+    (static_cast<Fl_DerivedBrowser*>(browser))->textsize(newSize);+  }+  FL_EXPORT_C(Fl_Color,Fl_Browser_textcolor)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Browser_set_textcolor)(fl_Browser browser,Fl_Color col){+    (static_cast<Fl_DerivedBrowser*>(browser))->textcolor(col);+  }+  FL_EXPORT_C(int,Fl_Browser_scrollbar_size)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->scrollbar_size();+  }+  FL_EXPORT_C(void,Fl_Browser_set_scrollbar_size)(fl_Browser browser,int newSize){+    (static_cast<Fl_DerivedBrowser*>(browser))->scrollbar_size(newSize);+  }+  FL_EXPORT_C(int,Fl_Browser_scrollbar_width)(fl_Browser browser){+    return (static_cast<Fl_DerivedBrowser*>(browser))->scrollbar_width();+  }+  FL_EXPORT_C(void,Fl_Browser_set_scrollbar_width)(fl_Browser browser,int width){+    (static_cast<Fl_DerivedBrowser*>(browser))->scrollbar_width(width);+  }+  FL_EXPORT_C(void,Fl_Browser_scrollbar_right)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->scrollbar_right();+  }+  FL_EXPORT_C(void,Fl_Browser_set_scrollbar_left)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->scrollbar_left();+  }+  FL_EXPORT_C(void,Fl_Browser_sort)(fl_Browser browser){+    (static_cast<Fl_DerivedBrowser*>(browser))->sort();+  }+  FL_EXPORT_C(void,Fl_Browser_sort_with_flags)(fl_Browser browser,int flags){+    (static_cast<Fl_DerivedBrowser*>(browser))->sort(flags);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_BrowserC.h view
@@ -0,0 +1,242 @@+#ifndef __FL_BROWSER_C__+#define __FL_BROWSER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Browser.H"+#include "Fl_CallbackC.h"+EXPORT {+  class Fl_DerivedBrowser : public Fl_Browser {+    fl_Browser_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    virtual int handle(int event);+    void resize_super(int x, int y, int w, int h);+    virtual void resize(int x, int y, int w, int h);+    virtual void show();+    virtual void show(int val);+    virtual void hide();+    virtual void hide(int val);+    virtual Fl_Window* as_window();+    virtual Fl_Gl_Window* as_gl_window();+    virtual Fl_Group* as_group();+    Fl_DerivedBrowser(int X, int Y, int W, int H, const char *l, fl_Browser_Virtual_Funcs* funcs);+    Fl_DerivedBrowser(int X, int Y, int W, int H, fl_Browser_Virtual_Funcs* funcs);+    ~Fl_DerivedBrowser();+  };+#endif++  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int ,         Fl_Browser_handle_super)(fl_Browser browser,int event);+  FL_EXPORT_C(int ,         Fl_Browser_handle )(fl_Browser browser,int event);+  FL_EXPORT_C(void,         Fl_Browser_resize_super)(fl_Browser browser,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Browser_resize )(fl_Browser browser,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Browser_show_super)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_show )(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_hide_super)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_hide )(fl_Browser browser);+  FL_EXPORT_C(fl_Window,    Fl_Browser_as_window_super)(fl_Browser browser);+  FL_EXPORT_C(fl_Window,    Fl_Browser_as_window )(fl_Browser browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Browser_as_gl_window_super)(fl_Browser browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Browser_as_gl_window)(fl_Browser browser);+  FL_EXPORT_C(fl_Group,     Fl_Browser_parent)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_parent)(fl_Browser browser, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Browser_type)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_type)(fl_Browser browser, uchar t);++FL_EXPORT_C(void, Fl_Browser_draw_box)(fl_Browser Browser);+FL_EXPORT_C(void, Fl_Browser_draw_box_with_tc)(fl_Browser Browser,Fl_Boxtype t, Fl_Color c);+FL_EXPORT_C(void, Fl_Browser_draw_box_with_txywhc)(fl_Browser Browser,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+FL_EXPORT_C(void, Fl_Browser_draw_backdrop)(fl_Browser Browser);+FL_EXPORT_C(void, Fl_Browser_draw_focus)(fl_Browser Browser);+FL_EXPORT_C(void, Fl_Browser_draw_focus_with_txywh)(fl_Browser Browser,Fl_Boxtype t, int x,int y,int w,int h);+FL_EXPORT_C(void, Fl_Browser_draw_label)(fl_Browser Browser);+  FL_EXPORT_C(int,          Fl_Browser_x)(fl_Browser browser);+  FL_EXPORT_C(int,          Fl_Browser_y)(fl_Browser browser);+  FL_EXPORT_C(int,          Fl_Browser_w)(fl_Browser browser);+  FL_EXPORT_C(int,          Fl_Browser_h)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_align)(fl_Browser browser, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Browser_align)(fl_Browser browser);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Browser_box)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_box)(fl_Browser browser, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Browser_color)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_color)(fl_Browser browser, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Browser_set_color_with_bg_sel)(fl_Browser browser,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Browser_selection_color)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_selection_color)(fl_Browser browser, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Browser_label)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_copy_label)(fl_Browser browser, const char* new_label);+  FL_EXPORT_C(void,         Fl_Browser_set_label)(fl_Browser browser, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Browser_labeltype)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_labeltype)(fl_Browser browser, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Browser_labelcolor)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_labelcolor)(fl_Browser browser, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Browser_labelfont)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_labelfont)(fl_Browser browser, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Browser_labelsize)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_labelsize)(fl_Browser browser, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Browser_image)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_image)(fl_Browser browser, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Browser_deimage)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_deimage)(fl_Browser browser, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Browser_tooltip)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_copy_tooltip)(fl_Browser browser, const char* text);+  FL_EXPORT_C(void,         Fl_Browser_set_tooltip)(fl_Browser browser, const char* text);+  FL_EXPORT_C(void,         Fl_Browser_set_callback_with_user_data)(fl_Browser browser, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Browser_set_callback)(fl_Browser browser, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Browser_user_data)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_user_data)(fl_Browser browser, void* v);+  FL_EXPORT_C(long,         Fl_Browser_argument)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_argument)(fl_Browser browser, long v);+  FL_EXPORT_C(Fl_When,      Fl_Browser_when)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_when)(fl_Browser browser, uchar i);+  FL_EXPORT_C(int,          Fl_Browser_visible_r)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_visible)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_clear_visible)(fl_Browser browser);+  FL_EXPORT_C(unsigned int, Fl_Browser_active)(fl_Browser browser);+  FL_EXPORT_C(int,          Fl_Browser_active_r)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_activate)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_deactivate)(fl_Browser browser);+  FL_EXPORT_C(unsigned int, Fl_Browser_output)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_output)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_clear_output)(fl_Browser browser);+  FL_EXPORT_C(unsigned int, Fl_Browser_takesevents)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_changed)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_clear_changed)(fl_Browser browser);+  FL_EXPORT_C(int,          Fl_Browser_take_focus)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_set_visible_focus)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_clear_visible_focus)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_modify_visible_focus)(fl_Browser browser, int v);+  FL_EXPORT_C(unsigned int, Fl_Browser_visible_focus)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_do_callback)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_do_callback_with_widget_and_user_data)(fl_Browser browser, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Browser_do_callback_with_widget_and_default_user_data)(fl_Browser browser, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Browser_contains)(fl_Browser browser, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Browser_inside)(fl_Browser browser, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Browser_redraw)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_redraw_label)(fl_Browser browser);+  FL_EXPORT_C(uchar,        Fl_Browser_damage)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_clear_damage_with_bitmask)(fl_Browser browser, uchar c);+  FL_EXPORT_C(void,         Fl_Browser_clear_damage)(fl_Browser browser);+  FL_EXPORT_C(void,         Fl_Browser_damage_with_text)(fl_Browser browser, uchar c);+  FL_EXPORT_C(void,         Fl_Browser_damage_inside_widget)(fl_Browser browser, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Browser_draw_label_with_xywh_alignment)(fl_Browser browser, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Browser_measure_label)(fl_Browser browser, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Browser_window)(fl_Browser browser);+  FL_EXPORT_C(fl_Window,    Fl_Browser_top_window)(fl_Browser browser);+  FL_EXPORT_C(fl_Window ,   Fl_Browser_top_window_offset)(fl_Browser browser, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Browser_as_group)(fl_Browser browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Browser_as_gl_window)(fl_Browser browser);+  /* Inherited from Fl_Group */+  FL_EXPORT_C(void,         Fl_Browser_begin)(fl_Browser self);+  FL_EXPORT_C(void,         Fl_Browser_end)(fl_Browser self);+  FL_EXPORT_C(int,          Fl_Browser_find)(fl_Browser self, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Browser_remove_index)(fl_Browser self, int index);+  FL_EXPORT_C(void,         Fl_Browser_remove_widget)(fl_Browser self, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Browser_clear)(fl_Browser self);+  FL_EXPORT_C(void,         Fl_Browser_set_resizable_by_reference)(fl_Browser self,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Browser_set_resizable)(fl_Browser self,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Browser_resizable)(fl_Browser self);+  FL_EXPORT_C(void,         Fl_Browser_add_resizable)(fl_Browser self,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Browser_init_sizes)(fl_Browser self);+  FL_EXPORT_C(int,          Fl_Browser_children)(fl_Browser self);+  FL_EXPORT_C(void,         Fl_Browser_set_clip_children)(fl_Browser self,int c);+  FL_EXPORT_C(unsigned int, Fl_Browser_clip_children)(fl_Browser self);+  FL_EXPORT_C(void,         Fl_Browser_focus)(fl_Browser self,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Browser__ddfdesign_kludge)(fl_Browser self);+  FL_EXPORT_C(void,         Fl_Browser_insert_with_before)(fl_Browser self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Browser_array)(fl_Browser self);+  FL_EXPORT_C(fl_Widget,    Fl_Browser_child)(fl_Browser self, int n);+  FL_EXPORT_C(void,         Fl_Browser_forms_end)(fl_Browser self);++  /* Fl_Browser specific functions */+  FL_EXPORT_C(void*, Fl_Browser_other_data)(fl_Browser browser);+  FL_EXPORT_C(void, Fl_Browser_set_other_data)(fl_Browser browser, void* v);+  FL_EXPORT_C(fl_Browser_Virtual_Funcs*, Fl_Browser_default_virtual_funcs)();+  FL_EXPORT_C(fl_Browser, Fl_Browser_New_WithLabel)(int x, int y, int w, int h, const char* label); +  FL_EXPORT_C(fl_Browser, Fl_Browser_New)(int x, int y, int w, int h); +  FL_EXPORT_C(fl_Browser, Fl_OverriddenBrowser_New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Browser_Virtual_Funcs* funcs); +  FL_EXPORT_C(fl_Browser, Fl_OverriddenBrowser_New)(int x, int y, int w, int h, fl_Browser_Virtual_Funcs* funcs); +  FL_EXPORT_C(void,Fl_Browser_Destroy)(fl_Browser browser);+  FL_EXPORT_C(void,Fl_Browser_remove)(fl_Browser browser, int line);+  FL_EXPORT_C(void, Fl_Browser_add)(fl_Browser browser, const char* newtext);+  FL_EXPORT_C(void, Fl_Browser_add_with_d)(fl_Browser browser, const char* newtext, void* d);+  FL_EXPORT_C(void, Fl_Browser_insert)(fl_Browser browser, int line, const char* newtext);+  FL_EXPORT_C(void, Fl_Browser_insert_with_d)(fl_Browser browser, int line, const char* newtext, void* d);+  FL_EXPORT_C(void, Fl_Browser_move)(fl_Browser browser, int to, int from);+  FL_EXPORT_C(int , Fl_Browser_load)(fl_Browser browser, const char* filename);+  FL_EXPORT_C(void, Fl_Browser_swap)(fl_Browser browser, int a, int b);+  FL_EXPORT_C(void, Fl_Browser_clear)(fl_Browser browser);+  FL_EXPORT_C(int, Fl_Browser_size)(fl_Browser browser);+  FL_EXPORT_C(void, Fl_Browser_set_size)(fl_Browser browser, int W, int H);+  FL_EXPORT_C(int, Fl_Browser_topline)(fl_Browser browser);+  FL_EXPORT_C(void, Fl_Browser_lineposition)(fl_Browser browser, int line, Fl_Line_Position pos);+  FL_EXPORT_C(void, Fl_Browser_set_topline)(fl_Browser browser, int line);+  FL_EXPORT_C(void, Fl_Browser_bottomline)(fl_Browser browser, int line);+  FL_EXPORT_C(void, Fl_Browser_middleline)(fl_Browser browser, int line);+  FL_EXPORT_C(int, Fl_Browser_select)(fl_Browser browser, int line);+  FL_EXPORT_C(int, Fl_Browser_select_with_val)(fl_Browser browser, int line, int val);+  FL_EXPORT_C(int, Fl_Browser_selected)(fl_Browser browser, int line);+  FL_EXPORT_C(void, Fl_Browser_show_with_line)(fl_Browser browser, int line);+  FL_EXPORT_C(void, Fl_Browser_show)(fl_Browser browser);+  FL_EXPORT_C(void, Fl_Browser_hide_with_line)(fl_Browser browser, int line);+  FL_EXPORT_C(void, Fl_Browser_hide)(fl_Browser browser);+  FL_EXPORT_C(int, Fl_Browser_visible)(fl_Browser browser, int line);+  FL_EXPORT_C(int, Fl_Browser_value)(fl_Browser browser);+  FL_EXPORT_C(void, Fl_Browser_set_value)(fl_Browser browser, int line);+  FL_EXPORT_C(const char*, Fl_Browser_text)(fl_Browser browser, int line);+  FL_EXPORT_C(void, Fl_Browser_set_text)(fl_Browser browser, int line, const char* newtext);+  FL_EXPORT_C(void*, Fl_Browser_data)(fl_Browser browser, int line);+  FL_EXPORT_C(void, Fl_Browser_set_data)(fl_Browser browser, int line, void* d);+  FL_EXPORT_C(char, Fl_Browser_format_char)(fl_Browser browser);+  FL_EXPORT_C(void, Fl_Browser_set_format_char)(fl_Browser browser, char c);+  FL_EXPORT_C(char, Fl_Browser_column_char)(fl_Browser browser);+  FL_EXPORT_C(void, Fl_Browser_set_column_char)(fl_Browser browser, char c);+  FL_EXPORT_C(const int*, Fl_Browser_column_widths)(fl_Browser browser);+  FL_EXPORT_C(void, Fl_Browser_set_column_widths)(fl_Browser browser, const int* arr);+  FL_EXPORT_C(int, Fl_Browser_displayed)(fl_Browser browser, int line);+  FL_EXPORT_C(void, Fl_Browser_make_visible)(fl_Browser browser, int line);+  FL_EXPORT_C(void, Fl_Browser_set_icon)(fl_Browser browser, int line, fl_Image icon);+  FL_EXPORT_C(fl_Image, Fl_Browser_icon)(fl_Browser browser, int line);+  FL_EXPORT_C(void, Fl_Browser_remove_icon)(fl_Browser browser, int line);+  FL_EXPORT_C(int, Fl_Browser_select_only)(fl_Browser browser,void *item);+  FL_EXPORT_C(int, Fl_Browser_select_only_with_docallbacks)(fl_Browser browser,void *item,int docallbacks);+  FL_EXPORT_C(int, Fl_Browser_deselect)(fl_Browser browser);+  FL_EXPORT_C(int, Fl_Browser_deselect_with_docallbacks)(fl_Browser browser,int docallbacks);+  FL_EXPORT_C(int, Fl_Browser_position)(fl_Browser browser); +  FL_EXPORT_C(void, Fl_Browser_set_position)(fl_Browser browser,int pos); // scroll to here+  FL_EXPORT_C(int, Fl_Browser_hposition)(fl_Browser browser); +  FL_EXPORT_C(void, Fl_Browser_set_hposition)(fl_Browser browser,int); // pan to here+  FL_EXPORT_C(uchar, Fl_Browser_has_scrollbar)(fl_Browser browser);+  FL_EXPORT_C(void, Fl_Browser_set_has_scrollbar)(fl_Browser browser,uchar mode); +  FL_EXPORT_C(Fl_Font, Fl_Browser_textfont)(fl_Browser browser); +  FL_EXPORT_C(void, Fl_Browser_set_textfont)(fl_Browser browser,Fl_Font font); +  FL_EXPORT_C(Fl_Fontsize, Fl_Browser_textsize)(fl_Browser browser);  +  FL_EXPORT_C(void, Fl_Browser_set_textsize)(fl_Browser browser,Fl_Fontsize newSize); +  FL_EXPORT_C(Fl_Color, Fl_Browser_textcolor)(fl_Browser browser); +  FL_EXPORT_C(void, Fl_Browser_set_textcolor)(fl_Browser browser,Fl_Color col); +  FL_EXPORT_C(int, Fl_Browser_scrollbar_size)(fl_Browser browser); +  FL_EXPORT_C(void, Fl_Browser_set_scrollbar_size)(fl_Browser browser,int newSize); +  FL_EXPORT_C(int, Fl_Browser_scrollbar_width)(fl_Browser browser); +  FL_EXPORT_C(void, Fl_Browser_set_scrollbar_width)(fl_Browser browser,int width); +  FL_EXPORT_C(void, Fl_Browser_scrollbar_right)(fl_Browser browser); +  FL_EXPORT_C(void, Fl_Browser_set_scrollbar_left)(fl_Browser browser);+  FL_EXPORT_C(void, Fl_Browser_sort)(fl_Browser browser);+  FL_EXPORT_C(void, Fl_Browser_sort_with_flags)(fl_Browser browser,int flags);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_BROWSER_C__*/
+ c-src/Fl_ButtonC.cpp view
@@ -0,0 +1,510 @@+#include "Fl_ButtonC.h"+#ifdef __cplusplus+Fl_DerivedButton::Fl_DerivedButton(int X, int Y, int W, int H, const char *l, fl_Button_Virtual_Funcs* funcs) : Fl_Button(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = 0;+ }+Fl_DerivedButton::Fl_DerivedButton(int X, int Y, int W, int H, fl_Button_Virtual_Funcs* funcs):Fl_Button(X,Y,W,H,0){+    overriddenFuncs = funcs;+    other_data = 0;+  }+Fl_DerivedButton::~Fl_DerivedButton(){+  destroy_data();+  free(overriddenFuncs);+}+void* Fl_DerivedButton::get_other_data(){+  return this->other_data;+}+void Fl_DerivedButton::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedButton::destroy_data(){+  if (this->overriddenFuncs->destroy_data != NULL){+    this->overriddenFuncs->destroy_data((fl_Button) this);+  }+}+void Fl_DerivedButton::draw_box(){+  Fl_Button::draw_box();+}+void Fl_DerivedButton::draw_box(Fl_Boxtype t, Fl_Color c){+  Fl_Button::draw_box(t,c);+}+void Fl_DerivedButton::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+  Fl_Button::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedButton::draw_backdrop(){+  Fl_Button::draw_backdrop();+}+void Fl_DerivedButton::draw_focus(){+  Fl_Button::draw_focus();+}+void Fl_DerivedButton::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+  Fl_Button::draw_focus(t,x,y,w,h);+}+void Fl_DerivedButton::draw_label(){+  Fl_Button::draw_label();+}+void Fl_DerivedButton::draw_label(int x,int y,int w,int h,Fl_Align alignment){+  Fl_Button::draw_label(x,y,w,h,alignment);+}+int Fl_DerivedButton::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Button) this,event);+  }+  else {+    i = Fl_Button::handle(event);+  }+  return i;+}+void Fl_DerivedButton::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Button) this,x,y,w,h);+  }+  else {+    Fl_Button::resize(x,y,w,h);+  }+}+void Fl_DerivedButton::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Button) this);+  }+  else {+    Fl_Button::show();+  }+}+void Fl_DerivedButton::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Button) this);+  }+  else {+    Fl_Button::hide();+  }+}+void Fl_DerivedButton::draw_super(){+  Fl_Button::draw();+}+void Fl_DerivedButton::draw(){+  if (this->overriddenFuncs->draw != NULL) {+    this->overriddenFuncs->draw((fl_Button) this);+  }+  else {+    Fl_Button::draw();+  }+}+Fl_Window* Fl_DerivedButton::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Button) this)));+  }+  else {+    win = Fl_Button::as_window();+  }+  return win;+}+Fl_Gl_Window* Fl_DerivedButton::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Button) this)));+  }+  else {+    win = Fl_Button::as_gl_window();+  }+  return win;+}+EXPORT {+#endif+  FL_EXPORT_C(fl_Button_Virtual_Funcs*, Fl_Button_default_virtual_funcs)(){+    fl_Button_Virtual_Funcs* ptr = (fl_Button_Virtual_Funcs*)malloc(sizeof(fl_Button_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->hide = NULL;+    ptr->as_window = NULL;+    ptr->as_gl_window = NULL;+    ptr->destroy_data = NULL;+    return ptr;+  }+  FL_EXPORT_C(void,         Fl_Button_draw_super)(fl_Button button){+    (static_cast<Fl_DerivedButton*>(button))->draw_super();+  }+  FL_EXPORT_C(int,Fl_Button_handle_super )(fl_Button button,int event){+    return (static_cast<Fl_Button*>(button))->handle(event);+  }+  FL_EXPORT_C(int,Fl_Button_handle )(fl_Button button, int event){+    return (static_cast<Fl_DerivedButton*>(button))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Button_resize_super )(fl_Button button,int x, int y, int w, int h){+    (static_cast<Fl_Button*>(button))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Button_resize )(fl_Button button,int x, int y, int w, int h){+    (static_cast<Fl_DerivedButton*>(button))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Button_show_super)(fl_Button button){+    (static_cast<Fl_Button*>(button))->show();+  }+  FL_EXPORT_C(void,Fl_Button_show )(fl_Button button){+    (static_cast<Fl_DerivedButton*>(button))->show();+  }+  FL_EXPORT_C(void,Fl_Button_hide_super)(fl_Button button){+    (static_cast<Fl_Button*>(button))->hide();+  }+  FL_EXPORT_C(void,Fl_Button_hide )(fl_Button button){+    (static_cast<Fl_DerivedButton*>(button))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Button_as_window_super)(fl_Button button){+    return (static_cast<Fl_Button*>(button))->as_window();+  }+  FL_EXPORT_C(fl_Window,Fl_Button_as_window )(fl_Button button){+    return (static_cast<Fl_DerivedButton*>(button))->as_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Button_as_gl_window_super)(fl_Button button){+    return (fl_Gl_Window) (static_cast<Fl_Button*>(button))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Button_as_gl_window )(fl_Button button){+    return (fl_Gl_Window) (static_cast<Fl_DerivedButton*>(button))->as_gl_window();+  };+  FL_EXPORT_C(fl_Group,Fl_Button_parent)(fl_Button b){+    return (fl_Group) (static_cast<Fl_DerivedButton*>(b))->parent();+  }+  FL_EXPORT_C(void,Fl_Button_set_parent)(fl_Button b,fl_Group grp){+    (static_cast<Fl_DerivedButton*>(b))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Button_type)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->type();+  }+  FL_EXPORT_C(void,Fl_Button_set_type)(fl_Button b,uchar t){+    (static_cast<Fl_DerivedButton*>(b))->type(t);+  }++FL_EXPORT_C(void, Fl_Button_draw_box)(fl_Button Button){+ (static_cast<Fl_DerivedButton*>(Button))->draw_box();+}+FL_EXPORT_C(void, Fl_Button_draw_box_with_tc)(fl_Button Button,Fl_Boxtype t, Fl_Color c){+ (static_cast<Fl_DerivedButton*>(Button))->draw_box(t,c);+}+FL_EXPORT_C(void, Fl_Button_draw_box_with_txywhc)(fl_Button Button,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+ (static_cast<Fl_DerivedButton*>(Button))->draw_box(t,x,y,w,h,c);+}+FL_EXPORT_C(void, Fl_Button_draw_backdrop)(fl_Button Button){+ (static_cast<Fl_DerivedButton*>(Button))->draw_backdrop();+}+FL_EXPORT_C(void, Fl_Button_draw_focus)(fl_Button Button){+ (static_cast<Fl_DerivedButton*>(Button))->draw_focus();+}+FL_EXPORT_C(void, Fl_Button_draw_focus_with_txywh)(fl_Button Button,Fl_Boxtype t, int x,int y,int w,int h){+ (static_cast<Fl_DerivedButton*>(Button))->draw_focus(t,x,y,w,h);+}+FL_EXPORT_C(void, Fl_Button_draw_label)(fl_Button Button){+ (static_cast<Fl_DerivedButton*>(Button))->draw_label();+}+  FL_EXPORT_C(int,Fl_Button_x)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->x();+  }+  FL_EXPORT_C(int,Fl_Button_y)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->y();+  }+  FL_EXPORT_C(int,Fl_Button_w)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->w();+  }+  FL_EXPORT_C(int,Fl_Button_h)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->h();+  }+  FL_EXPORT_C(void,Fl_Button_set_align)(fl_Button button, Fl_Align alignment){+    (static_cast<Fl_Button*>(button))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Button_align)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Button_box)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->box();+  }+  FL_EXPORT_C(void,Fl_Button_set_box)(fl_Button b,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedButton*>(b))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Button_color)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->color();+  }+  FL_EXPORT_C(void,Fl_Button_set_color)(fl_Button b,Fl_Color bg){+    (static_cast<Fl_DerivedButton*>(b))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Button_set_color_with_bg_sel)(fl_Button b,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedButton*>(b))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Button_selection_color)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Button_set_selection_color)(fl_Button b,Fl_Color a){+    (static_cast<Fl_DerivedButton*>(b))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Button_label)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->label();+  }+  FL_EXPORT_C(void,Fl_Button_copy_label)(fl_Button b,const char* new_label){+    (static_cast<Fl_DerivedButton*>(b))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Button_set_label)(fl_Button b,const char* text){+    (static_cast<Fl_DerivedButton*>(b))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Button_labeltype)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Button_set_labeltype)(fl_Button b,Fl_Labeltype a){+    (static_cast<Fl_DerivedButton*>(b))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Button_set_labelcolor)(fl_Button b,Fl_Color c){+    (static_cast<Fl_DerivedButton*>(b))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Button_labelcolor)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Button_labelfont)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Button_set_labelfont)(fl_Button b,Fl_Font c){+    (static_cast<Fl_DerivedButton*>(b))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Button_labelsize)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Button_set_labelsize)(fl_Button b,Fl_Fontsize pix){+    (static_cast<Fl_DerivedButton*>(b))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Button_image)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->image();+  }+  FL_EXPORT_C(void,Fl_Button_set_image)(fl_Button b,fl_Image pix){+    (static_cast<Fl_DerivedButton*>(b))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Button_deimage)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->deimage();+  }+  FL_EXPORT_C(void,Fl_Button_set_deimage)(fl_Button b,fl_Image pix){+    (static_cast<Fl_DerivedButton*>(b))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Button_tooltip)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Button_copy_tooltip)(fl_Button b,const char* text){+    (static_cast<Fl_DerivedButton*>(b))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Button_set_tooltip)(fl_Button b,const char* text){+    (static_cast<Fl_DerivedButton*>(b))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Button_set_callback_with_user_data)(fl_Button b,fl_Callback* cb,void* p){+    Fl_Button* castedButton = (static_cast<Fl_DerivedButton*>(b));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Button_set_callback)(fl_Button b,fl_Callback* cb){+    Fl_Button* castedButton = (static_cast<Fl_DerivedButton*>(b));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Button_user_data)(fl_Button b){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedButton*>(b))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedButton*>(b))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Button_set_user_data)(fl_Button b,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Button*>(b))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Button*>(b))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Button*>(b))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Button_argument)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->argument();+  }+  FL_EXPORT_C(void,Fl_Button_set_argument)(fl_Button b,long v){+    (static_cast<Fl_DerivedButton*>(b))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Button_when)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->when();+  }+  FL_EXPORT_C(void,Fl_Button_set_when)(fl_Button b,uchar i){+    (static_cast<Fl_DerivedButton*>(b))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Button_visible)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->visible();+  }+  FL_EXPORT_C(int,Fl_Button_visible_r)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Button_set_visible)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->visible();+  }+  FL_EXPORT_C(void,Fl_Button_clear_visible)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Button_active)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->active();+  }+  FL_EXPORT_C(int,Fl_Button_active_r)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->active_r();+  }+  FL_EXPORT_C(void,Fl_Button_activate)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->activate();+  }+  FL_EXPORT_C(void,Fl_Button_deactivate)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Button_output)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Button_set_output)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Button_clear_output)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Button_takesevents)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Button_set_changed)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->changed();+  }+  FL_EXPORT_C(void,Fl_Button_clear_changed)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Button_take_focus)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Button_set_visible_focus)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Button_clear_visible_focus)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Button_modify_visible_focus)(fl_Button b,int v){+    (static_cast<Fl_DerivedButton*>(b))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Button_visible_focus)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Button_do_callback)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Button_do_callback_with_widget_and_user_data)(fl_Button b,fl_Widget w,long arg){+    (static_cast<Fl_DerivedButton*>(b))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Button_do_callback_with_widget_and_default_user_data)(fl_Button b,fl_Widget w){+    (static_cast<Fl_DerivedButton*>(b))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Button_contains)(fl_Button b,fl_Widget w){+    return (static_cast<Fl_DerivedButton*>(b))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Button_inside)(fl_Button b,fl_Widget w){+    return (static_cast<Fl_DerivedButton*>(b))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Button_redraw)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->redraw();+  }+  FL_EXPORT_C(void,Fl_Button_redraw_label)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Button_damage)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->damage();+  }+  FL_EXPORT_C(void,Fl_Button_clear_damage_with_bitmask)(fl_Button b,uchar c){+    (static_cast<Fl_DerivedButton*>(b))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Button_clear_damage)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Button_damage_with_text)(fl_Button b,uchar c){+    (static_cast<Fl_DerivedButton*>(b))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Button_damage_inside_widget)(fl_Button b,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedButton*>(b))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Button_draw_label_with_xywh_alignment)(fl_Button b,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedButton*>(b))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Button_measure_label)(fl_Button b,int* ww,int* hh){+    (static_cast<Fl_DerivedButton*>(b))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Button_window)(fl_Button button){+    return (fl_Window) (static_cast<Fl_DerivedButton*>(button))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Button_top_window)(fl_Button button){+    return (fl_Window) (static_cast<Fl_DerivedButton*>(button))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Button_top_window_offset)(fl_Button button, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedButton*>(button))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Button_as_group)(fl_Button button){+    return (fl_Group) (static_cast<Fl_DerivedButton*>(button))->as_group();+  }+  FL_EXPORT_C(fl_Group,Fl_Button_as_group_super)(fl_Button button){+    return (fl_Group) (static_cast<Fl_Button*>(button))->as_group();+  }+  FL_EXPORT_C(void*, Fl_Button_other_data)(fl_Button button){+    return (static_cast<Fl_DerivedButton*>(button))->get_other_data();+  }+  FL_EXPORT_C(void, Fl_Button_set_other_data)(fl_Button button, void* v){+    (static_cast<Fl_DerivedButton*>(button))->set_other_data(v);+  }+  FL_EXPORT_C(fl_Button, Fl_Button_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    fl_Button_Virtual_Funcs* funcs = Fl_Button_default_virtual_funcs();+    Fl_DerivedButton* button = new Fl_DerivedButton(x,y,w,h,label,funcs);+    return (static_cast<fl_Button>(button));+  }+  FL_EXPORT_C(fl_Button, Fl_Button_New)(int x, int y, int w, int h) {+    fl_Button_Virtual_Funcs* funcs = Fl_Button_default_virtual_funcs();+    Fl_DerivedButton* button = new Fl_DerivedButton(x,y,w,h,0,funcs);+    return (fl_Button)button;+  }+  FL_EXPORT_C(fl_Button, Fl_OverriddenButton_New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Button_Virtual_Funcs* funcs) {+    Fl_DerivedButton* button = new Fl_DerivedButton(x,y,w,h,label,funcs);+    return (static_cast<fl_Button>(button));+  }+  FL_EXPORT_C(fl_Button, Fl_OverriddenButton_New)(int x, int y, int w, int h, fl_Button_Virtual_Funcs* funcs) {+    Fl_DerivedButton* button = new Fl_DerivedButton(x,y,w,h,0,funcs);+    return (fl_Button)button;+  }+  FL_EXPORT_C(void,Fl_Button_Destroy)(fl_Button button){+    delete (static_cast<Fl_DerivedButton*>(button));+  }+  FL_EXPORT_C(char,Fl_Button_value)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->value();+  }+  FL_EXPORT_C(int,Fl_Button_set)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->set();+  }+  FL_EXPORT_C(int,Fl_Button_set_value)(fl_Button b,int v){+    return (static_cast<Fl_DerivedButton*>(b))->value(v);+  }+  FL_EXPORT_C(int,Fl_Button_clear)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->clear();+  }+  FL_EXPORT_C(void,Fl_Button_setonly)(fl_Button b){+    (static_cast<Fl_DerivedButton*>(b))->setonly();+  }+  FL_EXPORT_C(int,Fl_Button_get_shortcut)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Button_set_shortcut)(fl_Button b,int s){+    (static_cast<Fl_DerivedButton*>(b))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Button_down_box)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->down_box();+  }+  FL_EXPORT_C(void,Fl_Button_set_down_box)(fl_Button b,Fl_Boxtype boxtype){+    (static_cast<Fl_DerivedButton*>(b))->down_box(boxtype);+  }+  FL_EXPORT_C(Fl_Color,Fl_Button_down_color)(fl_Button b){+    return (static_cast<Fl_DerivedButton*>(b))->down_color();+  }+  FL_EXPORT_C(void,Fl_Button_set_down_color)(fl_Button b,Fl_Color c){+    (static_cast<Fl_DerivedButton*>(b))->down_color(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_ButtonC.h view
@@ -0,0 +1,169 @@+#ifndef __FL_BUTTON_C__+#define __FL_BUTTON_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Button.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(void,         Fl_Button_draw_super)(fl_Button button);+  FL_EXPORT_C(int ,         Fl_Button_handle_super)(fl_Button button,int event);+  FL_EXPORT_C(int ,         Fl_Button_handle)(fl_Button button,int event);+  FL_EXPORT_C(void,         Fl_Button_resize_super)(fl_Button button,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Button_resize )(fl_Button button,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Button_show_super)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_show )(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_hide_super)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_hide )(fl_Button button);+  FL_EXPORT_C(fl_Window,    Fl_Button_as_window_super)(fl_Button button);+  FL_EXPORT_C(fl_Window,    Fl_Button_as_window )(fl_Button button);+  FL_EXPORT_C(fl_Gl_Window, Fl_Button_as_gl_window_super)(fl_Button button);+  FL_EXPORT_C(fl_Gl_Window, Fl_Button_as_gl_window)(fl_Button button);+  FL_EXPORT_C(fl_Group,     Fl_Button_parent)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_parent)(fl_Button button, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Button_type)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_type)(fl_Button button, uchar t);++FL_EXPORT_C(void, Fl_Button_draw_box)(fl_Button Button);+FL_EXPORT_C(void, Fl_Button_draw_box_with_tc)(fl_Button Button,Fl_Boxtype t, Fl_Color c);+FL_EXPORT_C(void, Fl_Button_draw_box_with_txywhc)(fl_Button Button,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+FL_EXPORT_C(void, Fl_Button_draw_backdrop)(fl_Button Button);+FL_EXPORT_C(void, Fl_Button_draw_focus)(fl_Button Button);+FL_EXPORT_C(void, Fl_Button_draw_focus_with_txywh)(fl_Button Button,Fl_Boxtype t, int x,int y,int w,int h);+FL_EXPORT_C(void, Fl_Button_draw_label)(fl_Button Button);+  FL_EXPORT_C(int,          Fl_Button_x)(fl_Button button);+  FL_EXPORT_C(int,          Fl_Button_y)(fl_Button button);+  FL_EXPORT_C(int,          Fl_Button_w)(fl_Button button);+  FL_EXPORT_C(int,          Fl_Button_h)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_align)(fl_Button button, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Button_align)(fl_Button button);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Button_box)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_box)(fl_Button button, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Button_color)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_color)(fl_Button button, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Button_set_color_with_bg_sel)(fl_Button button,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Button_selection_color)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_selection_color)(fl_Button button, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Button_label)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_copy_label)(fl_Button button, const char* new_label);+  FL_EXPORT_C(void,         Fl_Button_set_label)(fl_Button button, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Button_labeltype)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_labeltype)(fl_Button button, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Button_labelcolor)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_labelcolor)(fl_Button button, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Button_labelfont)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_labelfont)(fl_Button button, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Button_labelsize)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_labelsize)(fl_Button button, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Button_image)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_image)(fl_Button button, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Button_deimage)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_deimage)(fl_Button button, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Button_tooltip)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_copy_tooltip)(fl_Button button, const char* text);+  FL_EXPORT_C(void,         Fl_Button_set_tooltip)(fl_Button button, const char* text);+  FL_EXPORT_C(void,         Fl_Button_set_callback_with_user_data)(fl_Button button, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Button_set_callback)(fl_Button button, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Button_user_data)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_user_data)(fl_Button button, void* v);+  FL_EXPORT_C(long,         Fl_Button_argument)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_argument)(fl_Button button, long v);+  FL_EXPORT_C(Fl_When,      Fl_Button_when)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_when)(fl_Button button, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Button_visible)(fl_Button button);+  FL_EXPORT_C(int,          Fl_Button_visible_r)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_visible)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_clear_visible)(fl_Button button);+  FL_EXPORT_C(unsigned int, Fl_Button_active)(fl_Button button);+  FL_EXPORT_C(int,          Fl_Button_active_r)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_activate)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_deactivate)(fl_Button button);+  FL_EXPORT_C(unsigned int, Fl_Button_output)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_output)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_clear_output)(fl_Button button);+  FL_EXPORT_C(unsigned int, Fl_Button_takesevents)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_changed)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_clear_changed)(fl_Button button);+  FL_EXPORT_C(int,          Fl_Button_take_focus)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_set_visible_focus)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_clear_visible_focus)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_modify_visible_focus)(fl_Button button, int v);+  FL_EXPORT_C(unsigned int, Fl_Button_visible_focus)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_do_callback)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_do_callback_with_widget_and_user_data)(fl_Button button, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Button_do_callback_with_widget_and_default_user_data)(fl_Button button, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Button_contains)(fl_Button button, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Button_inside)(fl_Button button, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Button_redraw)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_redraw_label)(fl_Button button);+  FL_EXPORT_C(uchar,        Fl_Button_damage)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_clear_damage_with_bitmask)(fl_Button button, uchar c);+  FL_EXPORT_C(void,         Fl_Button_clear_damage)(fl_Button button);+  FL_EXPORT_C(void,         Fl_Button_damage_with_text)(fl_Button button, uchar c);+  FL_EXPORT_C(void,         Fl_Button_damage_inside_widget)(fl_Button button, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Button_draw_label_with_xywh_alignment)(fl_Button button, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Button_measure_label)(fl_Button button, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Button_window)(fl_Button button);+  FL_EXPORT_C(fl_Window,    Fl_Button_top_window)(fl_Button button);+  FL_EXPORT_C(fl_Window ,   Fl_Button_top_window_offset)(fl_Button button, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Button_as_group_super)(fl_Button button);+  FL_EXPORT_C(fl_Group,     Fl_Button_as_group)(fl_Button button);+  FL_EXPORT_C(fl_Gl_Window, Fl_Button_as_gl_window)(fl_Button button);+#ifdef __cplusplus+  class Fl_DerivedButton : public Fl_Button {+    fl_Button_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void destroy_data();+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    void draw_super();+    virtual int handle(int event);+    virtual void resize(int x, int y, int w, int h);+    virtual void show();+    virtual void hide();+    virtual Fl_Window* as_window();+    virtual Fl_Gl_Window* as_gl_window();+    Fl_DerivedButton(int X, int Y, int W, int H, const char *l, fl_Button_Virtual_Funcs* funcs);+    Fl_DerivedButton(int X, int Y, int W, int H, fl_Button_Virtual_Funcs* funcs);+    ~Fl_DerivedButton();+  };+#endif  +  /* Fl_Button specific functions */+  FL_EXPORT_C(fl_Button_Virtual_Funcs*, Fl_Button_default_virtual_funcs)();+  FL_EXPORT_C(void*, Fl_Button_other_data)(fl_Button button);+  FL_EXPORT_C(void, Fl_Button_set_other_data)(fl_Button button, void* v);+  FL_EXPORT_C(fl_Button,    Fl_Button_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Button   , Fl_Button_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Button,    Fl_OverriddenButton_New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Button_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Button   , Fl_OverriddenButton_New)(int x, int y, int w, int h, fl_Button_Virtual_Funcs* funcs);+  FL_EXPORT_C(void        , Fl_Button_Destroy)(fl_Button button);+  FL_EXPORT_C(char        , Fl_Button_value)(fl_Button b);+  FL_EXPORT_C(int         , Fl_Button_set_value)(fl_Button b, int v);+  FL_EXPORT_C(int         , Fl_Button_set)(fl_Button b);+  FL_EXPORT_C(int         , Fl_Button_clear)(fl_Button b);+  FL_EXPORT_C(void        , Fl_Button_setonly)(fl_Button b);+  FL_EXPORT_C(int         , Fl_Button_get_shortcut )(fl_Button b);+  FL_EXPORT_C(void        , Fl_Button_set_shortcut )(fl_Button b, int s);+  FL_EXPORT_C(Fl_Boxtype  , Fl_Button_down_box)(fl_Button b);+  FL_EXPORT_C(void        , Fl_Button_set_down_box)(fl_Button b,Fl_Boxtype boxtype);+  FL_EXPORT_C(Fl_Color    , Fl_Button_down_color )(fl_Button b);+  FL_EXPORT_C(void        , Fl_Button_set_down_color)(fl_Button b, Fl_Color c);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_BUTTON_C__*/
+ c-src/Fl_C.cpp view
@@ -0,0 +1,599 @@+#include <FL/Fl.H>+#include "Fl_ExportMacros.h"+#ifdef __cplusplus+#include "Fl_C.h"+  class C_to_Fl_Event_Dispatch {+  public:+    static fl_Event_Dispatch* cb;+    static int intercept(int event, Fl_Window* window) {+      fl_Window w = (fl_Window)window;+      return (*cb)(event, w);+    }+  };+  fl_Event_Dispatch* C_to_Fl_Event_Dispatch::cb = 0;+  class C_to_Fl_Label_Draw_F {+  public:+    static fl_Label_Draw_F* cb;+    static void intercept(const Fl_Label* label, int x, int y, int w, int h, Fl_Align align) {+      fl_Label* l = (fl_Label*)label;+      (*cb)(l, x, y, w, h, align);+    }+  };+  fl_Label_Draw_F* C_to_Fl_Label_Draw_F::cb = 0;+  class C_to_Fl_Label_Measure_F {+  public:+    static fl_Label_Measure_F* cb;+    static void intercept(const Fl_Label* label, int& width, int& height) {+      fl_Label* l = (fl_Label*)label;+      int* w = &width;+      int* h = &height;+      (*cb)(l, w, h);+    }+  };+  fl_Label_Measure_F* C_to_Fl_Label_Measure_F::cb = 0;+  class C_to_Fl_Abort_Handler {+  public:+    static fl_Abort_Handler* cb;+    static void intercept(const char* format, ...) {+      va_list argp;+      va_start(argp, format);+      (*cb)(format, argp);+      va_end(argp);+    }+  };+  fl_Abort_Handler* C_to_Fl_Abort_Handler::cb = 0;+  class C_to_Fl_Atclose_Handler {+  public:+    static fl_Atclose_Handler* cb;+    static void intercept(Fl_Window* window, void* data){+      fl_Window w = (fl_Window)window;+      (*cb)(w,data);+    }+  };+  fl_Atclose_Handler* C_to_Fl_Atclose_Handler::cb = 0;+EXPORT {+#endif+  FL_EXPORT_C(int, Fl_run)(){ return Fl::run(); }+  FL_EXPORT_C(int, Fl_check)() { return Fl::check(); }+  FL_EXPORT_C(int, Fl_ready)() { return Fl::ready(); }+  FL_EXPORT_C(int, Fl_add_awake_handler_)(fl_Awake_Handler handler, void* user_data){+    return Fl::add_awake_handler_(handler, user_data);}++  FL_EXPORT_C(int, Fl_get_awake_handler_)(fl_Awake_Handler* handler, void** user_data){+    return Fl::get_awake_handler_(*handler, *user_data);+  }+  FL_EXPORT_C(double,Fl_version)( ){+    return Fl::version();+  }+  FL_EXPORT_C(const char*, Fl_help)(){+    return Fl::help;+  }+  FL_EXPORT_C(void,Fl_args)(int argc,char **argv){+    Fl::args(argc,argv);+  }+  FL_EXPORT_C(int,Fl_args_with_handler)(int argc,char **argv,int i,fl_Args_Handler cb){+    return Fl::args(argc,argv,i,cb);+  }+  FL_EXPORT_C(int,Fl_arg)(int argc,char **argv,int i){+    return Fl::arg(argc,argv,i);+  }+  FL_EXPORT_C(int,Fl_args_with_i)(int argc,char **argv,int i){+    return Fl::args(argc,argv,i);+  }+  FL_EXPORT_C(void,Fl_display)(const char* text){+    Fl::display(text);+  }+  FL_EXPORT_C(int,Fl_visual)(int mode){+    return Fl::visual(mode);+  }+#if !defined(__APPLE__)+  FL_EXPORT_C(int,Fl_gl_visual)(int mode){+    return Fl::gl_visual(mode);+  }+  FL_EXPORT_C(int,Fl_gl_visual_with_alist)(int mode,int *alist){+    return Fl::gl_visual(mode,alist);+  }+#endif+  FL_EXPORT_C(void,Fl_own_colormap)( ){+    Fl::own_colormap();+  }+  FL_EXPORT_C(void,Fl_get_system_colors)( ){+    Fl::get_system_colors();+  }+  FL_EXPORT_C(void,Fl_foreground)(uchar r,uchar g,uchar b){+    Fl::foreground(r,g,b);+  }+  FL_EXPORT_C(void,Fl_background)(uchar r,uchar g,uchar b){+    Fl::background(r,g,b);+  }+  FL_EXPORT_C(void,Fl_background2)(uchar r,uchar g,uchar b){+    Fl::background2(r,g,b);+  }+  FL_EXPORT_C(int,Fl_set_scheme)(const char* text){+    return Fl::scheme(text);+  }+  FL_EXPORT_C(const char*,Fl_scheme)(){+    return Fl::scheme();+  }+  FL_EXPORT_C(int,Fl_is_scheme)(const char* text){+    return Fl::is_scheme(text);+  }+  FL_EXPORT_C(int,Fl_scrollbar_size)( ){+    return Fl::scrollbar_size();+  }+  FL_EXPORT_C(void,Fl_set_scrollbar_size)(int W){+    Fl::scrollbar_size(W);+  }+  FL_EXPORT_C(int,Fl_wait)( ){+    return Fl::wait();+  }+  FL_EXPORT_C(double,Fl_set_wait)(double time){+    return Fl::wait(time);+  }+  FL_EXPORT_C(int,Fl_option)(Fl_Option option){+    Fl::Fl_Option o = (Fl::Fl_Option)-1;+    switch(option){+    case OPTION_ARROW_FOCUS: { o = Fl::OPTION_ARROW_FOCUS; break;}+    case OPTION_VISIBLE_FOCUS: { o = Fl::OPTION_VISIBLE_FOCUS; break;}+    case OPTION_DND_TEXT: { o = Fl::OPTION_DND_TEXT; break;}+    case OPTION_SHOW_TOOLTIPS: { o = Fl::OPTION_SHOW_TOOLTIPS; break;}+    case OPTION_LAST: { o = Fl::OPTION_LAST; break;}+    default:                 {o = (Fl::Fl_Option)-1;  break;}+    }+    return Fl::option(o) ? 1 : 0;+  }+  FL_EXPORT_C(void,Fl_set_option)(Fl_Option option, int val){+    Fl::Fl_Option o = (Fl::Fl_Option)-1;+    switch(option){+    case OPTION_ARROW_FOCUS: { o = Fl::OPTION_ARROW_FOCUS; break;}+    case OPTION_VISIBLE_FOCUS: { o = Fl::OPTION_VISIBLE_FOCUS; break;}+    case OPTION_DND_TEXT: { o = Fl::OPTION_DND_TEXT; break;}+    case OPTION_SHOW_TOOLTIPS: { o = Fl::OPTION_SHOW_TOOLTIPS; break;}+    case OPTION_LAST: { o = Fl::OPTION_LAST; break;}+    default:                 {o = (Fl::Fl_Option)-1;  break;}+    }+    Fl::option(o,val >= 1 ? true : false);+  }+  FL_EXPORT_C(fl_Widget,Fl_readqueue)(){+    return (fl_Widget)Fl::readqueue();+  }+  FL_EXPORT_C(void,Fl_add_timeout)(double t,fl_Timeout_Handler handler){+    Fl::add_timeout(t,handler,0);+  }+  FL_EXPORT_C(void,Fl_add_timeout_with_userdata)(double t,fl_Timeout_Handler handler,void* userdata){+    Fl::add_timeout(t,handler,userdata);+  }+  FL_EXPORT_C(void,Fl_repeat_timeout)(double t,fl_Timeout_Handler handler){+    return Fl::repeat_timeout(t,handler,0);+  }+  FL_EXPORT_C(void,Fl_repeat_timeout_with_userdata)(double t,fl_Timeout_Handler handler,void* userdata){+    return Fl::repeat_timeout(t,handler,userdata);+  }+  FL_EXPORT_C(int,Fl_has_timeout)(fl_Timeout_Handler handler){+    return Fl::has_timeout(handler,0);+  }+  FL_EXPORT_C(int,Fl_has_timeout_with_userdata)(fl_Timeout_Handler handler, void* userdata){+    return Fl::has_timeout(handler,userdata);+  }+  FL_EXPORT_C(void,Fl_remove_timeout)(fl_Timeout_Handler handler){+    return Fl::remove_timeout(handler,0);+  }+  FL_EXPORT_C(void,Fl_remove_timeout_with_userdata)(fl_Timeout_Handler handler,void* userdata){+    return Fl::remove_timeout(handler,userdata);+  }+  FL_EXPORT_C(void,Fl_add_check)(fl_Timeout_Handler handler){ return Fl::add_check(handler,0); }+  FL_EXPORT_C(void,Fl_add_check_with_userdata)(fl_Timeout_Handler handler,void* userdata){ return Fl::add_check(handler, userdata); }+  FL_EXPORT_C(int ,Fl_has_check)(fl_Timeout_Handler handler){ return Fl::has_check(handler,0); }+  FL_EXPORT_C(int ,Fl_has_check_with_userdata)(fl_Timeout_Handler handler, void* userdata){ return Fl::has_check(handler,userdata); }+  FL_EXPORT_C(void,Fl_remove_check)(fl_Timeout_Handler handler){ return Fl::remove_check(handler,0); }+  FL_EXPORT_C(void,Fl_remove_check_with_userdata)(fl_Timeout_Handler handler,void* userdata){ return Fl::remove_check(handler, userdata); }+  FL_EXPORT_C(void,Fl_add_fd_with_when)(int fd,int when,fl_FD_Handler cb){ return Fl::add_fd(fd,when,cb,0); }+  FL_EXPORT_C(void,Fl_add_fd_with_when_userdata)(int fd,int when,fl_FD_Handler cb,void* userdata){ return Fl::add_fd(fd,when,cb,userdata); }+  FL_EXPORT_C(void,Fl_add_fd)(int fd,fl_FD_Handler cb){ return Fl::add_fd(fd,cb,0); }+  FL_EXPORT_C(void,Fl_add_fd_with_userdata)(int fd,fl_FD_Handler cb,void* userdata){ return Fl::add_fd(fd,cb,userdata); }+  FL_EXPORT_C(void,Fl_add_idle)(fl_Idle_Handler cb){+    Fl::add_idle(cb,0);+  }+  FL_EXPORT_C(void,Fl_add_idle_with_userdata)(fl_Idle_Handler cb,void* userdata){+    Fl::add_idle(cb,userdata);+  }+  FL_EXPORT_C(int,Fl_has_idle)(fl_Idle_Handler cb){+    return Fl::has_idle(cb,0);+  }+  FL_EXPORT_C(int,Fl_has_idle_with_userdata)(fl_Idle_Handler cb,void* userdata){+    return Fl::has_idle(cb,userdata);+  }+  FL_EXPORT_C(void,Fl_remove_idle)(fl_Idle_Handler cb){+    Fl::remove_idle(cb);+  }+  FL_EXPORT_C(void,Fl_remove_idle_with_userdata)(fl_Idle_Handler cb,void* data){+    Fl::remove_idle(cb,data);+  }+  FL_EXPORT_C(int,Fl_damage)( ){+    return Fl::damage();+  }+  FL_EXPORT_C(void,Fl_redraw)( ){+    Fl::redraw();+  }+  FL_EXPORT_C(void,Fl_flush)( ){+    Fl::flush();+  }+  FL_EXPORT_C(fl_Window,Fl_next_window)(fl_Window window){+    return (fl_Window)Fl::next_window((static_cast<Fl_Window*>(window)));+  }+  FL_EXPORT_C(fl_Window,Fl_modal)(){+    return (fl_Window)Fl::modal();+  }+  FL_EXPORT_C(fl_Window,Fl_grab)( ){+    return (fl_Window)Fl::grab();+  }+  FL_EXPORT_C(fl_Window,Fl_first_window)(){+    return (fl_Window)Fl::first_window();+  }+  FL_EXPORT_C(void,Fl_set_first_window)(fl_Window window){+    Fl::first_window((static_cast<Fl_Window*>(window)));+  }+  FL_EXPORT_C(void,Fl_remove_fd_with_when)(int fd_handle, int when){+    Fl::remove_fd(fd_handle,when);+  }+  FL_EXPORT_C(void,Fl_remove_fd)(int fd_handle){+    Fl::remove_fd(fd_handle, -1);+  }+  FL_EXPORT_C(void,Fl_set_grab)(fl_Window window){+    Fl::grab((static_cast<Fl_Window*>(window)));+  }+  FL_EXPORT_C(int,Fl_event)( ){+    return Fl::event();+  }+  FL_EXPORT_C(int,Fl_event_x)( ){+    return Fl::event_x();+  }+  FL_EXPORT_C(int,Fl_event_y)( ){+    return Fl::event_y();+  }+  FL_EXPORT_C(int,Fl_event_x_root)( ){+    return Fl::event_x_root();+  }+  FL_EXPORT_C(int,Fl_event_y_root)( ){+    return Fl::event_y_root();+  }+  FL_EXPORT_C(int,Fl_event_dx)( ){+    return Fl::event_dx();+  }+  FL_EXPORT_C(int,Fl_event_dy)( ){+    return Fl::event_dy();+  }+  FL_EXPORT_C(void,Fl_get_mouse)(int* x,int* y){+    Fl::get_mouse(*x,*y);+  }+  FL_EXPORT_C(int,Fl_event_clicks)( ){+    return Fl::event_clicks();+  }+  FL_EXPORT_C(void,Fl_set_event_clicks)(int i){+    Fl::event_clicks(i);+  }+  FL_EXPORT_C(int,Fl_event_is_click)( ){+    return Fl::event_is_click();+  }+  FL_EXPORT_C(void,Fl_set_event_is_click)(int i){+    Fl::event_is_click(i);+  }+  FL_EXPORT_C(int,Fl_event_button)( ){+    return Fl::event_button();+  }+  FL_EXPORT_C(int,Fl_event_state)( ){+    return Fl::event_state();+  }+  FL_EXPORT_C(int,Fl_contains_event_state)(int i){+    return Fl::event_state(i);+  }+  FL_EXPORT_C(int,Fl_event_key)( ){+    return Fl::event_key();+  }+  FL_EXPORT_C(int,Fl_event_original_key)( ){+    return Fl::event_original_key();+  }+  FL_EXPORT_C(int,Fl_event_key_pressed)(int key){+    return Fl::event_key(key);+  }+  FL_EXPORT_C(int,Fl_get_key)(int key){+    return Fl::get_key(key);+  }+  FL_EXPORT_C(const char*,Fl_event_text)( ){+    return Fl::event_text();+  }+  FL_EXPORT_C(int,Fl_event_length)( ){+    return Fl::event_length();+  }+  FL_EXPORT_C(int,Fl_compose)(int* del){+    return Fl::compose(*del);+  }+  FL_EXPORT_C(void,Fl_compose_reset)( ){+    Fl::compose_reset();+  }+  FL_EXPORT_C(int,Fl_event_inside_region)(int X,int Y,int W,int H){+    return Fl::event_inside(X,Y,W,H);+  }+  FL_EXPORT_C(int,Fl_event_inside_widget)(fl_Widget widget){+    return Fl::event_inside((static_cast<Fl_Widget*>(widget)));+  }+  FL_EXPORT_C(int,Fl_test_shortcut)(Fl_Shortcut shortcut){+    return Fl::test_shortcut(shortcut);+  }+  FL_EXPORT_C(void,Fl_enable_im)(){+    return Fl::enable_im();+  }+  FL_EXPORT_C(void,Fl_disable_im)(){+    return Fl::disable_im();+  }+  FL_EXPORT_C(int,Fl_handle)(int event,fl_Window window){+    return Fl::handle(event,(static_cast<Fl_Window*>(window)));+  }+  FL_EXPORT_C(int,Fl_handle_)(int event,fl_Window window){+    return Fl::handle_(event,(static_cast<Fl_Window*>(window)));+  }+  FL_EXPORT_C(fl_Widget,Fl_belowmouse)( ){+    return (fl_Widget)(Fl::belowmouse());+  }+  FL_EXPORT_C(void,Fl_set_belowmouse)(fl_Widget widget){+    Fl::belowmouse((static_cast<Fl_Widget*>(widget)));+  }+  FL_EXPORT_C(fl_Widget,Fl_pushed)( ){+    return (fl_Widget)Fl::pushed();+  }+  FL_EXPORT_C(void,Fl_set_pushed)(fl_Widget widget){+    Fl::pushed((static_cast<Fl_Widget*>(widget)));+  }+  FL_EXPORT_C(fl_Widget,Fl_focus)( ){+    return (fl_Widget)Fl::focus();+  }+  FL_EXPORT_C(void,Fl_set_focus)(fl_Widget widget){+    Fl::focus((static_cast<Fl_Widget*>(widget)));+  }+  FL_EXPORT_C(void,Fl_add_handler)(fl_Event_Handler h){+    Fl::add_handler(h);+  }+  FL_EXPORT_C(void,Fl_remove_handler)(fl_Event_Handler h){+    Fl::remove_handler(h);+  }+  FL_EXPORT_C(void,Fl_set_event_dispatch)(fl_Event_Dispatch* d){+    C_to_Fl_Event_Dispatch::cb = d;+    Fl::event_dispatch(C_to_Fl_Event_Dispatch::intercept);+  }+  FL_EXPORT_C(fl_Event_Dispatch,Fl_event_dispatch)( ){+    return *C_to_Fl_Event_Dispatch::cb;+  }+  FL_EXPORT_C(void,Fl_copy)(const char* stuff,int len){+    Fl::copy(stuff,len,0);+  }+  FL_EXPORT_C(void,Fl_copy_with_destination)(const char* stuff,int len,int destination){+    Fl::copy(stuff,len,destination);+  }+  FL_EXPORT_C(void,Fl_paste)(fl_Widget receiver){+    Fl::paste(*(static_cast<Fl_Widget*>(receiver)));+  }+  FL_EXPORT_C(void,Fl_paste_with_source)(fl_Widget receiver,int source){+    Fl::paste(*(static_cast<Fl_Widget*>(receiver)), source);+  }+  FL_EXPORT_C(int,Fl_dnd)( ){+    return Fl::dnd();+  }+  FL_EXPORT_C(fl_Widget,Fl_selection_owner)( ){+    return (fl_Widget)Fl::selection_owner();+  }+  FL_EXPORT_C(void,Fl_set_selection_owner)(fl_Widget widget){+    Fl::selection_owner((static_cast<Fl_Widget*>(widget)));+  }+  FL_EXPORT_C(void,Fl_selection)(fl_Widget owner,const char* text,int len){+    Fl::selection(*(static_cast<Fl_Widget*>(owner)),text,len);+  }+  FL_EXPORT_C(int,Fl_x)( ){+    return Fl::x();+  }+  FL_EXPORT_C(int,Fl_y)( ){+    return Fl::y();+  }+  FL_EXPORT_C(int,Fl_w)( ){+    return Fl::w();+  }+  FL_EXPORT_C(int,Fl_h)( ){+    return Fl::h();+  }+  FL_EXPORT_C(int,Fl_screen_count)( ){+    return Fl::screen_count();+  }+  FL_EXPORT_C(void,Fl_screen_xywh)(int* X,int* Y,int* W,int* H){+    Fl::screen_xywh(*X,*Y,*W,*H);+  }+  FL_EXPORT_C(void,Fl_screen_xywh_with_mxmy)(int* X,int* Y,int* W,int* H,int mx,int my){+    Fl::screen_xywh(*X,*Y,*W,*H,mx,my);+  }+  FL_EXPORT_C(void,Fl_screen_xywh_with_n)(int* X,int* Y,int* W,int* H,int n){+    Fl::screen_xywh(*X,*Y,*W,*H,n);+  }+  FL_EXPORT_C(void,Fl_screen_xywh_with_mxmymwmh)(int* X,int* Y,int* W,int* H,int mx,int my,int mw,int mh){+    Fl::screen_xywh(*X,*Y,*W,*H,mx,my,mw,mh);+  }+  FL_EXPORT_C(void,Fl_screen_dpi)(float* h,float* v){+    Fl::screen_dpi(*h,*v);+  }+  FL_EXPORT_C(void,Fl_screen_dpi_with_n)(float* h,float* v,int n){+    Fl::screen_dpi(*h,*v,n);+  }+  FL_EXPORT_C(void,Fl_screen_work_area_with_mx_my)(int* X,int* Y,int* W,int* H,int mx,int my){+    Fl::screen_work_area(*X,*Y,*W,*H,mx,my);+  }+  FL_EXPORT_C(void,Fl_screen_work_area_with_n)(int* X,int* Y,int* W,int* H,int n){+    Fl::screen_work_area(*X,*Y,*W,*H,n);+  }+  FL_EXPORT_C(void,Fl_screen_work_area)(int* X,int* Y,int* W,int* H){+    Fl::screen_work_area(*X,*Y,*W,*H);+  }+  FL_EXPORT_C(void,Fl_set_color_rgb)(Fl_Color color,uchar r,uchar g,uchar b){+    Fl::set_color(color,r,g,b);+  }+  FL_EXPORT_C(void,Fl_set_color)(Fl_Color i,unsigned c){+    Fl::set_color(i,c);+  }+  FL_EXPORT_C(unsigned,Fl_get_color)(Fl_Color i){+    return Fl::get_color(i);+  }+  FL_EXPORT_C(void,Fl_get_color_rgb)(Fl_Color i,uchar *red,uchar *green,uchar *blue){+    Fl::get_color(i,*red,*green,*blue);+  }+#if !defined(__APPLE__)+  FL_EXPORT_C(void,Fl_free_color)(Fl_Color i){+    Fl::free_color(i);+  }+  FL_EXPORT_C(void,Fl_free_color_with_overlay)(Fl_Color i,int overlay){+    Fl::free_color(i,overlay);+  }+#endif+  FL_EXPORT_C(const char*,Fl_get_font)(Fl_Font font){+    return Fl::get_font(font);+  }+  FL_EXPORT_C(const char*,Fl_get_font_name)(Fl_Font font){+    return Fl::get_font_name(font);+  }+  FL_EXPORT_C(const char*,Fl_get_font_name_with_attributes)(Fl_Font font,int* attributes){+    return Fl::get_font_name(font,attributes);+  }+  FL_EXPORT_C(int,Fl_get_font_sizes)(Fl_Font font,int* sizep){+    return Fl::get_font_sizes(font,sizep);+  }+  FL_EXPORT_C(void,Fl_set_font_by_string)(Fl_Font font,const char* text){+    Fl::set_font(font,text);+  }+  FL_EXPORT_C(void,Fl_set_font_by_font)(Fl_Font to,Fl_Font from){+    Fl::set_font(to,from);+  }+  FL_EXPORT_C(Fl_Font,Fl_set_fonts)(){+    return Fl::set_fonts();+  }+  FL_EXPORT_C(Fl_Font,Fl_set_fonts_with_string)(const char* string){+    return Fl::set_fonts(string);+  }+  FL_EXPORT_C(void,Fl_set_labeltype)(Fl_Labeltype labeltype,fl_Label_Draw_F* label_draw_f,fl_Label_Measure_F* label_measure_f){+    C_to_Fl_Label_Draw_F::cb = label_draw_f;+    C_to_Fl_Label_Measure_F::cb = label_measure_f;+    Fl::set_labeltype(labeltype,C_to_Fl_Label_Draw_F::intercept,C_to_Fl_Label_Measure_F::intercept);+  }+  // FL_EXPORT_C(void,Fl_set_labeltype_by_labeltype)(Fl_Labeltype to ,Fl_Labeltype from){+  //   Fl::set_labeltype(to,from);+  // }+  FL_EXPORT_C(fl_Box_Draw_F*,Fl_get_boxtype)(Fl_Boxtype boxtype){+    return Fl::get_boxtype(boxtype);+  }+  FL_EXPORT_C(void,Fl_set_boxtype)(Fl_Boxtype boxtype,fl_Box_Draw_F* box_draw_f,uchar offsetX,uchar offsetY,uchar offsetW,uchar offsetH){+    Fl::set_boxtype(boxtype,box_draw_f,offsetX,offsetY,offsetW,offsetH);+  }+  FL_EXPORT_C(void,Fl_set_boxtype_by_boxtype)(Fl_Boxtype to,Fl_Boxtype from){+    Fl::set_boxtype(to,from);+  }+  FL_EXPORT_C(int,Fl_box_dx)(Fl_Boxtype boxtype){+    return Fl::box_dx(boxtype);+  }+  FL_EXPORT_C(int,Fl_box_dy)(Fl_Boxtype boxtype){+    return Fl::box_dy(boxtype);+  }+  FL_EXPORT_C(int,Fl_box_dw)(Fl_Boxtype boxtype){+    return Fl::box_dw(boxtype);+  }+  FL_EXPORT_C(int,Fl_box_dh)(Fl_Boxtype boxtype){+    return Fl::box_dh(boxtype);+  }+  FL_EXPORT_C(int,Fl_draw_box_active)( ){+    return Fl::draw_box_active();+  }+  FL_EXPORT_C(void,Fl_default_atclose)(fl_Window window,void* data){+    Fl::default_atclose((static_cast<Fl_Window*>(window)),data);+  }+  FL_EXPORT_C(void,Fl_set_atclose)(fl_Atclose_Handler* f){+    C_to_Fl_Atclose_Handler::cb = f;+    Fl::set_atclose(C_to_Fl_Atclose_Handler::intercept);+  }+  FL_EXPORT_C(int,Fl_event_shift)( ){+    return Fl::event_shift();+  }+  FL_EXPORT_C(int,Fl_event_ctrl)( ){+    return Fl::event_ctrl();+  }+  FL_EXPORT_C(int,Fl_event_command)( ){+    return Fl::event_command();+  }+  FL_EXPORT_C(int,Fl_event_alt)( ){+    return Fl::event_alt();+  }+  FL_EXPORT_C(int,Fl_event_buttons)( ){+    return Fl::event_buttons();+  }+  FL_EXPORT_C(int,Fl_event_button1)( ){+    return Fl::event_button1();+  }+  FL_EXPORT_C(int,Fl_event_button2)( ){+    return Fl::event_button2();+  }+  FL_EXPORT_C(int,Fl_event_button3)( ){+    return Fl::event_button3();+  }+  FL_EXPORT_C(void,Fl_set_idle)(fl_Old_Idle_Handler cb){+    Fl::set_idle(cb);+  }+  FL_EXPORT_C(void,Fl_release)( ){+    Fl::release();+  }+  FL_EXPORT_C(void,Fl_set_visible_focus)(int v){+    Fl::visible_focus(v);+  }+  FL_EXPORT_C(int,Fl_visible_focus)( ){+    return Fl::visible_focus();+  }+  FL_EXPORT_C(void,Fl_set_dnd_text_ops)(int v){+    Fl::dnd_text_ops(v);+  }+  FL_EXPORT_C(int,Fl_dnd_text_ops)( ){+    return Fl::dnd_text_ops();+  }+  FL_EXPORT_C(int,Fl_lock)( ){+    return Fl::lock();+  }+  FL_EXPORT_C(void,Fl_unlock)( ){+    Fl::unlock();+  }+  FL_EXPORT_C(void,Fl_awake)(){+    Fl::awake((void*)0);+  }+  FL_EXPORT_C(void,Fl_awake_with_message)(void* message){+    Fl::awake(message);+  }+  FL_EXPORT_C(int,Fl_awake_with_cb)(fl_Awake_Handler cb){+    return Fl::awake(cb,0);+  }+  FL_EXPORT_C(int,Fl_awake_with_cb_message)(fl_Awake_Handler cb, void* message){+    return Fl::awake(cb, message);+  }+  FL_EXPORT_C(void*,Fl_thread_message)( ){+    return Fl::thread_message();+  }+  FL_EXPORT_C(void,Fl_delete_widget)(fl_Widget w) {+    Fl::delete_widget((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_clear_widget_pointer)(fl_Widget w){+    Fl::clear_widget_pointer((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_do_widget_deletion)( ){+    Fl::do_widget_deletion();+  }+  FL_EXPORT_C(void,Fl_watch_widget_pointer)(fl_Widget w){+    Fl_Widget& ref = *(static_cast<Fl_Widget*>(w));+    Fl_Widget* refPtr = &ref;+    Fl::watch_widget_pointer(refPtr);+  }+  FL_EXPORT_C(void,Fl_release_widget_pointer)(fl_Widget w){+    Fl_Widget& ref = *(static_cast<Fl_Widget*>(w));+    Fl_Widget* refPtr = &ref;+    Fl::release_widget_pointer(refPtr);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_C.h view
@@ -0,0 +1,250 @@+#ifndef __FLC__+#define __FLC__+#include <stdarg.h>+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_EnumerationsC.h"+#ifdef __cplusplus+#include "FL/Fl.H"+#include "Fl_EnumerationsC.h"+#include "Fl_CallbackC.h"+#include "Fl_WindowC.h"+#include "Fl_Double_WindowC.h"+#include "Fl_ButtonC.h"+#include "Fl_Check_ButtonC.h"+#include "Fl_Radio_ButtonC.h"+#include "Fl_Light_ButtonC.h"+#include "Fl_Toggle_ButtonC.h"+#include "Fl_InputC.h"+#include "Fl_File_InputC.h"+#include "Fl_Float_InputC.h"+#include "Fl_Int_InputC.h"+#include "Fl_Multiline_InputC.h"+#include "Fl_Secret_InputC.h"+#include "Fl_Value_InputC.h"+#include "Fl_Tree_PrefsC.h"+#include "Fl_Tree_ItemC.h"+#include "Fl_TreeC.h"+#include "Fl_PreferencesC.h"+#include "Fl_TableC.h"+#include "Fl_DrawC.h"+#include "Fl_Menu_ItemC.h"+#include "Fl_Menu_C.h"+#include "Fl_Sys_Menu_BarC.h"+EXPORT {+#endif+  typedef enum {+    OPTION_ARROW_FOCUS = 0,+    OPTION_VISIBLE_FOCUS,+    OPTION_DND_TEXT,+    OPTION_SHOW_TOOLTIPS,+    OPTION_LAST+  } Fl_Option;+  typedef void (fl_Label_Draw_F)(const fl_Label label, int x, int y, int w, int h, Fl_Align align);+  typedef void (fl_Label_Measure_F)(const fl_Label label, int *width, int *height);+  typedef void (fl_Box_Draw_F)(int x, int y, int w, int h, Fl_Color color);+  typedef void (*fl_Timeout_Handler)(void *data);+  typedef void (*fl_Awake_Handler)(void *data);+  typedef void (*fl_Idle_Handler)(void *data);+  typedef void (*fl_Old_Idle_Handler)();+  typedef void (*fl_FD_Handler)(FL_SOCKET fd, void *data);+  typedef int  (*fl_Event_Handler)(int event);+  typedef void (*fl_Abort_Handler)(const char *format, va_list argp);+#ifdef __cplusplus+  typedef int  (*fl_Args_Handler)(int argc, char** argv, int& i);+#else+  typedef int  (*fl_Args_Handler)(int argc, char** argv, int* i);+#endif+  typedef void (*fl_Atclose_Handler)(fl_Window window, void *data);+  typedef int  (*fl_Event_Dispatch)(int event, fl_Window w);++  FL_EXPORT_C(int, Fl_run)();+  FL_EXPORT_C(int, Fl_check)();+  FL_EXPORT_C(int, Fl_ready)();+  FL_EXPORT_C(int, Fl_option)(Fl_Option opt);+  FL_EXPORT_C(void, Fl_set_option)(Fl_Option opt, int val);++  FL_EXPORT_C(int, Fl_add_awake_handler_)(fl_Awake_Handler handler, void* user_data);+  FL_EXPORT_C(int, Fl_get_awake_handler_)(fl_Awake_Handler* handler, void** user_data);+  FL_EXPORT_C(double, Fl_version)();+  FL_EXPORT_C(const char*, Fl_help)();+  FL_EXPORT_C(int, Fl_arg)(int argc, char **argv, int i);+  FL_EXPORT_C(int, Fl_args_with_i)(int argc, char **argv, int i);+  FL_EXPORT_C(void, Fl_args)(int argc, char **argv);+  FL_EXPORT_C(int, Fl_args_with_handler)(int argc,char **argv,int i,fl_Args_Handler cb);+  FL_EXPORT_C(void, Fl_display)(const char* text);+  FL_EXPORT_C(int, Fl_visual)(int mode);+#if !defined(__APPLE__)+  FL_EXPORT_C(int, Fl_gl_visual)(int mode);+  FL_EXPORT_C(int, Fl_gl_visual_with_alist)(int mode, int *alist);+#endif+  FL_EXPORT_C(void, Fl_own_colormap)();+  FL_EXPORT_C(void, Fl_get_system_colors)();+  FL_EXPORT_C(void, Fl_foreground)(uchar r, uchar g, uchar b);+  FL_EXPORT_C(void, Fl_background)(uchar r, uchar g, uchar b);+  FL_EXPORT_C(void, Fl_background2)(uchar r, uchar g, uchar b);++  FL_EXPORT_C(const char*,Fl_scheme)();+  FL_EXPORT_C(int        ,Fl_set_scheme)(const char* text);+  FL_EXPORT_C(int        ,Fl_is_scheme)(const char* text);+  FL_EXPORT_C(int        ,Fl_reload_scheme)();+  FL_EXPORT_C(int        ,Fl_scrollbar_size)();+  FL_EXPORT_C(void       ,Fl_set_scrollbar_size)(int W);+  FL_EXPORT_C(int        ,Fl_wait)();+  FL_EXPORT_C(double     ,Fl_set_wait)(double time);+  FL_EXPORT_C(fl_Widget  ,Fl_readqueue)();+  FL_EXPORT_C(void       ,Fl_add_timeout)(double t,fl_Timeout_Handler handler);+  FL_EXPORT_C(void       ,Fl_add_timeout_with_userdata)(double t,fl_Timeout_Handler handler, void* userdata);+  FL_EXPORT_C(void       ,Fl_repeat_timeout)(double t,fl_Timeout_Handler handler);+  FL_EXPORT_C(void       ,Fl_repeat_timeout_with_userdata)(double t,fl_Timeout_Handler handler,void* userdata);+  FL_EXPORT_C(int        ,Fl_has_timeout)(fl_Timeout_Handler handler);+  FL_EXPORT_C(int        ,Fl_has_timeout_with_userdata)(fl_Timeout_Handler handler, void* userdata);+  FL_EXPORT_C(void       ,Fl_remove_timeout)(fl_Timeout_Handler handler);+  FL_EXPORT_C(void       ,Fl_remove_timeout_with_userdata)(fl_Timeout_Handler handler,void* userdata);+  FL_EXPORT_C(void       ,Fl_add_check)(fl_Timeout_Handler handler);+  FL_EXPORT_C(void       ,Fl_add_check_with_userdata)(fl_Timeout_Handler handler,void* userdata);+  FL_EXPORT_C(int        ,Fl_has_check)(fl_Timeout_Handler handler);+  FL_EXPORT_C(int        ,Fl_has_check_with_userdata)(fl_Timeout_Handler handler, void* userdata);+  FL_EXPORT_C(void       ,Fl_remove_check)(fl_Timeout_Handler handler);+  FL_EXPORT_C(void       ,Fl_remove_check_with_userdata)(fl_Timeout_Handler handler,void* userdata);+  FL_EXPORT_C(void       ,Fl_add_fd_with_when)(int fd,int when,fl_FD_Handler cb);+  FL_EXPORT_C(void       ,Fl_add_fd_with_when_userdata)(int fd,int when,fl_FD_Handler cb,void* userdata);+  FL_EXPORT_C(void       ,Fl_add_fd)(int fd,fl_FD_Handler cb);+  FL_EXPORT_C(void       ,Fl_add_fd_with_userdata)(int fd,fl_FD_Handler cb,void* userdata);+  FL_EXPORT_C(void       ,Fl_remove_fd_with_when)(int fd_handle,int when);+  FL_EXPORT_C(void       ,Fl_remove_fd)(int fd_handle);+  FL_EXPORT_C(void       ,Fl_add_idle)(fl_Idle_Handler cb);+  FL_EXPORT_C(void       ,Fl_add_idle_with_userdata)(fl_Idle_Handler cb,void* userdata);+  FL_EXPORT_C(int        ,Fl_has_idle)(fl_Idle_Handler cb);+  FL_EXPORT_C(int        ,Fl_has_idle_with_userdata)(fl_Idle_Handler cb, void* userdata);+  FL_EXPORT_C(void       ,Fl_remove_idle)(fl_Idle_Handler cb);+  FL_EXPORT_C(void       ,Fl_remove_idle_with_userdata)(fl_Idle_Handler cb,void* data);+  FL_EXPORT_C(int        ,Fl_damage)();+  FL_EXPORT_C(void       ,Fl_redraw)();+  FL_EXPORT_C(void       ,Fl_flush)();+  FL_EXPORT_C(fl_Window  ,Fl_first_window)();+  FL_EXPORT_C(void       ,Fl_set_first_window)(fl_Window window);+  FL_EXPORT_C(fl_Window  ,Fl_next_window)(fl_Window window);+  FL_EXPORT_C(fl_Window  ,Fl_modal)();+  FL_EXPORT_C(fl_Window  ,Fl_grab)();+  FL_EXPORT_C(void       ,Fl_set_grab)(fl_Window window);+  FL_EXPORT_C(int        ,Fl_event)();+  FL_EXPORT_C(int        ,Fl_event_x)();+  FL_EXPORT_C(int        ,Fl_event_y)();+  FL_EXPORT_C(int        ,Fl_event_x_root)();+  FL_EXPORT_C(int        ,Fl_event_y_root)();+  FL_EXPORT_C(int        ,Fl_event_dx)();+  FL_EXPORT_C(int        ,Fl_event_dy)();+  FL_EXPORT_C(void       ,Fl_get_mouse)(int* x, int* y);+  FL_EXPORT_C(int        ,Fl_event_clicks)();+  FL_EXPORT_C(void       ,Fl_set_event_clicks)(int i);+  FL_EXPORT_C(int        ,Fl_event_is_click)();+  FL_EXPORT_C(void       ,Fl_set_event_is_click)(int i);+  FL_EXPORT_C(int        ,Fl_event_button)();+  FL_EXPORT_C(int        ,Fl_event_state)();+  FL_EXPORT_C(int        ,Fl_contains_event_state)(int i);+  FL_EXPORT_C(int        ,Fl_event_key)();+  FL_EXPORT_C(int        ,Fl_event_original_key)();+  FL_EXPORT_C(int        ,Fl_event_key_pressed)(int key);+  FL_EXPORT_C(int        ,Fl_get_key)(int key);+  FL_EXPORT_C(const char*,Fl_event_text)();+  FL_EXPORT_C(int        ,Fl_event_length)();+  FL_EXPORT_C(int        ,Fl_compose)(int* del);+  FL_EXPORT_C(void       ,Fl_compose_reset)();+  FL_EXPORT_C(int        ,Fl_event_inside_region)(int X,int Y,int W,int H);+  FL_EXPORT_C(int        ,Fl_event_inside_widget)(fl_Widget widget);+  FL_EXPORT_C(int        ,Fl_test_shortcut)(Fl_Shortcut shortcut);+  FL_EXPORT_C(void       ,Fl_enable_im)();+  FL_EXPORT_C(void       ,Fl_disable_im)();+  FL_EXPORT_C(int        ,Fl_handle)(int event,fl_Window window);+  FL_EXPORT_C(int        ,Fl_handle_)(int event,fl_Window window);+  FL_EXPORT_C(fl_Widget  ,Fl_belowmouse)();+  FL_EXPORT_C(void       ,Fl_set_belowmouse)(fl_Widget widget);+  FL_EXPORT_C(fl_Widget  ,Fl_pushed)();+  FL_EXPORT_C(void       ,Fl_set_pushed)(fl_Widget widget);+  FL_EXPORT_C(fl_Widget  ,Fl_focus)();+  FL_EXPORT_C(void       ,Fl_set_focus)(fl_Widget widget);+  FL_EXPORT_C(void       ,Fl_add_handler)(fl_Event_Handler h);+  FL_EXPORT_C(void       ,Fl_remove_handler)(fl_Event_Handler h);+  FL_EXPORT_C(void              ,Fl_set_event_dispatch)(fl_Event_Dispatch* d);+  FL_EXPORT_C(fl_Event_Dispatch ,Fl_event_dispatch)();+  FL_EXPORT_C(void      ,Fl_copy)(const char* stuff,int len);+  FL_EXPORT_C(void      ,Fl_copy_with_destination)(const char* stuff,int len,int destination);+  FL_EXPORT_C(void      ,Fl_paste_with_source)(fl_Widget receiver,int source);+  FL_EXPORT_C(int       ,Fl_dnd)();+  FL_EXPORT_C(fl_Widget ,Fl_selection_owner)();+  FL_EXPORT_C(void      ,Fl_set_selection_owner)(fl_Widget widget);+  FL_EXPORT_C(void      ,Fl_selection)(fl_Widget owner,const char* text,int len);+  FL_EXPORT_C(void      ,Fl_paste)(fl_Widget receiver);+  FL_EXPORT_C(int       ,Fl_x)();+  FL_EXPORT_C(int       ,Fl_y)();+  FL_EXPORT_C(int       ,Fl_w)();+  FL_EXPORT_C(int       ,Fl_h)();+  FL_EXPORT_C(int               ,Fl_screen_count)();+  FL_EXPORT_C(void              ,Fl_screen_xywh)(int* X,int* Y,int* W,int* H);+  FL_EXPORT_C(void              ,Fl_screen_xywh_with_mxmy)(int* X,int* Y,int* W,int* H,int mx,int my);+  FL_EXPORT_C(void              ,Fl_screen_xywh_with_n)(int* X,int* Y,int* W,int* H,int n);+  FL_EXPORT_C(void              ,Fl_screen_xywh_with_mxmymwmh)(int* X,int* Y,int* W,int* H,int mx,int my,int mw,int mh);+  FL_EXPORT_C(void              ,Fl_screen_dpi)(float* h,float* v);+  FL_EXPORT_C(void              ,Fl_screen_dpi_with_n)(float* h,float* v,int n);+  FL_EXPORT_C(void              ,Fl_screen_work_area_with_mx_my)(int* X,int* Y,int* W,int* H,int mx,int my);+  FL_EXPORT_C(void              ,Fl_screen_work_area_with_n)(int* X,int* Y,int* W,int* H,int n);+  FL_EXPORT_C(void              ,Fl_screen_work_area)(int* X,int* Y,int* W,int* H);+  FL_EXPORT_C(void              ,Fl_set_color_rgb)(Fl_Color color,uchar r,uchar g,uchar b);+  FL_EXPORT_C(void              ,Fl_set_color)(Fl_Color i,unsigned c);+  FL_EXPORT_C(unsigned          ,Fl_get_color)(Fl_Color i);+  FL_EXPORT_C(void              ,Fl_get_color_rgb)(Fl_Color i,uchar *red,uchar *green,uchar *blue);+#if !defined(__APPLE__)+  FL_EXPORT_C(void              ,Fl_free_color)(Fl_Color i);+  FL_EXPORT_C(void              ,Fl_free_color_with_overlay)(Fl_Color i,int overlay);+#endif+  FL_EXPORT_C(const char*       ,Fl_get_font)(Fl_Font font);+  FL_EXPORT_C(const char*       ,Fl_get_font_name)(Fl_Font font);+  FL_EXPORT_C(const char*       ,Fl_get_font_name_with_attributes)(Fl_Font font,int* attributes);+  FL_EXPORT_C(int               ,Fl_get_font_sizes)(Fl_Font font,int* sizep);+  FL_EXPORT_C(void              ,Fl_set_font_by_string)(Fl_Font font,const char* fontString);+  FL_EXPORT_C(void              ,Fl_set_font_by_font)(Fl_Font to,Fl_Font from);+  FL_EXPORT_C(Fl_Font           ,Fl_set_fonts)();+  FL_EXPORT_C(Fl_Font           ,Fl_set_fonts_with_string)(const char* string);+  FL_EXPORT_C(void              ,Fl_set_labeltype)(Fl_Labeltype labeltype,fl_Label_Draw_F* label_draw_f,fl_Label_Measure_F* label_measure_f);+  /* FL_EXPORT_C(void              ,Fl_set_labeltype_by_labeltype)(Fl_Labeltype to,Fl_Labeltype from); */+  FL_EXPORT_C(fl_Box_Draw_F*    ,Fl_get_boxtype)(Fl_Boxtype boxtype);+  FL_EXPORT_C(void              ,Fl_set_boxtype)(Fl_Boxtype boxtype,fl_Box_Draw_F* box_draw_f,uchar offsetX,uchar offsetY,uchar offsetW,uchar offsetH);+  FL_EXPORT_C(void              ,Fl_set_boxtype_by_boxtype)(Fl_Boxtype to,Fl_Boxtype from);+  FL_EXPORT_C(int               ,Fl_box_dx)(Fl_Boxtype boxtype);+  FL_EXPORT_C(int               ,Fl_box_dy)(Fl_Boxtype boxtype);+  FL_EXPORT_C(int               ,Fl_box_dw)(Fl_Boxtype boxtype);+  FL_EXPORT_C(int               ,Fl_box_dh)(Fl_Boxtype boxtype);+  FL_EXPORT_C(int               ,Fl_draw_box_active)();+  FL_EXPORT_C(void              ,Fl_default_atclose)(fl_Window window,void* data);+  FL_EXPORT_C(void              ,Fl_set_atclose)(fl_Atclose_Handler* f);+  FL_EXPORT_C(int               ,Fl_event_shift)();+  FL_EXPORT_C(int               ,Fl_event_ctrl)();+  FL_EXPORT_C(int               ,Fl_event_command)();+  FL_EXPORT_C(int               ,Fl_event_alt)();+  FL_EXPORT_C(int               ,Fl_event_buttons)();+  FL_EXPORT_C(int               ,Fl_event_button1)();+  FL_EXPORT_C(int               ,Fl_event_button2)();+  FL_EXPORT_C(int               ,Fl_event_button3)();+  FL_EXPORT_C(void              ,Fl_set_idle)(fl_Old_Idle_Handler cb);+  FL_EXPORT_C(void              ,Fl_release)();+  FL_EXPORT_C(void              ,Fl_set_visible_focus)(int v);+  FL_EXPORT_C(int               ,Fl_visible_focus)();+  FL_EXPORT_C(void              ,Fl_set_dnd_text_ops)(int v);+  FL_EXPORT_C(int               ,Fl_dnd_text_ops)();+  FL_EXPORT_C(int               ,Fl_lock)();+  FL_EXPORT_C(void              ,Fl_unlock)();+  FL_EXPORT_C(void              ,Fl_awake)();+  FL_EXPORT_C(void              ,Fl_awake_with_message)(void* message);+  FL_EXPORT_C(int               ,Fl_awake_with_cb)(fl_Awake_Handler cb);+  FL_EXPORT_C(int               ,Fl_awake_with_cb_message)(fl_Awake_Handler cb, void* message);+  FL_EXPORT_C(void*             ,Fl_thread_message)();+  FL_EXPORT_C(void              ,Fl_delete_widget)(fl_Widget w);+  FL_EXPORT_C(void              ,Fl_do_widget_deletion)();+  FL_EXPORT_C(void              ,Fl_watch_widget_pointer)(fl_Widget w);+  FL_EXPORT_C(void              ,Fl_release_widget_pointer)(fl_Widget w);+  FL_EXPORT_C(void              ,Fl_clear_widget_pointer)(fl_Widget w);+#ifdef __cplusplus+}+#endif+#endif /*__FLC__ */
+ c-src/Fl_Cairo_WindowC.h view
@@ -0,0 +1,237 @@+#ifndef __FL_CAIRO_WINDOW_C__+#define __FL_CAIRO_WINDOW_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Cairo_Window.H"+#include "Fl_WindowC.h"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Cairo_Window_handle)(fl_Cairo_Window self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Cairo_Window_parent)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_parent)(fl_Cairo_Window win, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Cairo_Window_type)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_type)(fl_Cairo_Window win, uchar t);++  FL_EXPORT_C(int,          Fl_Cairo_Window_x)(fl_Cairo_Window win);+  FL_EXPORT_C(int,          Fl_Cairo_Window_y)(fl_Cairo_Window win);+  FL_EXPORT_C(int,          Fl_Cairo_Window_w)(fl_Cairo_Window win);+  FL_EXPORT_C(int,          Fl_Cairo_Window_h)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_align)(fl_Cairo_Window cairo_window, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Cairo_Window_align)(fl_Cairo_Window win);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Cairo_Window_box)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_box)(fl_Cairo_Window win, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Cairo_Window_color)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_color)(fl_Cairo_Window win, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_color_with_bg_sel)(fl_Cairo_Window win,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Cairo_Window_selection_color)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_selection_color)(fl_Cairo_Window win, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Cairo_Window_label)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_copy_label)(fl_Cairo_Window win, const char* new_label);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_label)(fl_Cairo_Window win, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Cairo_Window_labeltype)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_labeltype)(fl_Cairo_Window win, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Cairo_Window_labelcolor)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_labelcolor)(fl_Cairo_Window win, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Cairo_Window_labelfont)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_labelfont)(fl_Cairo_Window win, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Cairo_Window_labelsize)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_labelsize)(fl_Cairo_Window win, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Cairo_Window_image)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_image)(fl_Cairo_Window win, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Cairo_Window_deimage)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_deimage)(fl_Cairo_Window win, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Cairo_Window_tooltip)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_copy_tooltip)(fl_Cairo_Window win, const char* text);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_tooltip)(fl_Cairo_Window win, const char* text);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_callback_with_user_data)(fl_Cairo_Window win, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_callback)(fl_Cairo_Window win, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Cairo_Window_user_data)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_user_data)(fl_Cairo_Window win, void* v);+  FL_EXPORT_C(long,         Fl_Cairo_Window_argument)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_argument)(fl_Cairo_Window win, long v);+  FL_EXPORT_C(Fl_When,      Fl_Cairo_Window_when)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_when)(fl_Cairo_Window win, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Cairo_Window_visible)(fl_Cairo_Window win);+  FL_EXPORT_C(int,          Fl_Cairo_Window_visible_r)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_visible)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_clear_visible)(fl_Cairo_Window win);+  FL_EXPORT_C(unsigned int, Fl_Cairo_Window_active)(fl_Cairo_Window win);+  FL_EXPORT_C(int,          Fl_Cairo_Window_active_r)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_activate)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_deactivate)(fl_Cairo_Window win);+  FL_EXPORT_C(unsigned int, Fl_Cairo_Window_output)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_output)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_clear_output)(fl_Cairo_Window win);+  FL_EXPORT_C(unsigned int, Fl_Cairo_Window_takesevents)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_changed)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_clear_changed)(fl_Cairo_Window win);+  FL_EXPORT_C(int,          Fl_Cairo_Window_take_focus)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_visible_focus)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_clear_visible_focus)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_modify_visible_focus)(fl_Cairo_Window win, int v);+  FL_EXPORT_C(unsigned int, Fl_Cairo_Window_visible_focus)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_do_callback)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_do_callback_with_widget_and_user_data)(fl_Cairo_Window win, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Cairo_Window_do_callback_with_widget_and_default_user_data)(fl_Cairo_Window win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Cairo_Window_contains)(fl_Cairo_Window win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Cairo_Window_inside)(fl_Cairo_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Cairo_Window_redraw)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_redraw_label)(fl_Cairo_Window win);+  FL_EXPORT_C(uchar,        Fl_Cairo_Window_damage)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_clear_damage_with_bitmask)(fl_Cairo_Window win, uchar c);+  FL_EXPORT_C(void,         Fl_Cairo_Window_clear_damage)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_damage_with_text)(fl_Cairo_Window win, uchar c);+  FL_EXPORT_C(void,         Fl_Cairo_Window_damage_inside_widget)(fl_Cairo_Window win, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Cairo_Window_draw_label_with_xywh_alignment)(fl_Cairo_Window win, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Cairo_Window_measure_label)(fl_Cairo_Window win, int* ww , int* hh);+  FL_EXPORT_C(fl_Group,     Fl_Cairo_Window_as_group)(fl_Cairo_Window win);+  FL_EXPORT_C(fl_Gl_Window, Fl_Cairo_Window_as_gl_window)(fl_Cairo_Window win);+  FL_EXPORT_C(fl_Window,    Fl_Cairo_Window_window)(fl_Cairo_Window cairo_window);+  FL_EXPORT_C(fl_Window,    Fl_Cairo_Window_top_window)(fl_Cairo_Window cairo_window);+  FL_EXPORT_C(fl_Window ,   Fl_Cairo_Window_top_window_offset)(fl_Cairo_Window cairo_window, int* xoff, int* yoff);+  /* Inherited from Fl_Group */+  FL_EXPORT_C(void, Fl_Cairo_Window_draw_child)(fl_Cairo_Window Cairo_Window,fl_Widget widget);+  FL_EXPORT_C(void, Fl_Cairo_Window_draw_children)(fl_Cairo_Window Cairo_Window);+  FL_EXPORT_C(void, Fl_Cairo_Window_draw_outside_label)(fl_Cairo_Window Cairo_Window,fl_Widget widget);+  FL_EXPORT_C(void, Fl_Cairo_Window_update_child)(fl_Cairo_Window Cairo_Window,fl_Widget widget);+  FL_EXPORT_C(int*, Fl_Cairo_Window_sizes)(fl_Cairo_Window Cairo_Window);+  FL_EXPORT_C(void,         Fl_Cairo_Window_begin)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_end)(fl_Cairo_Window win);+  FL_EXPORT_C(int,          Fl_Cairo_Window_find)(fl_Cairo_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Cairo_Window_add)(fl_Cairo_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Cairo_Window_insert)(fl_Cairo_Window win, fl_Widget w, int i);+  FL_EXPORT_C(void,         Fl_Cairo_Window_remove_index)(fl_Cairo_Window win, int index);+  FL_EXPORT_C(void,         Fl_Cairo_Window_remove_widget)(fl_Cairo_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Cairo_Window_clear)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_resizable_by_reference)(fl_Cairo_Window win,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_resizable)(fl_Cairo_Window win,fl_Widget o);+  FL_EXPORT_C(fl_Widget,         Fl_Cairo_Window_resizable)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_add_resizable)(fl_Cairo_Window win,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Cairo_Window_init_sizes)(fl_Cairo_Window win);+  FL_EXPORT_C(int,          Fl_Cairo_Window_children)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_clip_children)(fl_Cairo_Window win,int c);+  FL_EXPORT_C(unsigned int, Fl_Cairo_Window_clip_children)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_focus)(fl_Cairo_Window win,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Cairo_Window__ddfdesign_kludge)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_insert_with_before)(fl_Cairo_Window self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Cairo_Window_array)(fl_Cairo_Window self);+  FL_EXPORT_C(fl_Widget,    Fl_Cairo_Window_child)(fl_Cairo_Window self, int n);+  FL_EXPORT_C(void,         Fl_Cairo_Window_forms_end)(fl_Cairo_Window self);+  /* FL_EXPORT_C(void,         Fl_Cairo_Window_forms_end)(fl_Cairo_Window win); */+  /* Fl_Window inherited */+  FL_EXPORT_C(unsigned int, Fl_Cairo_Window_changed)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_fullscreen)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_fullscreen_off)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_fullscreen_off_with_resize)(fl_Cairo_Window win,int X,int Y,int W,int H);+  FL_EXPORT_C(void,         Fl_Cairo_Window_iconize)(fl_Cairo_Window win);+  FL_EXPORT_C(fl_Cairo_Window,    Fl_Cairo_Window_New_WithLabel)(int w, int h, const char* title);+  FL_EXPORT_C(fl_Cairo_Window,    Fl_Cairo_Window_New)(int w, int h);+  FL_EXPORT_C(fl_Cairo_Window, Fl_OverriddenCairo_Window_New_WithLabel)(int w, int h, const char* title, fl_Cairo_Window_Virtual_Funcs* funcs); +  FL_EXPORT_C(fl_Cairo_Window, Fl_OverriddenCairo_Window_New)(int w, int h,fl_Cairo_Window_Virtual_Funcs* funcs); +  FL_EXPORT_C(int ,Fl_Cairo_Window_handle)(fl_Cairo_Window win, int event);+  FL_EXPORT_C(void ,Fl_Cairo_Window_set_border)(fl_Cairo_Window win, int b);+  FL_EXPORT_C(void ,Fl_Cairo_Window_clear_border)(fl_Cairo_Window win);+  FL_EXPORT_C(unsigned int ,Fl_Cairo_Window_border)(fl_Cairo_Window win);+  FL_EXPORT_C(void ,Fl_Cairo_Window_set_override)(fl_Cairo_Window win);+  FL_EXPORT_C(unsigned int,Fl_Cairo_Window_override)(fl_Cairo_Window win);+  FL_EXPORT_C(void ,Fl_Cairo_Window_set_modal)(fl_Cairo_Window win);+  FL_EXPORT_C(unsigned int,Fl_Cairo_Window_modal)(fl_Cairo_Window win);+  FL_EXPORT_C(void ,Fl_Cairo_Window_set_non_modal)(fl_Cairo_Window win);+  FL_EXPORT_C(unsigned int ,Fl_Cairo_Window_non_modal)(fl_Cairo_Window win);+  FL_EXPORT_C(void ,Fl_Cairo_Window_set_menu_window)(fl_Cairo_Window win);+  FL_EXPORT_C(unsigned int,Fl_Cairo_Window_menu_window)(fl_Cairo_Window win);+  FL_EXPORT_C(void ,Fl_Cairo_Window_set_tooltip_window)(fl_Cairo_Window win);+  FL_EXPORT_C(unsigned int,Fl_Cairo_Window_tooltip_window)(fl_Cairo_Window win);+  FL_EXPORT_C(void ,Fl_Cairo_Window_hotspot_with_x_y)(fl_Cairo_Window win, int x, int y);+  FL_EXPORT_C(void ,Fl_Cairo_Window_hotspot_with_x_y_with_offscreen)(fl_Cairo_Window win, int x, int y, int offscreen);+  FL_EXPORT_C(void ,Fl_Cairo_Window_hotspot_with_widget)(fl_Cairo_Window win, fl_Widget w);//, int offscreen = 0);+  FL_EXPORT_C(void ,Fl_Cairo_Window_hotspot_with_widget_with_offscreen)(fl_Cairo_Window win, fl_Widget w, int offscreen);+  FL_EXPORT_C(void ,Fl_Cairo_Window_free_position)(fl_Cairo_Window win);+  FL_EXPORT_C(void ,Fl_Cairo_Window_size_range)(fl_Cairo_Window win, int minw, int minh);+  FL_EXPORT_C(void ,Fl_Cairo_Window_size_range_with_args)(fl_Window win, int minw, int minh, fl_Window_size_range_args* args);//int maxw=0, int maxh=0, int dw=0, int dh=0, int aspect=0);+  FL_EXPORT_C(const char*, Fl_Cairo_Window_label)(fl_Cairo_Window win);+  FL_EXPORT_C(const char*, Fl_Cairo_Window_iconlabel)(fl_Cairo_Window win);+  FL_EXPORT_C(void, Fl_Cairo_Window_set_label)(fl_Cairo_Window win,const char*);+  FL_EXPORT_C(void, Fl_Cairo_Window_set_iconlabel)(fl_Cairo_Window win,const char*);+  FL_EXPORT_C(void, Fl_Cairo_Window_set_label_with_iconlabel)(fl_Cairo_Window win,const char* label, const char* iconlabel);+  FL_EXPORT_C(void, Fl_Cairo_Window_copy_label)(fl_Cairo_Window win,const char* a);+  FL_EXPORT_C(void, Fl_Cairo_Window_set_default_xclass)(const char* label);+  FL_EXPORT_C(const char*, Fl_Cairo_Window_default_xclass)();+  FL_EXPORT_C(const char*, Fl_Cairo_Window_xclass)(fl_Cairo_Window win);+  FL_EXPORT_C(void, Fl_Cairo_Window_set_xclass)(fl_Cairo_Window win,const char* c);+  FL_EXPORT_C(const void*, Fl_Cairo_Window_icon)(fl_Cairo_Window win);+  FL_EXPORT_C(void, Fl_Cairo_Window_set_icon)(fl_Cairo_Window win,const void * ic);+  FL_EXPORT_C(int, Fl_Cairo_Window_shown)(fl_Cairo_Window win);+  FL_EXPORT_C(void, Fl_Cairo_Window_iconize)(fl_Cairo_Window win);+  FL_EXPORT_C(int, Fl_Cairo_Window_x_root)(fl_Cairo_Window win);+  FL_EXPORT_C(int, Fl_Cairo_Window_y_root)(fl_Cairo_Window win);+  FL_EXPORT_C(fl_Cairo_Window, Fl_Cairo_Window_current)();+  FL_EXPORT_C(void, Fl_Cairo_Window_make_current)(fl_Cairo_Window win);+  FL_EXPORT_C(void, Fl_Cairo_Window_set_cursor_with_bg)(fl_Cairo_Window win, Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void, Fl_Cairo_Window_set_cursor_with_fg)(fl_Cairo_Window win,Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void, Fl_Cairo_Window_set_cursor_with_fg_bg)(fl_Cairo_Window win,Fl_Cursor cursor, Fl_Color fg , Fl_Color bg );/* =FL_BLACK *//*=FL_WHITE*/+  FL_EXPORT_C(void, Fl_Cairo_Window_set_cursor)(fl_Cairo_Window win,Fl_Cursor cursor);+  FL_EXPORT_C(void, Fl_Cairo_Window_set_default_cursor_with_bg)(fl_Cairo_Window win,Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void, Fl_Cairo_Window_set_default_cursor_with_fg)(fl_Cairo_Window win, Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void, Fl_Cairo_Window_set_default_cursor_with_fg_bg)(fl_Cairo_Window win,Fl_Cursor cursor, Fl_Color fg , Fl_Color bg );+  FL_EXPORT_C(void, Fl_Cairo_Window_set_default_cursor)(fl_Cairo_Window win,Fl_Cursor cursor);+  FL_EXPORT_C(void, Fl_Cairo_Window_default_callback)(fl_Cairo_Window win, void* v);+  FL_EXPORT_C(int, Fl_Cairo_Window_decorated_w)(fl_Cairo_Window win);+  FL_EXPORT_C(int, Fl_Cairo_Window_decorated_h)(fl_Cairo_Window win);+  /* Fl_Cairo_Window specific */+  // flush resize destructor, constructor+#ifdef __cplusplus+  class Fl_DerivedCairo_Window : public Fl_Cairo_Window {+    fl_Cairo_Window_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void destroy_data();+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    virtual int handle(int event);+    virtual void resize(int x, int y, int w, int h);+    virtual void show();+    virtual void show(int,char**);+    virtual void hide();+    virtual void flush();+    virtual Fl_Window* as_window();+    virtual Fl_Gl_Window* as_gl_window();+    void draw_child(Fl_Widget* widget);+    void draw_children();+    void draw_outside_label(Fl_Widget* widget);+    void update_child(Fl_Widget* widget);+    int* sizes();+    Fl_DerivedCairo_Window(int X, int Y, int W, int H, const char *l, fl_Cairo_Window_Virtual_Funcs* funcs);+    Fl_DerivedCairo_Window(int X, int Y, int W, int H, fl_Cairo_Window_Virtual_Funcs* funcs);+    Fl_DerivedCairo_Window(int W, int H, const char *l, fl_Cairo_Window_Virtual_Funcs* funcs);+    Fl_DerivedCairo_Window(int W, int H, fl_Cairo_Window_Virtual_Funcs* funcs);+    ~Fl_DerivedCairo_Window();+  };+#endif+  FL_EXPORT_C(fl_Cairo_Window_Virtual_Funcs*, Fl_Cairo_Window_default_virtual_funcs)();+  FL_EXPORT_C(void,         Fl_Cairo_Window_show)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_show_with_args)(fl_Cairo_Window win, int argc, char** argv);+  FL_EXPORT_C(void,         Fl_Cairo_Window_destroy)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_flush)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_resize)(fl_Cairo_Window win, int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Cairo_Window_hide)(fl_Cairo_Window win);+  FL_EXPORT_C(void,         Fl_Cairo_Window_set_draw_cb)(fl_Cairo_Window win, fl_Callback cb);+#ifdef __cplusplus+}+#endif++#endif /* __FL_CAIRO_WINDOW_C__ */
+ c-src/Fl_CallbackC.cpp view
@@ -0,0 +1,93 @@+#include <FL/Fl.H>+#include "FL/Fl_Window.H"+#include <FL/Fl_Widget.H>+#include "Fl_CallbackC.h"++C_to_Fl_Callback::C_to_Fl_Callback(Fl_Widget* invoker, fl_Callback* callback, void* user_data) {+  this->callback = callback;+  this->user_data = user_data;+  invoker->callback(intercept, this);+}+C_to_Fl_Callback::C_to_Fl_Callback(Fl_Widget* invoker, fl_Callback* callback) {+  this->callback = callback;+  this->user_data = invoker->user_data();+  invoker->callback(intercept, this);+}+C_to_Fl_Callback::C_to_Fl_Callback(fl_Callback* callback){+  this->callback = callback;+  this->user_data = NULL;+}+C_to_Fl_Callback::C_to_Fl_Callback(fl_Text_Buffer_Callback* callback, void* invoker){+  this->text_buffer_callback = callback;+  this->user_data = invoker;+}+C_to_Fl_Callback::C_to_Fl_Callback(fl_Key_Func* key_func){+  this->c_key_func = key_func;+}+C_to_Fl_Callback::C_to_Fl_Callback(Fl_Text_Editor::Key_Func* key_func){+  this->cpp_key_func = key_func;+}+C_to_Fl_Callback::C_to_Fl_Callback(fl_Callback* callback, void* user_data){+  this->callback = callback;+  this->user_data = user_data;+}+void C_to_Fl_Callback::set_callback(Fl_File_Chooser* c){+  c->callback(intercept, this);+}+void C_to_Fl_Callback::set_callback(Fl_Menu_Item* item){+  item->callback(intercept,this);+}+void C_to_Fl_Callback::set_callback(Fl_Text_Buffer* b){+  b->transcoding_warning_action = intercept;+}+void* C_to_Fl_Callback::get_user_data(){+  return this->user_data;+}+void C_to_Fl_Callback::set_user_data(void* user_data){+  this->user_data = user_data;+}+int C_to_Fl_Callback::menu_insert(Fl_Menu_Item* item, int index, char* name, int shortcut, int flags){+  return item->insert(index,name,shortcut,intercept,this,flags);+}+int C_to_Fl_Callback::menu_insert(Fl_Menu_* menu_, int index, char* name, int shortcut, int flags){+  return menu_->insert(index,name,shortcut,intercept,this,flags);+}+int C_to_Fl_Callback::menu_insert(Fl_Menu_* menu_, int index, char* name, char* shortcut, int flags){+  return menu_->insert(index,name,shortcut,intercept,this,flags);+}+int C_to_Fl_Callback::menu_add(Fl_Menu_Item* item, char* name, int shortcut, int flags){+  return item->add(name, shortcut, intercept, this, flags);+}+int C_to_Fl_Callback::menu_add(Fl_Menu_Item* item, char* name, char* shortcut, int flags){+  return item->add(name, shortcut, intercept, this, flags);+}+int C_to_Fl_Callback::menu_add(Fl_Menu_* menu_, char* name, char* shortcut, int flags){+  return menu_->add(name,shortcut,intercept,this,flags);+}+int C_to_Fl_Callback::menu_add(Fl_Menu_* menu_, char* name, int shortcut, int flags){+  return menu_->add(name,shortcut,intercept,this,flags);+}+void C_to_Fl_Callback::runCallback(Fl_Widget* w) {+  (*callback)((fl_Widget) w, user_data);+}+void C_to_Fl_Callback::runCallback() {+  (*text_buffer_callback)(user_data);+}+int C_to_Fl_Callback::runCallback(int key, DerivedText_Editor* editor){+  int result = 0;+  if (c_key_func){+    result = (*c_key_func)(key, (fl_Text_Editor) editor);+  }+  else if (cpp_key_func) {+    result = (*cpp_key_func)(key, editor);+  }+  return result;+}+void C_to_Fl_Callback::runCallback(Fl_File_Chooser* c){+  (*callback)((fl_File_Chooser) c, user_data);+}+int C_to_Fl_Callback::intercept(int key, fl_Text_Editor editor){+  DerivedText_Editor* e = (static_cast<DerivedText_Editor*>(editor));+  C_to_Fl_Callback* context = e->get_curr_callback_context();+  return context->runCallback(key,e);+}
+ c-src/Fl_CallbackC.h view
@@ -0,0 +1,71 @@+#ifndef __FL_CALLBACK_C__+#define __FL_CALLBACK_C__++#ifdef __cplusplus+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "DerivedText_Editor.h"+#include <FL/Fl.H>+#include "FL/Fl_Window.H"+#include <FL/Fl_Widget.H>+#include <FL/Fl_Menu_Item.H>+#include <FL/Fl_Menu_.H>+#include <FL/Fl_Text_Buffer.H>+#include <FL/Fl_Text_Editor.H>+#include <FL/Fl_File_Chooser.H>+#include <stdio.h>+/**+  Pass a C callback function to an Fl_Window+*/+class C_to_Fl_Callback {+ private:+  fl_Callback* callback;+  fl_Text_Buffer_Callback* text_buffer_callback;+  fl_Key_Func* c_key_func;+  Fl_Text_Editor::Key_Func* cpp_key_func;+  void* user_data;+  void runCallback(Fl_Widget* w);+  void runCallback();+  int runCallback(int key, DerivedText_Editor* editor);+  void runCallback(Fl_File_Chooser* chooser);+  static void intercept(Fl_Widget* w, void* self) {+    ((C_to_Fl_Callback*)self)->runCallback(w);+  }+  static void intercept(Fl_Text_Buffer* self) {+    ((C_to_Fl_Callback*)self)->runCallback();+  }+  static void intercept(Fl_File_Chooser* c, void* self){+    ((C_to_Fl_Callback*)self)->runCallback(c);+  }+  // implementation needs DerivedText_Editor so it is separated+ public:+  static int intercept(int key, DerivedText_Editor* editor){+    C_to_Fl_Callback* context = editor->get_curr_callback_context();+    if (!context) context = editor->get_default_callback_context();+    return context->runCallback(key,editor);+  };+  static int intercept(int key, fl_Text_Editor editor);+  C_to_Fl_Callback(Fl_Widget* invoker, fl_Callback* callback, void* user_data);+  C_to_Fl_Callback(Fl_Widget* invoker, fl_Callback* callback);+  C_to_Fl_Callback(fl_Callback* callback);+  C_to_Fl_Callback(fl_Callback* callback, void* user_data);+  C_to_Fl_Callback(fl_Text_Buffer_Callback* callback, void* invoker);+  C_to_Fl_Callback(fl_Key_Func* key_func);+  C_to_Fl_Callback(Fl_Text_Editor::Key_Func* stored_key_func);+  C_to_Fl_Callback(Fl_File_Chooser* chooser, void* user_data);+  C_to_Fl_Callback(Fl_File_Chooser* chooser);+  void* get_user_data();+  void set_callback(Fl_Menu_Item* item);+  void set_callback(Fl_Text_Buffer* b);+  void set_user_data(void* user_data);+  void set_callback(Fl_File_Chooser* b);+  int menu_insert(Fl_Menu_Item* item, int index, char* name, int shortcut, int flags = 0);+  int menu_insert(Fl_Menu_* menu_, int index, char* name, int shortcut, int flags = 0);+  int menu_insert(Fl_Menu_* menu_, int index, char* name, char* shortcut, int flags = 0);+  int menu_add(Fl_Menu_Item* item, char* name, int shortcut, int flags = 0);+  int menu_add(Fl_Menu_Item* item, char* name, char* shortcut, int flags = 0);+  int menu_add(Fl_Menu_* menu,char* name, char* shortcut, int flags = 0);+  int menu_add(Fl_Menu_* menu,char* name, int shortcut, int flags = 0);+};+#endif+#endif /* __FL_CALLBACK_C__ */
+ c-src/Fl_Check_ButtonC.cpp view
@@ -0,0 +1,297 @@+#include "Fl_Check_ButtonC.h"++#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Check_Button_handle)(fl_Check_Button self, int event){+    return (static_cast<Fl_Check_Button*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Check_Button_parent)(fl_Check_Button b){+    return (fl_Group) (static_cast<Fl_Check_Button*>(b))->parent();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_parent)(fl_Check_Button b,fl_Group grp){+    (static_cast<Fl_Check_Button*>(b))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Check_Button_type)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->type();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_type)(fl_Check_Button b,uchar t){+    (static_cast<Fl_Check_Button*>(b))->type(t);+  }++  FL_EXPORT_C(int,Fl_Check_Button_x)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->x();+  }+  FL_EXPORT_C(int,Fl_Check_Button_y)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->y();+  }+  FL_EXPORT_C(int,Fl_Check_Button_w)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->w();+  }+  FL_EXPORT_C(int,Fl_Check_Button_h)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->h();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_align)(fl_Check_Button check_button, Fl_Align alignment){+    (static_cast<Fl_Check_Button*>(check_button))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Check_Button_align)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Check_Button_box)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->box();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_box)(fl_Check_Button b,Fl_Boxtype new_box){+    (static_cast<Fl_Check_Button*>(b))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Check_Button_color)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->color();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_color)(fl_Check_Button b,Fl_Color bg){+    (static_cast<Fl_Check_Button*>(b))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_color_with_bg_sel)(fl_Check_Button b,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Check_Button*>(b))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Check_Button_selection_color)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_selection_color)(fl_Check_Button b,Fl_Color a){+    (static_cast<Fl_Check_Button*>(b))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Check_Button_label)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->label();+  }+  FL_EXPORT_C(void,Fl_Check_Button_copy_label)(fl_Check_Button b,const char* new_label){+    (static_cast<Fl_Check_Button*>(b))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_label)(fl_Check_Button b,const char* text){+    (static_cast<Fl_Check_Button*>(b))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Check_Button_labeltype)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_labeltype)(fl_Check_Button b,Fl_Labeltype a){+    (static_cast<Fl_Check_Button*>(b))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_labelcolor)(fl_Check_Button b,Fl_Color c){+    (static_cast<Fl_Check_Button*>(b))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Check_Button_labelcolor)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Check_Button_labelfont)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_labelfont)(fl_Check_Button b,Fl_Font c){+    (static_cast<Fl_Check_Button*>(b))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Check_Button_labelsize)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_labelsize)(fl_Check_Button b,Fl_Fontsize pix){+    (static_cast<Fl_Check_Button*>(b))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Check_Button_image)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->image();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_image)(fl_Check_Button b,fl_Image pix){+    (static_cast<Fl_Check_Button*>(b))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Check_Button_deimage)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->deimage();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_deimage)(fl_Check_Button b,fl_Image pix){+    (static_cast<Fl_Check_Button*>(b))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Check_Button_tooltip)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Check_Button_copy_tooltip)(fl_Check_Button b,const char* text){+    (static_cast<Fl_Check_Button*>(b))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_tooltip)(fl_Check_Button b,const char* text){+    (static_cast<Fl_Check_Button*>(b))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_callback_with_user_data)(fl_Check_Button b,fl_Callback* cb,void* p){+    Fl_Check_Button* castedButton = (static_cast<Fl_Check_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_callback)(fl_Check_Button b,fl_Callback* cb){+    Fl_Check_Button* castedButton = (static_cast<Fl_Check_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Check_Button_user_data)(fl_Check_Button b){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Check_Button*>(b))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Check_Button*>(b))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_user_data)(fl_Check_Button b,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Check_Button*>(b))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Check_Button*>(b))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Check_Button*>(b))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Check_Button_argument)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->argument();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_argument)(fl_Check_Button b,long v){+    (static_cast<Fl_Check_Button*>(b))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Check_Button_when)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->when();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_when)(fl_Check_Button b,uchar i){+    (static_cast<Fl_Check_Button*>(b))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Check_Button_visible)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->visible();+  }+  FL_EXPORT_C(int,Fl_Check_Button_visible_r)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_visible)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->visible();+  }+  FL_EXPORT_C(void,Fl_Check_Button_clear_visible)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Check_Button_active)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->active();+  }+  FL_EXPORT_C(int,Fl_Check_Button_active_r)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->active_r();+  }+  FL_EXPORT_C(void,Fl_Check_Button_activate)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->activate();+  }+  FL_EXPORT_C(void,Fl_Check_Button_deactivate)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Check_Button_output)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_output)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Check_Button_clear_output)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Check_Button_takesevents)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_changed)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->changed();+  }+  FL_EXPORT_C(void,Fl_Check_Button_clear_changed)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Check_Button_take_focus)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_visible_focus)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Check_Button_clear_visible_focus)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Check_Button_modify_visible_focus)(fl_Check_Button b,int v){+    (static_cast<Fl_Check_Button*>(b))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Check_Button_visible_focus)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Check_Button_do_callback)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Check_Button_do_callback_with_widget_and_user_data)(fl_Check_Button b,fl_Widget w,long arg){+    (static_cast<Fl_Check_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Check_Button_do_callback_with_widget_and_default_user_data)(fl_Check_Button b,fl_Widget w){+    (static_cast<Fl_Check_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Check_Button_contains)(fl_Check_Button b,fl_Widget w){+    return (static_cast<Fl_Check_Button*>(b))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Check_Button_inside)(fl_Check_Button b,fl_Widget w){+    return (static_cast<Fl_Check_Button*>(b))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Check_Button_redraw)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->redraw();+  }+  FL_EXPORT_C(void,Fl_Check_Button_redraw_label)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Check_Button_damage)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->damage();+  }+  FL_EXPORT_C(void,Fl_Check_Button_clear_damage_with_bitmask)(fl_Check_Button b,uchar c){+    (static_cast<Fl_Check_Button*>(b))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Check_Button_clear_damage)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Check_Button_damage_with_text)(fl_Check_Button b,uchar c){+    (static_cast<Fl_Check_Button*>(b))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Check_Button_damage_inside_widget)(fl_Check_Button b,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Check_Button*>(b))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Check_Button_draw_label_with_xywh_alignment)(fl_Check_Button b,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Check_Button*>(b))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Check_Button_measure_label)(fl_Check_Button b,int* ww,int* hh){+    (static_cast<Fl_Check_Button*>(b))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Check_Button, Fl_Check_Button_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Check_Button* button = new Fl_Check_Button(x,y,w,h,label);+    return (static_cast<fl_Check_Button>(button));+  }+  FL_EXPORT_C(fl_Check_Button, Fl_Check_Button_New)(int x, int y, int w, int h) {+    Fl_Check_Button* button = new Fl_Check_Button(x,y,w,h,0);+    return (fl_Check_Button)button;+  }+  FL_EXPORT_C(void,Fl_Check_Button_Destroy)(fl_Check_Button button){+    delete (static_cast<Fl_Check_Button*>(button));+  }+  FL_EXPORT_C(int,Fl_Check_Button_set_value)(fl_Check_Button b,int v){+    return (static_cast<Fl_Check_Button*>(b))->value(v);+  }+  FL_EXPORT_C(char,Fl_Check_Button_value)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->value();+  }+  FL_EXPORT_C(int,Fl_Check_Button_clear)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->clear();+  }+  FL_EXPORT_C(void,Fl_Check_Button_setonly)(fl_Check_Button b){+    (static_cast<Fl_Check_Button*>(b))->setonly();+  }+  FL_EXPORT_C(int,Fl_Check_Button_get_shortcut)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_shortcut)(fl_Check_Button b,int s){+    (static_cast<Fl_Check_Button*>(b))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Check_Button_down_box)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->down_box();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_down_box)(fl_Check_Button b,Fl_Boxtype boxtype){+    (static_cast<Fl_Check_Button*>(b))->down_box(boxtype);+  }+  FL_EXPORT_C(Fl_Color,Fl_Check_Button_down_color)(fl_Check_Button b){+    return (static_cast<Fl_Check_Button*>(b))->down_color();+  }+  FL_EXPORT_C(void,Fl_Check_Button_set_down_color)(fl_Check_Button b,Fl_Color c){+    (static_cast<Fl_Check_Button*>(b))->down_color(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Check_ButtonC.h view
@@ -0,0 +1,111 @@+#ifndef __FL_CHECK_BUTTON_C__+#define __FL_CHECK_BUTTON_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Check_Button.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Check_Button_handle)(fl_Check_Button self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Check_Button_parent)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_parent)(fl_Check_Button win, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Check_Button_type)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_type)(fl_Check_Button win, uchar t);++  FL_EXPORT_C(int,          Fl_Check_Button_x)(fl_Check_Button win);+  FL_EXPORT_C(int,          Fl_Check_Button_y)(fl_Check_Button win);+  FL_EXPORT_C(int,          Fl_Check_Button_w)(fl_Check_Button win);+  FL_EXPORT_C(int,          Fl_Check_Button_h)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_align)(fl_Check_Button check_button, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Check_Button_align)(fl_Check_Button win);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Check_Button_box)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_box)(fl_Check_Button win, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Check_Button_color)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_color)(fl_Check_Button win, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Check_Button_set_color_with_bg_sel)(fl_Check_Button win,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Check_Button_selection_color)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_selection_color)(fl_Check_Button win, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Check_Button_label)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_copy_label)(fl_Check_Button win, const char* new_label);+  FL_EXPORT_C(void,         Fl_Check_Button_set_label)(fl_Check_Button win, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Check_Button_labeltype)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_labeltype)(fl_Check_Button win, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Check_Button_labelcolor)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_labelcolor)(fl_Check_Button win, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Check_Button_labelfont)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_labelfont)(fl_Check_Button win, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Check_Button_labelsize)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_labelsize)(fl_Check_Button win, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Check_Button_image)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_image)(fl_Check_Button win, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Check_Button_deimage)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_deimage)(fl_Check_Button win, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Check_Button_tooltip)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_copy_tooltip)(fl_Check_Button win, const char* text);+  FL_EXPORT_C(void,         Fl_Check_Button_set_tooltip)(fl_Check_Button win, const char* text);+  FL_EXPORT_C(void,         Fl_Check_Button_set_callback_with_user_data)(fl_Check_Button win, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Check_Button_set_callback)(fl_Check_Button win, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Check_Button_user_data)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_user_data)(fl_Check_Button win, void* v);+  FL_EXPORT_C(long,         Fl_Check_Button_argument)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_argument)(fl_Check_Button win, long v);+  FL_EXPORT_C(Fl_When,      Fl_Check_Button_when)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_when)(fl_Check_Button win, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Check_Button_visible)(fl_Check_Button win);+  FL_EXPORT_C(int,          Fl_Check_Button_visible_r)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_visible)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_clear_visible)(fl_Check_Button win);+  FL_EXPORT_C(unsigned int, Fl_Check_Button_active)(fl_Check_Button win);+  FL_EXPORT_C(int,          Fl_Check_Button_active_r)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_activate)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_deactivate)(fl_Check_Button win);+  FL_EXPORT_C(unsigned int, Fl_Check_Button_output)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_output)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_clear_output)(fl_Check_Button win);+  FL_EXPORT_C(unsigned int, Fl_Check_Button_takesevents)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_changed)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_clear_changed)(fl_Check_Button win);+  FL_EXPORT_C(int,          Fl_Check_Button_take_focus)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_set_visible_focus)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_clear_visible_focus)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_modify_visible_focus)(fl_Check_Button win, int v);+  FL_EXPORT_C(unsigned int, Fl_Check_Button_visible_focus)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_do_callback)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_do_callback_with_widget_and_user_data)(fl_Check_Button win, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Check_Button_do_callback_with_widget_and_default_user_data)(fl_Check_Button win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Check_Button_contains)(fl_Check_Button win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Check_Button_inside)(fl_Check_Button win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Check_Button_redraw)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_redraw_label)(fl_Check_Button win);+  FL_EXPORT_C(uchar,        Fl_Check_Button_damage)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_clear_damage_with_bitmask)(fl_Check_Button win, uchar c);+  FL_EXPORT_C(void,         Fl_Check_Button_clear_damage)(fl_Check_Button win);+  FL_EXPORT_C(void,         Fl_Check_Button_damage_with_text)(fl_Check_Button win, uchar c);+  FL_EXPORT_C(void,         Fl_Check_Button_damage_inside_widget)(fl_Check_Button win, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Check_Button_draw_label_with_xywh_alignment)(fl_Check_Button win, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Check_Button_measure_label)(fl_Check_Button win, int* ww , int* hh);++  /* Fl_Check_Button specific functions */+  FL_EXPORT_C(fl_Check_Button, Fl_Check_Button_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Check_Button, Fl_Check_Button_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,            Fl_Check_Button_Destroy)(fl_Check_Button button);+  +  FL_EXPORT_C(char        , Fl_Check_Button_value)(fl_Check_Button b);+  FL_EXPORT_C(int         , Fl_Check_Button_set_value)(fl_Check_Button b, int v);+  FL_EXPORT_C(int         , Fl_Check_Button_set)(fl_Check_Button b);+  FL_EXPORT_C(int         , Fl_Check_Button_clear)(fl_Check_Button b);+  FL_EXPORT_C(void        , Fl_Check_Button_setonly)(fl_Check_Button b);+  FL_EXPORT_C(int         , Fl_Check_Button_get_shortcut )(fl_Check_Button b);+  FL_EXPORT_C(void        , Fl_Check_Button_set_shortcut )(fl_Check_Button b, int s);+  FL_EXPORT_C(Fl_Boxtype  , Fl_Check_Button_down_box)(fl_Check_Button b);+  FL_EXPORT_C(void        , Fl_Check_Button_set_down_box)(fl_Check_Button b,Fl_Boxtype boxtype);+  FL_EXPORT_C(Fl_Color    , Fl_Check_Button_down_color )(fl_Check_Button b);+  FL_EXPORT_C(void        , Fl_Check_Button_set_down_color)(fl_Check_Button b, Fl_Color c);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_BUTTON_C__*/
+ c-src/Fl_ChoiceC.cpp view
@@ -0,0 +1,444 @@+#include "Fl_ChoiceC.h"+#include "Utils.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Choice_handle )(fl_Choice choice, int event){+    return (static_cast<Fl_Choice*>(choice))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Choice_resize_super )(fl_Choice choice,int x, int y, int w, int h){+    (static_cast<Fl_Choice*>(choice))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Choice_resize )(fl_Choice choice,int x, int y, int w, int h){+    (static_cast<Fl_Choice*>(choice))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Choice_show_super)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->show();+  }+  FL_EXPORT_C(void,Fl_Choice_show )(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->show();+  }+  FL_EXPORT_C(void,Fl_Choice_hide_super)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->hide();+  }+  FL_EXPORT_C(void,Fl_Choice_hide )(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Choice_as_window_super)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->as_window();+  }+  FL_EXPORT_C(fl_Window,Fl_Choice_as_window )(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->as_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Choice_as_gl_window_super)(fl_Choice choice){+    return (fl_Gl_Window) (static_cast<Fl_Choice*>(choice))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Choice_as_gl_window )(fl_Choice choice){+    return (fl_Gl_Window) (static_cast<Fl_Choice*>(choice))->as_gl_window();+  };+  FL_EXPORT_C(fl_Group,Fl_Choice_parent)(fl_Choice choice){+    return (fl_Group) (static_cast<Fl_Choice*>(choice))->parent();+  }+  FL_EXPORT_C(void,Fl_Choice_set_parent)(fl_Choice choice,fl_Group grp){+    (static_cast<Fl_Choice*>(choice))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Choice_type)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->type();+  }+  FL_EXPORT_C(void,Fl_Choice_set_type)(fl_Choice choice,uchar t){+    (static_cast<Fl_Choice*>(choice))->type(t);+  }++  FL_EXPORT_C(int,Fl_Choice_x)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->x();+  }+  FL_EXPORT_C(int,Fl_Choice_y)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->y();+  }+  FL_EXPORT_C(int,Fl_Choice_w)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->w();+  }+  FL_EXPORT_C(int,Fl_Choice_h)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->h();+  }+  FL_EXPORT_C(void,Fl_Choice_set_align)(fl_Choice choice, Fl_Align alignment){+    (static_cast<Fl_Choice*>(choice))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Choice_align)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Choice_box)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->box();+  }+  FL_EXPORT_C(void,Fl_Choice_set_box)(fl_Choice choice,Fl_Boxtype new_box){+    (static_cast<Fl_Choice*>(choice))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Choice_color)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->color();+  }+  FL_EXPORT_C(void,Fl_Choice_set_color)(fl_Choice choice,Fl_Color bg){+    (static_cast<Fl_Choice*>(choice))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Choice_set_color_with_bg_sel)(fl_Choice choice,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Choice*>(choice))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Choice_selection_color)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Choice_set_selection_color)(fl_Choice choice,Fl_Color a){+    (static_cast<Fl_Choice*>(choice))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Choice_label)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->label();+  }+  FL_EXPORT_C(void,Fl_Choice_copy_label)(fl_Choice choice,const char* new_label){+    (static_cast<Fl_Choice*>(choice))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Choice_set_label)(fl_Choice choice,const char* text){+    (static_cast<Fl_Choice*>(choice))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Choice_labeltype)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Choice_set_labeltype)(fl_Choice choice,Fl_Labeltype a){+    (static_cast<Fl_Choice*>(choice))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Choice_set_labelcolor)(fl_Choice choice,Fl_Color c){+    (static_cast<Fl_Choice*>(choice))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Choice_labelcolor)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Choice_labelfont)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Choice_set_labelfont)(fl_Choice choice,Fl_Font c){+    (static_cast<Fl_Choice*>(choice))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Choice_labelsize)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Choice_set_labelsize)(fl_Choice choice,Fl_Fontsize pix){+    (static_cast<Fl_Choice*>(choice))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Choice_image)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->image();+  }+  FL_EXPORT_C(void,Fl_Choice_set_image)(fl_Choice choice,fl_Image pix){+    (static_cast<Fl_Choice*>(choice))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Choice_deimage)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->deimage();+  }+  FL_EXPORT_C(void,Fl_Choice_set_deimage)(fl_Choice choice,fl_Image pix){+    (static_cast<Fl_Choice*>(choice))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Choice_tooltip)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Choice_copy_tooltip)(fl_Choice choice,const char* text){+    (static_cast<Fl_Choice*>(choice))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Choice_set_tooltip)(fl_Choice choice,const char* text){+    (static_cast<Fl_Choice*>(choice))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Choice_set_callback_with_user_data)(fl_Choice choice,fl_Callback cb,void* p){+    Fl_Choice* castedMenu_ = (static_cast<Fl_Choice*>(choice));+    new C_to_Fl_Callback(castedMenu_, cb, p);+  }+  FL_EXPORT_C(void,Fl_Choice_set_callback)(fl_Choice choice,fl_Callback cb){+    Fl_Choice* castedMenu_ = (static_cast<Fl_Choice*>(choice));+    new C_to_Fl_Callback(castedMenu_, cb);+  }+  FL_EXPORT_C(void*,Fl_Choice_user_data)(fl_Choice choice){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Choice*>(choice))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Choice*>(choice))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Choice_set_user_data)(fl_Choice choice,void* v){+    (static_cast<Fl_Choice*>(choice))->user_data(v);+  }+  FL_EXPORT_C(long,Fl_Choice_argument)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->argument();+  }+  FL_EXPORT_C(void,Fl_Choice_set_argument)(fl_Choice choice,long v){+    (static_cast<Fl_Choice*>(choice))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Choice_when)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->when();+  }+  FL_EXPORT_C(void,Fl_Choice_set_when)(fl_Choice choice,uchar i){+    (static_cast<Fl_Choice*>(choice))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Choice_visible)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->visible();+  }+  FL_EXPORT_C(int,Fl_Choice_visible_r)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Choice_set_visible)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->visible();+  }+  FL_EXPORT_C(void,Fl_Choice_clear_visible)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Choice_active)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->active();+  }+  FL_EXPORT_C(int,Fl_Choice_active_r)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->active_r();+  }+  FL_EXPORT_C(void,Fl_Choice_activate)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->activate();+  }+  FL_EXPORT_C(void,Fl_Choice_deactivate)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Choice_output)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->output();+  }+  FL_EXPORT_C(void,Fl_Choice_set_output)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->output();+  }+  FL_EXPORT_C(void,Fl_Choice_clear_output)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Choice_takesevents)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Choice_set_changed)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->changed();+  }+  FL_EXPORT_C(void,Fl_Choice_clear_changed)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Choice_take_focus)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Choice_set_visible_focus)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Choice_clear_visible_focus)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Choice_modify_visible_focus)(fl_Choice choice,int v){+    (static_cast<Fl_Choice*>(choice))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Choice_visible_focus)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Choice_do_callback)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Choice_do_callback_with_widget_and_user_data)(fl_Choice choice,fl_Widget w,long arg){+    (static_cast<Fl_Choice*>(choice))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Choice_do_callback_with_widget_and_default_user_data)(fl_Choice choice,fl_Widget w){+    (static_cast<Fl_Choice*>(choice))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Choice_contains)(fl_Choice choice,fl_Widget w){+    return (static_cast<Fl_Choice*>(choice))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Choice_inside)(fl_Choice choice,fl_Widget w){+    return (static_cast<Fl_Choice*>(choice))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Choice_redraw)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->redraw();+  }+  FL_EXPORT_C(void,Fl_Choice_redraw_label)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Choice_damage)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->damage();+  }+  FL_EXPORT_C(void,Fl_Choice_clear_damage_with_bitmask)(fl_Choice choice,uchar c){+    (static_cast<Fl_Choice*>(choice))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Choice_clear_damage)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Choice_damage_with_text)(fl_Choice choice,uchar c){+    (static_cast<Fl_Choice*>(choice))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Choice_damage_inside_widget)(fl_Choice choice,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Choice*>(choice))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Choice_draw_label_with_xywh_alignment)(fl_Choice choice,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Choice*>(choice))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Choice_measure_label)(fl_Choice choice,int* ww,int* hh){+    (static_cast<Fl_Choice*>(choice))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Choice, Fl_Choice_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Choice* choice = new Fl_Choice(x,y,w,h,label);+    return (static_cast<fl_Choice>(choice));+  }+  FL_EXPORT_C(fl_Choice, Fl_Choice_New)(int x, int y, int w, int h) {+    Fl_Choice* choice = new Fl_Choice(x,y,w,h);+    return (static_cast<fl_Choice>(choice));+  }+  FL_EXPORT_C(void, Fl_Choice_Destroy)(fl_Choice choice) {+    delete (static_cast<Fl_Choice*>(choice));+  }+  FL_EXPORT_C(int,Fl_Choice_item_pathname_with_finditem)(fl_Choice choice,char* name,int namelen,fl_Menu_Item finditem){+    return (static_cast<Fl_Choice*>(choice))->item_pathname(name,namelen,(static_cast<Fl_Menu_Item*>(finditem)));+  }+  FL_EXPORT_C(int,Fl_Choice_item_pathname)(fl_Choice choice,char* name,int namelen){+    return (static_cast<Fl_Choice*>(choice))->item_pathname(name,namelen);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Choice_picked)(fl_Choice choice,fl_Menu_Item item){+    return (fl_Menu_Item)(static_cast<Fl_Choice*>(choice))->picked((static_cast<Fl_Menu_Item*>(item)));+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Choice_find_item_with_name)(fl_Choice choice,char* name){+    return (fl_Menu_Item)(static_cast<Fl_Choice*>(choice))->find_item(name);+  }+  FL_EXPORT_C(int,Fl_Choice_find_index_with_name)(fl_Choice choice,char* name){+    return (static_cast<Fl_Choice*>(choice))->find_index(name);+  }+  FL_EXPORT_C(int,Fl_Choice_find_index_with_item)(fl_Choice choice,fl_Menu_Item item){+    return (static_cast<Fl_Choice*>(choice))->find_index((static_cast<Fl_Menu_Item*>(item)));+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Choice_test_shortcut)(fl_Choice choice){+    return (fl_Menu_Item)(static_cast<Fl_Choice*>(choice))->test_shortcut();+  }+  FL_EXPORT_C(void,Fl_Choice_global)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->global();+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Choice_menu)(fl_Choice choice){+    return (fl_Menu_Item)(static_cast<Fl_Choice*>(choice))->menu();+  }+  FL_EXPORT_C(void,Fl_Choice_menu_with_m)(fl_Choice choice,fl_Menu_Item* item, int size){+    Fl_Menu_Item* converted = convert(item,size);+    return (static_cast<Fl_Choice*>(choice))->menu(converted);+  }+  FL_EXPORT_C(void,Fl_Choice_copy)(fl_Choice choice,fl_Menu_Item m){+    return (static_cast<Fl_Choice*>(choice))->copy((static_cast<Fl_Menu_Item*>(m)));+  }+  FL_EXPORT_C(void,Fl_Choice_copy_with_user_data)(fl_Choice choice,fl_Menu_Item m,void* user_data){+    return (static_cast<Fl_Choice*>(choice))->copy((static_cast<Fl_Menu_Item*>(m)),user_data);+  }+  FL_EXPORT_C(int,Fl_Choice_insert)(fl_Choice choice,int index,char* name,int shortcut,fl_Callback* cb){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_insert((static_cast<Fl_Choice*>(choice)),index,name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Choice_insert_with_flags)(fl_Choice choice,int index,char* name,int shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_insert((static_cast<Fl_Choice*>(choice)),index,name,shortcut, flags);+  }+  FL_EXPORT_C(int,Fl_Choice_insert_with_user_data_flags)(fl_Choice choice,int index,char* name,int shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_insert((static_cast<Fl_Choice*>(choice)),index,name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Choice_add_with_user_data)(fl_Choice choice,char* name,int shortcut,fl_Callback* cb,void* user_data){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Choice*>(choice)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Choice_add_with_flags)(fl_Choice choice,char* name,int shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Choice*>(choice)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Choice_add_with_user_data_flags)(fl_Choice choice,char* name,int shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Choice*>(choice)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Choice_add_with_shortcutname)(fl_Choice choice,char* name,char* shortcut,fl_Callback* cb){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Choice*>(choice)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Choice_add_with_shortcutname_user_data)(fl_Choice choice,char* name,char* shortcut,fl_Callback* cb,void* user_data){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Choice*>(choice)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Choice_add_with_shortcutname_flags)(fl_Choice choice,char* name,char* shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Choice*>(choice)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Choice_add_with_shortcutname_user_data_flags)(fl_Choice choice,char* name,char* shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Choice*>(choice)),name,shortcut,flags);+  }+  FL_EXPORT_C(int, Fl_Choice_add_with_name)(fl_Choice choice,  char* name){+    return (static_cast<Fl_Choice*>(choice))->add(name);+  }+  FL_EXPORT_C(int,Fl_Choice_size)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->size();+  }+  FL_EXPORT_C(void,Fl_Choice_set_size)(fl_Choice choice,int W,int H){+    (static_cast<Fl_Choice*>(choice))->size(W,H);+  }+  FL_EXPORT_C(void,Fl_Choice_clear)(fl_Choice choice){+    (static_cast<Fl_Choice*>(choice))->clear();+  }+  FL_EXPORT_C(int,Fl_Choice_clear_submenu)(fl_Choice choice,int index){+    return (static_cast<Fl_Choice*>(choice))->clear_submenu(index);+  }+  FL_EXPORT_C(void,Fl_Choice_replace)(fl_Choice choice,int i,char* name){+    (static_cast<Fl_Choice*>(choice))->replace(i,name);+  }+  FL_EXPORT_C(void,Fl_Choice_remove)(fl_Choice choice,int i ){+    (static_cast<Fl_Choice*>(choice))->remove(i);+  }+  FL_EXPORT_C(void,Fl_Choice_shortcut)(fl_Choice choice,int i,int s){+    (static_cast<Fl_Choice*>(choice))->shortcut(i,s);+  }+  FL_EXPORT_C(void,Fl_Choice_set_mode)(fl_Choice choice,int i,int fl){+    (static_cast<Fl_Choice*>(choice))->mode(i,fl);+  }+  FL_EXPORT_C(int,Fl_Choice_mode)(fl_Choice choice,int i){+    return (static_cast<Fl_Choice*>(choice))->mode(i);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Choice_mvalue)(fl_Choice choice){+    return (fl_Menu_Item)(static_cast<Fl_Choice*>(choice))->mvalue();+  }+  FL_EXPORT_C(int,Fl_Choice_value)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->value();+  }+  FL_EXPORT_C(int,Fl_Choice_set_value_with_item)(fl_Choice choice,fl_Menu_Item item){+    return (static_cast<Fl_Choice*>(choice))->value(static_cast<Fl_Menu_Item*>(item));+  }+  FL_EXPORT_C(int,Fl_Choice_set_value_with_index)(fl_Choice choice,int index){+    return (static_cast<Fl_Choice*>(choice))->value(index);+  }+  FL_EXPORT_C(char*,Fl_Choice_text)(fl_Choice choice){+    return (char*)(static_cast<Fl_Choice*>(choice))->text();+  }+  FL_EXPORT_C(char*,Fl_Choice_text_with_index)(fl_Choice choice,int i){+    return (char*)(static_cast<Fl_Choice*>(choice))->text(i);+  }+  FL_EXPORT_C(Fl_Font,Fl_Choice_textfont)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->textfont();+  }+  FL_EXPORT_C(void,Fl_Choice_set_textfont)(fl_Choice choice,Fl_Font c){+    (static_cast<Fl_Choice*>(choice))->textfont(c);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Choice_textsize)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->textsize();+  }+  FL_EXPORT_C(void,Fl_Choice_set_textsize)(fl_Choice choice,Fl_Fontsize c){+    (static_cast<Fl_Choice*>(choice))->textsize(c);+  }+  FL_EXPORT_C(Fl_Color,Fl_Choice_textcolor)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Choice_set_textcolor)(fl_Choice choice,Fl_Color c){+    (static_cast<Fl_Choice*>(choice))->textcolor(c);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Choice_down_box)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->down_box();+  }+  FL_EXPORT_C(void,Fl_Choice_set_down_box)(fl_Choice choice,Fl_Boxtype b){+    (static_cast<Fl_Choice*>(choice))->down_box(b);+  }+  FL_EXPORT_C(Fl_Color,Fl_Choice_down_color)(fl_Choice choice){+    return (static_cast<Fl_Choice*>(choice))->down_color();+  }+  FL_EXPORT_C(void,Fl_Choice_set_down_color)(fl_Choice choice,unsigned c){+    (static_cast<Fl_Choice*>(choice))->down_color(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_ChoiceC.h view
@@ -0,0 +1,172 @@+#ifndef __FL_CHOICE_C__+#define __FL_CHOICE_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Choice.H"+#include "Fl_CallbackC.h"+#include "Fl_Menu_C.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,          Fl_Choice_handle)(fl_Group self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Choice_parent)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_parent)(fl_Choice choice, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Choice_type)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_type)(fl_Choice choice, uchar t);++  FL_EXPORT_C(int,          Fl_Choice_x)(fl_Choice choice);+  FL_EXPORT_C(int,          Fl_Choice_y)(fl_Choice choice);+  FL_EXPORT_C(int,          Fl_Choice_w)(fl_Choice choice);+  FL_EXPORT_C(int,          Fl_Choice_h)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_align)(fl_Choice choice, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Choice_align)(fl_Choice choice);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Choice_box)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_box)(fl_Choice choice, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Choice_color)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_color)(fl_Choice choice, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Choice_set_color_with_bg_sel)(fl_Choice choice,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Choice_selection_color)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_selection_color)(fl_Choice choice, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Choice_label)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_copy_label)(fl_Choice choice, const char* new_label);+  FL_EXPORT_C(void,         Fl_Choice_set_label)(fl_Choice choice, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Choice_labeltype)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_labeltype)(fl_Choice choice, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Choice_labelcolor)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_labelcolor)(fl_Choice choice, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Choice_item_labelfont)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_item_labelfont)(fl_Choice choice, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Choice_item_labelsize)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_item_labelsize)(fl_Choice choice, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Choice_image)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_image)(fl_Choice choice, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Choice_deimage)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_deimage)(fl_Choice choice, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Choice_tooltip)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_copy_tooltip)(fl_Choice choice, const char* text);+  FL_EXPORT_C(void,         Fl_Choice_set_tooltip)(fl_Choice choice, const char* text);+  FL_EXPORT_C(void,         Fl_Choice_set_callback_with_user_data)(fl_Choice choice, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Choice_set_callback)(fl_Choice choice, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Choice_other_data)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_other_data)(fl_Choice choice, void* v);+  FL_EXPORT_C(void*,        Fl_Choice_user_data)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_user_data)(fl_Choice choice, void* v);+  FL_EXPORT_C(long,         Fl_Choice_argument)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_argument)(fl_Choice choice, long v);+  FL_EXPORT_C(Fl_When,      Fl_Choice_when)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_when)(fl_Choice choice, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Choice_visible)(fl_Choice choice);+  FL_EXPORT_C(int,          Fl_Choice_visible_r)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_show_super)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_show)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_hide_super)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_hide)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_visible)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_clear_visible)(fl_Choice choice);+  FL_EXPORT_C(unsigned int, Fl_Choice_active)(fl_Choice choice);+  FL_EXPORT_C(int,          Fl_Choice_active_r)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_activate)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_deactivate)(fl_Choice choice);+  FL_EXPORT_C(unsigned int, Fl_Choice_output)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_output)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_clear_output)(fl_Choice choice);+  FL_EXPORT_C(unsigned int, Fl_Choice_takesevents)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_changed)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_clear_changed)(fl_Choice choice);+  FL_EXPORT_C(int,          Fl_Choice_take_focus)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_set_visible_focus)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_clear_visible_focus)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_modify_visible_focus)(fl_Choice choice, int v);+  FL_EXPORT_C(unsigned int, Fl_Choice_visible_focus)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_do_callback)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_do_callback_with_widget_and_user_data)(fl_Choice choice, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Choice_do_callback_with_widget_and_default_user_data)(fl_Choice choice, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Choice_contains)(fl_Choice choice, fl_Group w);+  FL_EXPORT_C(int,          Fl_Choice_inside)(fl_Choice choice, fl_Group w);+  FL_EXPORT_C(void,         Fl_Choice_redraw)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_redraw_label)(fl_Choice choice);+  FL_EXPORT_C(uchar,        Fl_Choice_damage)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_clear_damage_with_bitmask)(fl_Choice choice, uchar c);+  FL_EXPORT_C(void,         Fl_Choice_clear_damage)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_damage_with_text)(fl_Choice choice, uchar c);+  FL_EXPORT_C(void,         Fl_Choice_damage_inside_group)(fl_Choice choice, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Choice_draw_label_with_xywh_alignment)(fl_Choice choice, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Choice_measure_label)(fl_Choice choice, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Choice_window)(fl_Choice choice);+  FL_EXPORT_C(fl_Window,    Fl_Choice_top_window)(fl_Choice choice);+  FL_EXPORT_C(fl_Window ,   Fl_Choice_top_window_offset)(fl_Choice choice, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Choice_as_group_super)(fl_Choice choice);+  FL_EXPORT_C(fl_Group,     Fl_Choice_as_group)(fl_Choice choice);+  FL_EXPORT_C(fl_Gl_Window, Fl_Choice_as_gl_window_super)(fl_Choice choice);+  FL_EXPORT_C(fl_Gl_Window, Fl_Choice_as_gl_window)(fl_Choice choice);+  FL_EXPORT_C(void,         Fl_Choice_resize_super)(fl_Choice choice,int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Choice_resize)(fl_Choice choice,int X, int Y, int W, int H);++  /* Fl_Choice specific */ +  FL_EXPORT_C(fl_Choice,    Fl_Choice_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Choice   , Fl_Choice_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void, Fl_Choice_Destroy)(fl_Choice choice);++  FL_EXPORT_C(int, Fl_Choice_item_pathname_with_finditem)(fl_Choice choice, char* name, int namelen,  fl_Menu_Item finditem);+  FL_EXPORT_C(int, Fl_Choice_item_pathname)(fl_Choice choice, char* name, int namelen);+  FL_EXPORT_C( fl_Menu_Item, Fl_Choice_picked)(fl_Choice choice,  const fl_Menu_Item item);+  FL_EXPORT_C( fl_Menu_Item, Fl_Choice_find_item_with_name)(fl_Choice choice,  char* name);+  //  FL_EXPORT_C( fl_Menu_Item, Fl_Choice_find_item_with_cb)(fl_Choice choice, fl_Callback cb); Don't know how to do this+  FL_EXPORT_C(int, Fl_Choice_find_index_with_name)(fl_Choice choice,  char* name);+  FL_EXPORT_C(int, Fl_Choice_find_index_with_item)(fl_Choice choice,  fl_Menu_Item item);+  //  FL_EXPORT_C(int, Fl_Choice_find_index_with_cb)(fl_Choice choice, fl_Callback cb); Don't know how to do this+  FL_EXPORT_C( fl_Menu_Item, Fl_Choice_test_shortcut)(fl_Choice choice);+  FL_EXPORT_C(void, Fl_Choice_global)(fl_Choice choice);+  FL_EXPORT_C( fl_Menu_Item, Fl_Choice_menu)(fl_Choice choice);+  FL_EXPORT_C(void, Fl_Choice_menu_with_m)(fl_Choice choice,  fl_Menu_Item* item, int size);+  FL_EXPORT_C(void, Fl_Choice_copy)(fl_Choice choice,  fl_Menu_Item m);+  FL_EXPORT_C(void, Fl_Choice_copy_with_user_data)(fl_Choice choice,  fl_Menu_Item m, void* user_data);+  FL_EXPORT_C(int, Fl_Choice_insert)(fl_Choice choice, int index,  char* name, int shortcut, fl_Callback cb);+  FL_EXPORT_C(int, Fl_Choice_insert_with_user_data)(fl_Choice choice, int index,  char*, int shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Choice_insert_with_flags)(fl_Choice choice, int index,  char* name, int shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Choice_insert_with_user_data_flags)(fl_Choice choice, int index,  char* name, int shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Choice_insert_with_shortcutname)(fl_Choice choice, int index,  char* name, char* shortcut);+  FL_EXPORT_C(int, Fl_Choice_insert_with_shortcutname_user_data)(fl_Choice choice, int index,  char* name,   char* shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Choice_insert_with_shortcutname_flags)(fl_Choice choice, int index,  char* name,   char* shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Choice_insert_with_shortcutname_user_data_flags)(fl_Choice choice, int index,  char* name,   char* shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Choice_add)(fl_Choice choice, char* name, int shortcut, fl_Callback);+  FL_EXPORT_C(int, Fl_Choice_add_with_user_data)(fl_Choice choice, char* name, int shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Choice_add_with_flags)(fl_Choice choice, char* name, int shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Choice_add_with_user_data_flags)(fl_Choice choice, char* name, int shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Choice_add_with_shortcutname)(fl_Choice choice, char* name,   char* shortcut, fl_Callback* cb);+  FL_EXPORT_C(int, Fl_Choice_add_with_shortcutname_user_data)(fl_Choice choice, char* name,   char* shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Choice_add_with_shortcutname_flags)(fl_Choice choice, char* name,   char* shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Choice_add_with_shortcutname_user_data_flags)(fl_Choice choice, char* name,  char* shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Choice_add_with_name)(fl_Choice choice,  char* name);+  FL_EXPORT_C(int , Fl_Choice_size)(fl_Choice choice);+  FL_EXPORT_C(void, Fl_Choice_set_size)(fl_Choice choice, int W, int H); +  FL_EXPORT_C(void, Fl_Choice_clear)(fl_Choice choice);+  FL_EXPORT_C(int, Fl_Choice_clear_submenu)(fl_Choice choice, int index);+  FL_EXPORT_C(void, Fl_Choice_replace)(fl_Choice choice, int, char* name);+  FL_EXPORT_C(void, Fl_Choice_remove)(fl_Choice choice, int);+  FL_EXPORT_C(void, Fl_Choice_shortcut)(fl_Choice choice, int i, int s); +  FL_EXPORT_C(void, Fl_Choice_set_mode)(fl_Choice choice, int i,int fl); +  FL_EXPORT_C(int , Fl_Choice_mode)(fl_Choice choice, int i);  +  FL_EXPORT_C(fl_Menu_Item, Fl_Choice_mvalue)(fl_Choice choice);+  FL_EXPORT_C(int, Fl_Choice_value)(fl_Choice choice);+  FL_EXPORT_C(int, Fl_Choice_set_value_with_item)(fl_Choice choice,  fl_Menu_Item item);+  FL_EXPORT_C(int, Fl_Choice_set_value_with_index)(fl_Choice choice, int index); +  FL_EXPORT_C(char*, Fl_Choice_text)(fl_Choice choice);+  FL_EXPORT_C(char*, Fl_Choice_text_with_index)(fl_Choice choice, int i);+  FL_EXPORT_C(Fl_Font, Fl_Choice_textfont)(fl_Choice choice);+  FL_EXPORT_C(void, Fl_Choice_set_textfont)(fl_Choice choice, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize, Fl_Choice_textsize)(fl_Choice choice);+  FL_EXPORT_C(void, Fl_Choice_set_textsize)(fl_Choice choice, Fl_Fontsize c);+  FL_EXPORT_C(Fl_Color, Fl_Choice_textcolor)(fl_Choice choice);+  FL_EXPORT_C(void, Fl_Choice_set_textcolor)(fl_Choice choice, Fl_Color c);+  FL_EXPORT_C(Fl_Boxtype, Fl_Choice_down_box)(fl_Choice choice);+  FL_EXPORT_C(void, Fl_Choice_set_down_box)(fl_Choice choice, Fl_Boxtype b);+  FL_EXPORT_C(Fl_Color, Fl_Choice_down_color)(fl_Choice choice);+  FL_EXPORT_C(void, Fl_Choice_set_down_color)(fl_Choice choice, unsigned c);+#ifdef __cplusplus+}+#endif+#endif /* __FL_CHOICE_C__ */
+ c-src/Fl_ClockC.cpp view
@@ -0,0 +1,304 @@+#include "Fl_ClockC.h"++#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Clock_handle)(fl_Clock self, int event){+    return (static_cast<Fl_Clock*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Clock_parent)(fl_Clock b){+    return (fl_Group) (static_cast<Fl_Clock*>(b))->parent();+  }+  FL_EXPORT_C(void,Fl_Clock_set_parent)(fl_Clock b,fl_Group grp){+    (static_cast<Fl_Clock*>(b))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Clock_type)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->type();+  }+  FL_EXPORT_C(void,Fl_Clock_set_type)(fl_Clock b,uchar t){+    (static_cast<Fl_Clock*>(b))->type(t);+  }++  FL_EXPORT_C(int,Fl_Clock_x)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->x();+  }+  FL_EXPORT_C(int,Fl_Clock_y)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->y();+  }+  FL_EXPORT_C(int,Fl_Clock_w)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->w();+  }+  FL_EXPORT_C(int,Fl_Clock_h)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->h();+  }+  FL_EXPORT_C(void,Fl_Clock_set_align)(fl_Clock clock, Fl_Align alignment){+    (static_cast<Fl_Clock*>(clock))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Clock_align)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Clock_box)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->box();+  }+  FL_EXPORT_C(void,Fl_Clock_set_box)(fl_Clock b,Fl_Boxtype new_box){+    (static_cast<Fl_Clock*>(b))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Clock_color)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->color();+  }+  FL_EXPORT_C(void,Fl_Clock_set_color)(fl_Clock b,Fl_Color bg){+    (static_cast<Fl_Clock*>(b))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Clock_set_color_with_bg_sel)(fl_Clock b,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Clock*>(b))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Clock_selection_color)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Clock_set_selection_color)(fl_Clock b,Fl_Color a){+    (static_cast<Fl_Clock*>(b))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Clock_label)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->label();+  }+  FL_EXPORT_C(void,Fl_Clock_copy_label)(fl_Clock b,const char* new_label){+    (static_cast<Fl_Clock*>(b))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Clock_set_label)(fl_Clock b,const char* text){+    (static_cast<Fl_Clock*>(b))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Clock_labeltype)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Clock_set_labeltype)(fl_Clock b,Fl_Labeltype a){+    (static_cast<Fl_Clock*>(b))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Clock_set_labelcolor)(fl_Clock b,Fl_Color c){+    (static_cast<Fl_Clock*>(b))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Clock_labelcolor)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Clock_labelfont)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Clock_set_labelfont)(fl_Clock b,Fl_Font c){+    (static_cast<Fl_Clock*>(b))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Clock_labelsize)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Clock_set_labelsize)(fl_Clock b,Fl_Fontsize pix){+    (static_cast<Fl_Clock*>(b))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Clock_image)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->image();+  }+  FL_EXPORT_C(void,Fl_Clock_set_image)(fl_Clock b,fl_Image pix){+    (static_cast<Fl_Clock*>(b))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Clock_deimage)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->deimage();+  }+  FL_EXPORT_C(void,Fl_Clock_set_deimage)(fl_Clock b,fl_Image pix){+    (static_cast<Fl_Clock*>(b))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Clock_tooltip)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Clock_copy_tooltip)(fl_Clock b,const char* text){+    (static_cast<Fl_Clock*>(b))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Clock_set_tooltip)(fl_Clock b,const char* text){+    (static_cast<Fl_Clock*>(b))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Clock_set_callback_with_user_data)(fl_Clock b,fl_Callback* cb,void* p){+    Fl_Clock* castedClock = (static_cast<Fl_Clock*>(b));+    new C_to_Fl_Callback(castedClock, cb, p);+  }+  FL_EXPORT_C(void,Fl_Clock_set_callback)(fl_Clock b,fl_Callback* cb){+    Fl_Clock* castedClock = (static_cast<Fl_Clock*>(b));+    new C_to_Fl_Callback(castedClock, cb);+  }+  FL_EXPORT_C(void*,Fl_Clock_user_data)(fl_Clock b){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Clock*>(b))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Clock*>(b))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Clock_set_user_data)(fl_Clock b,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Clock*>(b))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Clock*>(b))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Clock*>(b))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Clock_argument)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->argument();+  }+  FL_EXPORT_C(void,Fl_Clock_set_argument)(fl_Clock b,long v){+    (static_cast<Fl_Clock*>(b))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Clock_when)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->when();+  }+  FL_EXPORT_C(void,Fl_Clock_set_when)(fl_Clock b,uchar i){+    (static_cast<Fl_Clock*>(b))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Clock_visible)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->visible();+  }+  FL_EXPORT_C(int,Fl_Clock_visible_r)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Clock_set_visible)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->visible();+  }+  FL_EXPORT_C(void,Fl_Clock_clear_visible)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Clock_active)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->active();+  }+  FL_EXPORT_C(int,Fl_Clock_active_r)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->active_r();+  }+  FL_EXPORT_C(void,Fl_Clock_activate)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->activate();+  }+  FL_EXPORT_C(void,Fl_Clock_deactivate)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Clock_output)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Clock_set_output)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Clock_clear_output)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Clock_takesevents)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Clock_set_changed)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->changed();+  }+  FL_EXPORT_C(void,Fl_Clock_clear_changed)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Clock_take_focus)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Clock_set_visible_focus)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Clock_clear_visible_focus)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Clock_modify_visible_focus)(fl_Clock b,int v){+    (static_cast<Fl_Clock*>(b))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Clock_visible_focus)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Clock_do_callback)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Clock_do_callback_with_widget_and_user_data)(fl_Clock b,fl_Widget w,long arg){+    (static_cast<Fl_Clock*>(b))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Clock_do_callback_with_widget_and_default_user_data)(fl_Clock b,fl_Widget w){+    (static_cast<Fl_Clock*>(b))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Clock_contains)(fl_Clock b,fl_Widget w){+    return (static_cast<Fl_Clock*>(b))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Clock_inside)(fl_Clock b,fl_Widget w){+    return (static_cast<Fl_Clock*>(b))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Clock_redraw)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->redraw();+  }+  FL_EXPORT_C(void,Fl_Clock_redraw_label)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Clock_damage)(fl_Clock b){+    return (static_cast<Fl_Clock*>(b))->damage();+  }+  FL_EXPORT_C(void,Fl_Clock_clear_damage_with_bitmask)(fl_Clock b,uchar c){+    (static_cast<Fl_Clock*>(b))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Clock_clear_damage)(fl_Clock b){+    (static_cast<Fl_Clock*>(b))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Clock_damage_with_text)(fl_Clock b,uchar c){+    (static_cast<Fl_Clock*>(b))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Clock_damage_inside_widget)(fl_Clock b,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Clock*>(b))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Clock_draw_label_with_xywh_alignment)(fl_Clock b,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Clock*>(b))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Clock_measure_label)(fl_Clock b,int* ww,int* hh){+    (static_cast<Fl_Clock*>(b))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Clock_window)(fl_Clock clock){+    return (fl_Window) (static_cast<Fl_Clock*>(clock))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Clock_top_window)(fl_Clock clock){+    return (fl_Window) (static_cast<Fl_Clock*>(clock))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Clock_top_window_offset)(fl_Clock clock, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Clock*>(clock))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Clock_as_group)(fl_Clock clock){+    return (fl_Group) (static_cast<Fl_Clock*>(clock))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Clock_as_gl_window)(fl_Clock clock){+    return (fl_Gl_Window) (static_cast<Fl_Clock*>(clock))->as_gl_window();+  }+  FL_EXPORT_C(fl_Clock, Fl_Clock_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Clock* clock = new Fl_Clock(x,y,w,h,label);+    return (static_cast<fl_Clock>(clock));+  }+  FL_EXPORT_C(fl_Clock, Fl_Clock_New)(int x, int y, int w, int h) {+    Fl_Clock* clock = new Fl_Clock(x,y,w,h,0);+    return (fl_Clock)clock;+  }+  FL_EXPORT_C(fl_Clock, Fl_Clock_New_WithClockType)(uchar t, int x, int y, int w, int h, const char* label) {+    Fl_Clock* clock = new Fl_Clock(t,x,y,w,h,label);+    return (fl_Clock)clock;+  }+  FL_EXPORT_C(void,Fl_Clock_Destroy)(fl_Clock clock){+    delete (static_cast<Fl_Clock*>(clock));+  }+  FL_EXPORT_C(void,Fl_Clock_set_value)(fl_Clock clock,ulong v){+    return (static_cast<Fl_Clock*>(clock))->value(v);+  }+  FL_EXPORT_C(void,Fl_Clock_set_value_with_hms)(fl_Clock clock,int H,int m,int s){+    return (static_cast<Fl_Clock*>(clock))->value(H,m,s);+  }+  FL_EXPORT_C(ulong,Fl_Clock_value)(fl_Clock clock){+    return (static_cast<Fl_Clock*>(clock))->value();+  }+  FL_EXPORT_C(int,Fl_Clock_hour)(fl_Clock clock){+    return (static_cast<Fl_Clock*>(clock))->hour();+  }+  FL_EXPORT_C(int,Fl_Clock_minute)(fl_Clock clock){+    return (static_cast<Fl_Clock*>(clock))->minute();+  }+  FL_EXPORT_C(int,Fl_Clock_second)(fl_Clock clock){+    return (static_cast<Fl_Clock*>(clock))->second();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_ClockC.h view
@@ -0,0 +1,113 @@+#ifndef __FL_CLOCK_C__+#define __FL_CLOCK_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Clock.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+#define FL_SQUARE_CLOCK		0+#define FL_ROUND_CLOCK		1+#define FL_ANALOG_CLOCK FL_SQUARE_CLOCK+#define FL_DIGITAL_CLOCK FL_SQUARE_CLOCK+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Clock_handle)(fl_Clock self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Clock_parent)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_parent)(fl_Clock clock, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Clock_type)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_type)(fl_Clock clock, uchar t);+  FL_EXPORT_C(int,          Fl_Clock_x)(fl_Clock clock);+  FL_EXPORT_C(int,          Fl_Clock_y)(fl_Clock clock);+  FL_EXPORT_C(int,          Fl_Clock_w)(fl_Clock clock);+  FL_EXPORT_C(int,          Fl_Clock_h)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_align)(fl_Clock clock, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Clock_align)(fl_Clock clock);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Clock_box)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_box)(fl_Clock clock, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Clock_color)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_color)(fl_Clock clock, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Clock_set_color_with_bg_sel)(fl_Clock clock,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Clock_selection_color)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_selection_color)(fl_Clock clock, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Clock_label)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_copy_label)(fl_Clock clock, const char* new_label);+  FL_EXPORT_C(void,         Fl_Clock_set_label)(fl_Clock clock, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Clock_labeltype)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_labeltype)(fl_Clock clock, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Clock_labelcolor)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_labelcolor)(fl_Clock clock, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Clock_labelfont)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_labelfont)(fl_Clock clock, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Clock_labelsize)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_labelsize)(fl_Clock clock, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Clock_image)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_image)(fl_Clock clock, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Clock_deimage)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_deimage)(fl_Clock clock, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Clock_tooltip)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_copy_tooltip)(fl_Clock clock, const char* text);+  FL_EXPORT_C(void,         Fl_Clock_set_tooltip)(fl_Clock clock, const char* text);+  FL_EXPORT_C(void,         Fl_Clock_set_callback_with_user_data)(fl_Clock clock, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Clock_set_callback)(fl_Clock clock, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Clock_user_data)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_user_data)(fl_Clock clock, void* v);+  FL_EXPORT_C(long,         Fl_Clock_argument)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_argument)(fl_Clock clock, long v);+  FL_EXPORT_C(Fl_When,      Fl_Clock_when)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_when)(fl_Clock clock, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Clock_visible)(fl_Clock clock);+  FL_EXPORT_C(int,          Fl_Clock_visible_r)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_visible)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_clear_visible)(fl_Clock clock);+  FL_EXPORT_C(unsigned int, Fl_Clock_active)(fl_Clock clock);+  FL_EXPORT_C(int,          Fl_Clock_active_r)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_activate)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_deactivate)(fl_Clock clock);+  FL_EXPORT_C(unsigned int, Fl_Clock_output)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_output)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_clear_output)(fl_Clock clock);+  FL_EXPORT_C(unsigned int, Fl_Clock_takesevents)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_changed)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_clear_changed)(fl_Clock clock);+  FL_EXPORT_C(int,          Fl_Clock_take_focus)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_set_visible_focus)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_clear_visible_focus)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_modify_visible_focus)(fl_Clock clock, int v);+  FL_EXPORT_C(unsigned int, Fl_Clock_visible_focus)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_do_callback)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_do_callback_with_widget_and_user_data)(fl_Clock clock, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Clock_do_callback_with_widget_and_default_user_data)(fl_Clock clock, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Clock_contains)(fl_Clock clock, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Clock_inside)(fl_Clock clock, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Clock_redraw)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_redraw_label)(fl_Clock clock);+  FL_EXPORT_C(uchar,        Fl_Clock_damage)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_clear_damage_with_bitmask)(fl_Clock clock, uchar c);+  FL_EXPORT_C(void,         Fl_Clock_clear_damage)(fl_Clock clock);+  FL_EXPORT_C(void,         Fl_Clock_damage_with_text)(fl_Clock clock, uchar c);+  FL_EXPORT_C(void,         Fl_Clock_damage_inside_widget)(fl_Clock clock, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Clock_draw_label_with_xywh_alignment)(fl_Clock clock, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Clock_measure_label)(fl_Clock clock, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Clock_window)(fl_Clock clock);+  FL_EXPORT_C(fl_Window,    Fl_Clock_top_window)(fl_Clock clock);+  FL_EXPORT_C(fl_Window ,   Fl_Clock_top_window_offset)(fl_Clock clock, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Clock_as_group)(fl_Clock clock);+  FL_EXPORT_C(fl_Gl_Window, Fl_Clock_as_gl_window)(fl_Clock clock);+  /* Fl_Clock specific functions */+  FL_EXPORT_C(fl_Clock,    Fl_Clock_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Clock,    Fl_Clock_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Clock,    Fl_Clock_New_WithClockType)(uchar t, int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(void, Fl_Clock_set_value)(fl_Clock clock, ulong v);+  FL_EXPORT_C(void, Fl_Clock_set_value_with_hms)(fl_Clock clock, int H, int m, int s);+  FL_EXPORT_C(ulong, Fl_Clock_value)(fl_Clock clock);+  FL_EXPORT_C(int, Fl_Clock_hour)(fl_Clock clock);+  FL_EXPORT_C(int, Fl_Clock_minute)(fl_Clock clock);+  FL_EXPORT_C(int, Fl_Clock_second)(fl_Clock clock);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_CLOCK_C__*/
+ c-src/Fl_Color_ChooserC.cpp view
@@ -0,0 +1,380 @@+#include "Fl_Color_ChooserC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Color_Chooser_handle)(fl_Color_Chooser color_chooser, int event){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Color_Chooser_parent)(fl_Color_Chooser color_chooser){+    return (fl_Group) (static_cast<Fl_Color_Chooser*>(color_chooser))->parent();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_parent)(fl_Color_Chooser color_chooser,fl_Group grp){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->parent((static_cast<Fl_Color_Chooser*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Color_Chooser_type)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->type();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_type)(fl_Color_Chooser color_chooser,uchar t){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->type(t);+  }++  FL_EXPORT_C(int,Fl_Color_Chooser_x)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->x();+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_y)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->y();+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_w)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->w();+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_h)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->h();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_align)(fl_Color_Chooser color_chooser, Fl_Align alignment){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Color_Chooser_align)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Color_Chooser_box)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->box();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_box)(fl_Color_Chooser color_chooser,Fl_Boxtype new_box){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Color_Chooser_color)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->color();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_color)(fl_Color_Chooser color_chooser,Fl_Color bg){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_color_with_bg_sel)(fl_Color_Chooser color_chooser,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Color_Chooser_selection_color)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_selection_color)(fl_Color_Chooser color_chooser,Fl_Color a){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Color_Chooser_label)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->label();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_copy_label)(fl_Color_Chooser color_chooser,const char* new_label){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_label)(fl_Color_Chooser color_chooser,const char* text){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Color_Chooser_labeltype)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_labeltype)(fl_Color_Chooser color_chooser,Fl_Labeltype a){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_labelcolor)(fl_Color_Chooser color_chooser,Fl_Color c){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Font,Fl_Color_Chooser_labelfont)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_labelfont)(fl_Color_Chooser color_chooser,Fl_Font c){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Color_Chooser_labelsize)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_labelsize)(fl_Color_Chooser color_chooser,Fl_Fontsize pix){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Color_Chooser_image)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->image();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_image)(fl_Color_Chooser color_chooser,fl_Image pix){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Color_Chooser_deimage)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->deimage();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_deimage)(fl_Color_Chooser color_chooser,fl_Image pix){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Color_Chooser_tooltip)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_copy_tooltip)(fl_Color_Chooser color_chooser,const char* text){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_tooltip)(fl_Color_Chooser color_chooser,const char* text){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_callback_with_user_data)(fl_Color_Chooser color_chooser,fl_Callback* cb,void* p){+    Fl_Color_Chooser* castedWindow = (static_cast<Fl_Color_Chooser*>(color_chooser));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_callback)(fl_Color_Chooser color_chooser,fl_Callback* cb){+    Fl_Color_Chooser* castedWindow = (static_cast<Fl_Color_Chooser*>(color_chooser));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Color_Chooser_user_data)(fl_Color_Chooser color_chooser){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Color_Chooser*>(color_chooser))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Color_Chooser*>(color_chooser))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_user_data)(fl_Color_Chooser color_chooser,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Color_Chooser*>(color_chooser))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Color_Chooser*>(color_chooser))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Color_Chooser*>(color_chooser))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Color_Chooser_argument)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->argument();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_argument)(fl_Color_Chooser color_chooser,long v){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Color_Chooser_when)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->when();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_when)(fl_Color_Chooser color_chooser,uchar i){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Color_Chooser_visible)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->visible();+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_visible_r)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_visible)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->visible();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_clear_visible)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Color_Chooser_active)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->active();+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_active_r)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->active_r();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_activate)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->activate();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_deactivate)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Color_Chooser_output)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->output();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_output)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->output();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_clear_output)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Color_Chooser_takesevents)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_changed)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->changed();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_clear_changed)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_take_focus)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_visible_focus)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_clear_visible_focus)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_modify_visible_focus)(fl_Color_Chooser color_chooser,int v){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Color_Chooser_visible_focus)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_do_callback)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_do_callback_with_widget_and_user_data)(fl_Color_Chooser color_chooser,fl_Widget w,long arg){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_do_callback_with_widget_and_default_user_data)(fl_Color_Chooser color_chooser,fl_Widget w){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_contains)(fl_Color_Chooser color_chooser,fl_Widget w){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_inside)(fl_Color_Chooser color_chooser,fl_Widget w){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_redraw)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->redraw();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_redraw_label)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Color_Chooser_damage)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->damage();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_clear_damage_with_bitmask)(fl_Color_Chooser color_chooser,uchar c){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_clear_damage)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_damage_with_text)(fl_Color_Chooser color_chooser,uchar c){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_damage_inside_widget)(fl_Color_Chooser color_chooser,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_draw_label_with_xywh_alignment)(fl_Color_Chooser color_chooser,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_measure_label)(fl_Color_Chooser color_chooser,int* ww,int* hh){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Color_Chooser_window)(fl_Color_Chooser color_chooser){+    return (fl_Window) (static_cast<Fl_Color_Chooser*>(color_chooser))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Color_Chooser_top_window)(fl_Color_Chooser color_chooser){+    return (fl_Window) (static_cast<Fl_Color_Chooser*>(color_chooser))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Color_Chooser_top_window_offset)(fl_Color_Chooser color_chooser, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Color_Chooser*>(color_chooser))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Color_Chooser_as_group)(fl_Color_Chooser color_chooser){+    return (fl_Group) (static_cast<Fl_Color_Chooser*>(color_chooser))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Color_Chooser_as_gl_window)(fl_Color_Chooser color_chooser){+    return (fl_Gl_Window) (static_cast<Fl_Color_Chooser*>(color_chooser))->as_gl_window();+  }++  FL_EXPORT_C(void,Fl_Color_Chooser_begin)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->begin();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_end)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->end();+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_find)(fl_Color_Chooser color_chooser,fl_Widget w){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_add)(fl_Color_Chooser color_chooser,fl_Widget w){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->add((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_insert)(fl_Color_Chooser color_chooser,fl_Widget w,int i){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->insert(*(static_cast<Fl_Widget*>(w)),i);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_remove_index)(fl_Color_Chooser color_chooser,int index){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->remove(index);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_remove_widget)(fl_Color_Chooser color_chooser,fl_Widget w){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->remove((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_clear)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->clear();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_resizable_by_reference)(fl_Color_Chooser color_chooser,fl_Widget o){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_resizable)(fl_Color_Chooser color_chooser,fl_Widget o){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Color_Chooser_resizable)(fl_Color_Chooser color_chooser){+    return (fl_Widget)(static_cast<Fl_Color_Chooser*>(color_chooser))->resizable();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_add_resizable)(fl_Color_Chooser color_chooser,fl_Widget o){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_init_sizes)(fl_Color_Chooser color_chooser){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->init_sizes();+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_children)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->children();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_clip_children)(fl_Color_Chooser color_chooser,int c){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Color_Chooser_clip_children)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_focus)(fl_Color_Chooser color_chooser, fl_Widget W){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Color_Chooser__ddfdesign_kludge)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(void, Fl_Color_Chooser_insert_with_before)(fl_Color_Chooser color_chooser, fl_Widget w, fl_Widget before){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->insert(*(static_cast<Fl_Widget*>(w)),(static_cast<Fl_Widget*>(before)));+  }+  FL_EXPORT_C(fl_Widget*, Fl_Color_Chooser_array)(fl_Color_Chooser color_chooser){+    return (fl_Widget*)(static_cast<Fl_Color_Chooser*>(color_chooser))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Color_Chooser_child)(fl_Color_Chooser color_chooser, int n){+    return (fl_Widget)(static_cast<Fl_Color_Chooser*>(color_chooser))->child(n);+  }+  FL_EXPORT_C(fl_Color_Chooser,     Fl_Color_Chooser_New)(int x, int y, int w, int h){+    Fl_Color_Chooser* g = new Fl_Color_Chooser(x,y,w,h);+    return (fl_Color_Chooser)g;+  }+  FL_EXPORT_C(fl_Color_Chooser,     Fl_Color_Chooser_New_WithLabel)(int x, int y, int w, int h, const char* t){+    Fl_Color_Chooser* g = new Fl_Color_Chooser(x,y,w,h,t);+    return (fl_Color_Chooser)g;+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_mode)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->mode();+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_set_mode)(fl_Color_Chooser color_chooser,int newMode){+    (static_cast<Fl_Color_Chooser*>(color_chooser))->mode(newMode);+  }+  FL_EXPORT_C(double,Fl_Color_Chooser_hue)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->hue();+  }+  FL_EXPORT_C(double,Fl_Color_Chooser_saturation)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->saturation();+  }+  FL_EXPORT_C(double,Fl_Color_Chooser_value)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->value();+  }+  FL_EXPORT_C(double,Fl_Color_Chooser_r)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->r();+  }+  FL_EXPORT_C(double,Fl_Color_Chooser_g)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->g();+  }+  FL_EXPORT_C(double,Fl_Color_Chooser_b)(fl_Color_Chooser color_chooser){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->b();+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_hsv)(fl_Color_Chooser color_chooser,double H,double S,double V){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->hsv(H,S,V);+  }+  FL_EXPORT_C(int,Fl_Color_Chooser_rgb)(fl_Color_Chooser color_chooser,double R,double G,double B){+    return (static_cast<Fl_Color_Chooser*>(color_chooser))->rgb(R,G,B);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_hsv2rgb)(double H,double S,double V,double* R,double* G,double* B){+    Fl_Color_Chooser::hsv2rgb(H,S,V,*R,*G,*B);+  }+  FL_EXPORT_C(void,Fl_Color_Chooser_rgb2hsv)(double R,double G,double B,double* H,double* S,double* V){+    Fl_Color_Chooser::rgb2hsv(R,G,B,*H,*S,*V);+  }+  FL_EXPORT_C(int, flc_color_chooser)(const char* name, double r, double g, double b){+    return fl_color_chooser(name,r,g,b);+  }+  FL_EXPORT_C(int, flc_color_chooser_with_m)(const char* name, double r, double g, double b, int m){+    return fl_color_chooser(name,r,g,b,m);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Color_ChooserC.h view
@@ -0,0 +1,146 @@+#ifndef __FL_COLOR_CHOOSER_C__+#define __FL_COLOR_CHOOSER_C__+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#ifdef __cplusplus+#include "FL/Fl.H"+#include "FL/Fl_Color_Chooser.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,          Fl_Color_Chooser_handle)(fl_Color_Chooser color_chooser, int event);+  FL_EXPORT_C(fl_Group,     Fl_Color_Chooser_parent)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_parent)(fl_Color_Chooser color_chooser, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Color_Chooser_type)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_type)(fl_Color_Chooser color_chooser, uchar t);++  FL_EXPORT_C(int,          Fl_Color_Chooser_x)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(int,          Fl_Color_Chooser_y)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(int,          Fl_Color_Chooser_w)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(int,          Fl_Color_Chooser_h)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_align)(fl_Color_Chooser color_chooser, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Color_Chooser_align)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Color_Chooser_box)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_box)(fl_Color_Chooser color_chooser, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Color_Chooser_color)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_color)(fl_Color_Chooser color_chooser, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_color_with_bg_sel)(fl_Color_Chooser color_chooser,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Color_Chooser_selection_color)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_selection_color)(fl_Color_Chooser color_chooser, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Color_Chooser_label)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_copy_label)(fl_Color_Chooser color_chooser, const char* new_label);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_label)(fl_Color_Chooser color_chooser, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Color_Chooser_labeltype)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_labeltype)(fl_Color_Chooser color_chooser, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Color_Chooser_labelcolor)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_labelcolor)(fl_Color_Chooser color_chooser, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Color_Chooser_item_labelfont)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_item_labelfont)(fl_Color_Chooser color_chooser, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Color_Chooser_item_labelsize)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_item_labelsize)(fl_Color_Chooser color_chooser, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Color_Chooser_image)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_image)(fl_Color_Chooser color_chooser, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Color_Chooser_deimage)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_deimage)(fl_Color_Chooser color_chooser, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Color_Chooser_tooltip)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_copy_tooltip)(fl_Color_Chooser color_chooser, const char* text);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_tooltip)(fl_Color_Chooser color_chooser, const char* text);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_callback_with_user_data)(fl_Color_Chooser color_chooser, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_callback)(fl_Color_Chooser color_chooser, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Color_Chooser_other_data)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_other_data)(fl_Color_Chooser color_chooser, void* v);+  FL_EXPORT_C(void*,        Fl_Color_Chooser_user_data)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_user_data)(fl_Color_Chooser color_chooser, void* v);+  FL_EXPORT_C(long,         Fl_Color_Chooser_argument)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_argument)(fl_Color_Chooser color_chooser, long v);+  FL_EXPORT_C(Fl_When,      Fl_Color_Chooser_when)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_when)(fl_Color_Chooser color_chooser, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Color_Chooser_visible)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(int,          Fl_Color_Chooser_visible_r)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_show_super)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_show)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_hide_super)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_hide)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_visible)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_clear_visible)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(unsigned int, Fl_Color_Chooser_active)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(int,          Fl_Color_Chooser_active_r)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_activate)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_deactivate)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(unsigned int, Fl_Color_Chooser_output)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_output)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_clear_output)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(unsigned int, Fl_Color_Chooser_takesevents)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_changed)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_clear_changed)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(int,          Fl_Color_Chooser_take_focus)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_visible_focus)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_clear_visible_focus)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_modify_visible_focus)(fl_Color_Chooser color_chooser, int v);+  FL_EXPORT_C(unsigned int, Fl_Color_Chooser_visible_focus)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(int,          Fl_Color_Chooser_contains)(fl_Color_Chooser color_chooser, fl_Group w);+  FL_EXPORT_C(int,          Fl_Color_Chooser_inside)(fl_Color_Chooser color_chooser, fl_Group w);+  FL_EXPORT_C(void,         Fl_Color_Chooser_redraw)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_redraw_label)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(uchar,        Fl_Color_Chooser_damage)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_clear_damage_with_bitmask)(fl_Color_Chooser color_chooser, uchar c);+  FL_EXPORT_C(void,         Fl_Color_Chooser_clear_damage)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_damage_with_text)(fl_Color_Chooser color_chooser, uchar c);+  FL_EXPORT_C(void,         Fl_Color_Chooser_damage_inside_group)(fl_Color_Chooser color_chooser, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Color_Chooser_draw_label_with_xywh_alignment)(fl_Color_Chooser color_chooser, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Color_Chooser_measure_label)(fl_Color_Chooser color_chooser, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Color_Chooser_window)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(fl_Window,    Fl_Color_Chooser_top_window)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(fl_Window ,   Fl_Color_Chooser_top_window_offset)(fl_Color_Chooser color_chooser, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Color_Chooser_as_group_super)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(fl_Group,     Fl_Color_Chooser_as_group)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Color_Chooser_as_gl_window_super)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Color_Chooser_as_gl_window)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_resize_super)(fl_Color_Chooser color_chooser,int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Color_Chooser_resize)(fl_Color_Chooser color_chooser,int X, int Y, int W, int H);++  /* Fl_Color_Chooser specific */+  FL_EXPORT_C(void,         Fl_Color_Chooser_begin)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_end)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(int,          Fl_Color_Chooser_find)(fl_Color_Chooser color_chooser, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Color_Chooser_add)(fl_Color_Chooser color_chooser, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Color_Chooser_insert)(fl_Color_Chooser color_chooser, fl_Widget w, int i);+  FL_EXPORT_C(void,         Fl_Color_Chooser_remove_index)(fl_Color_Chooser color_chooser, int index);+  FL_EXPORT_C(void,         Fl_Color_Chooser_remove_widget)(fl_Color_Chooser color_chooser, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Color_Chooser_clear)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_resizable_by_reference)(fl_Color_Chooser color_chooser,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_resizable)(fl_Color_Chooser color_chooser,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Color_Chooser_resizable)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_add_resizable)(fl_Color_Chooser color_chooser,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Color_Chooser_init_sizes)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(int,          Fl_Color_Chooser_children)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_set_clip_children)(fl_Color_Chooser color_chooser,int c);+  FL_EXPORT_C(unsigned int, Fl_Color_Chooser_clip_children)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_focus)(fl_Color_Chooser color_chooser,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Color_Chooser__ddfdesign_kludge)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(void,         Fl_Color_Chooser_insert_with_before)(fl_Color_Chooser color_chooser, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Color_Chooser_array)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(fl_Widget,    Fl_Color_Chooser_child)(fl_Color_Chooser color_chooser, int n);++  FL_EXPORT_C(int,Fl_Color_Chooser_mode)(fl_Color_Chooser color_chooser); +  FL_EXPORT_C(void,Fl_Color_Chooser_set_mode)(fl_Color_Chooser color_chooser,int newMode);+  FL_EXPORT_C(double,Fl_Color_Chooser_hue)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(double,Fl_Color_Chooser_saturation)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(double,Fl_Color_Chooser_value)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(double,Fl_Color_Chooser_r)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(double,Fl_Color_Chooser_g)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(double,Fl_Color_Chooser_b)(fl_Color_Chooser color_chooser);+  FL_EXPORT_C(int,Fl_Color_Chooser_hsv)(fl_Color_Chooser color_chooser,double H, double S, double V);+  FL_EXPORT_C(int,Fl_Color_Chooser_rgb)(fl_Color_Chooser color_chooser,double R, double G, double B);+  FL_EXPORT_C(void,Fl_Color_Chooser_hsv2rgb)(double H, double S, double V, double* R, double* G, double* B);+  FL_EXPORT_C(void,Fl_Color_Chooser_rgb2hsv)(double R, double G, double B, double* H, double* S, double* V);+  FL_EXPORT_C(fl_Color_Chooser,Fl_Color_Chooser_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Color_Chooser,Fl_Color_Chooser_New_WithLabel)(int x, int y, int w, int h, const char* t);+  FL_EXPORT_C(int, flc_color_chooser)(const char* name, double r, double g, double b);+  FL_EXPORT_C(int, flc_color_chooser_with_m)(const char* name, double r, double g, double b, int m);+#ifdef __cplusplus+}+#endif+#endif /* __FL_COLOR_CHOOSER_C__ */
+ c-src/Fl_Copy_SurfaceC.cpp view
@@ -0,0 +1,24 @@+#include "Fl_Copy_SurfaceC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(const char*,Fl_Copy_Surface_class_name)(fl_Copy_Surface copy_surface){+    return (static_cast<Fl_Copy_Surface*>(copy_surface))->class_name();+  }+  FL_EXPORT_C(void,Fl_Copy_Surface_set_current)(fl_Copy_Surface copy_surface){+    (static_cast<Fl_Copy_Surface*>(copy_surface))->set_current();+  }+  FL_EXPORT_C(void,Fl_Copy_Surface_draw)(fl_Copy_Surface copy_surface,fl_Widget widget,int delta_x,int delta_y){+    (static_cast<Fl_Copy_Surface*>(copy_surface))->draw((static_cast<Fl_Widget*>(widget)),delta_x,delta_y);+  }+  FL_EXPORT_C(fl_Copy_Surface, Fl_Copy_Surface_New)(int w, int h) {+    Fl_Copy_Surface* s = new Fl_Copy_Surface(w,h);+    return (fl_Copy_Surface)s;+  }+  FL_EXPORT_C(void, Fl_Copy_Surface_Destroy)(fl_Copy_Surface copy_surface){+    delete (static_cast<Fl_Copy_Surface*>(copy_surface));+  }++#ifdef __cplusplus+}+#endif
+ c-src/Fl_Copy_SurfaceC.h view
@@ -0,0 +1,21 @@+#ifndef __FL_COPY_SURFACE_C__+#define __FL_COPY_SURFACE_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "FL/Fl_Copy_Surface.H"+EXPORT {+#endif+  FL_EXPORT_C(const char* ,Fl_Copy_Surface_class_name)(fl_Copy_Surface copy_surface);+  FL_EXPORT_C(void        ,Fl_Copy_Surface_set_current)(fl_Copy_Surface copy_surface);+  FL_EXPORT_C(void        ,Fl_Copy_Surface_draw)(fl_Copy_Surface copy_surface, fl_Widget widget, int delta_x, int delta_y);+  FL_EXPORT_C(fl_Copy_Surface, Fl_Copy_Surface_New)(int w, int h);+  FL_EXPORT_C(void, Fl_Copy_Surface_Destroy)(fl_Copy_Surface copy_surface);+#ifdef __cplusplus+}+#endif+#endif /* __FL_COPY_SURFACE_C__ */
+ c-src/Fl_CounterC.cpp view
@@ -0,0 +1,356 @@+#include "Fl_CounterC.h"+#ifdef __cplusplus+EXPORT {+#endif  +  FL_EXPORT_C(fl_Group,Fl_Counter_parent)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->parent();+  }+  FL_EXPORT_C(void,Fl_Counter_set_parent)(fl_Counter counter,fl_Group grp){+    (static_cast<Fl_Counter*>(counter))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Counter_type)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->type();+  }+  FL_EXPORT_C(void,Fl_Counter_set_type)(fl_Counter counter,uchar t){+    (static_cast<Fl_Counter*>(counter))->type(t);+  }+  FL_EXPORT_C(int,Fl_Counter_x)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->x();+  }+  FL_EXPORT_C(int,Fl_Counter_y)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->y();+  }+  FL_EXPORT_C(int,Fl_Counter_w)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->w();+  }+  FL_EXPORT_C(int,Fl_Counter_h)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->h();+  }+  FL_EXPORT_C(void,Fl_Counter_set_align)(fl_Counter counter,Fl_Align alignment){+    (static_cast<Fl_Counter*>(counter))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Counter_align)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Counter_box)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->box();+  }+  FL_EXPORT_C(void,Fl_Counter_set_box)(fl_Counter counter,Fl_Boxtype new_box){+    (static_cast<Fl_Counter*>(counter))->box(new_box);+  }+  FL_EXPORT_C(Fl_Color,Fl_Counter_color)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->color();+  }+  FL_EXPORT_C(void,Fl_Counter_set_color)(fl_Counter counter,Fl_Color bg){+    (static_cast<Fl_Counter*>(counter))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Counter_set_color_with_bg_sel)(fl_Counter counter,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Counter*>(counter))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Counter_selection_color)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Counter_set_selection_color)(fl_Counter counter,Fl_Color a){+    (static_cast<Fl_Counter*>(counter))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Counter_label)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->label();+  }+  FL_EXPORT_C(void,Fl_Counter_copy_label)(fl_Counter counter,const char* new_label){+    (static_cast<Fl_Counter*>(counter))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Counter_set_label)(fl_Counter counter,const char* text){+    (static_cast<Fl_Counter*>(counter))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Counter_labeltype)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Counter_set_labeltype)(fl_Counter counter,Fl_Labeltype a){+    (static_cast<Fl_Counter*>(counter))->labeltype(a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Counter_labelcolor)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->labelcolor();+  }+  FL_EXPORT_C(void,Fl_Counter_set_labelcolor)(fl_Counter counter,Fl_Color c){+    (static_cast<Fl_Counter*>(counter))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Font,Fl_Counter_labelfont)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Counter_set_labelfont)(fl_Counter counter,Fl_Font c){+    (static_cast<Fl_Counter*>(counter))->labelfont(c);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Counter_labelsize)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Counter_set_labelsize)(fl_Counter counter,Fl_Fontsize pix){+    (static_cast<Fl_Counter*>(counter))->labelsize(pix);+  }+  FL_EXPORT_C(fl_Image,Fl_Counter_image)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->image();+  }+  FL_EXPORT_C(void,Fl_Counter_set_image)(fl_Counter counter,fl_Image pix){+    (static_cast<Fl_Counter*>(counter))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Counter_deimage)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->deimage();+  }+  FL_EXPORT_C(void,Fl_Counter_set_deimage)(fl_Counter counter,fl_Image pix){+    (static_cast<Fl_Counter*>(counter))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Counter_tooltip)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Counter_copy_tooltip)(fl_Counter counter,const char* text){+    (static_cast<Fl_Counter*>(counter))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Counter_set_tooltip)(fl_Counter counter,const char* text){+    (static_cast<Fl_Counter*>(counter))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Counter_set_callback_with_user_data)(fl_Counter counter,fl_Callback* cb,void* p){+    Fl_Counter* castedCounter = (static_cast<Fl_Counter*>(counter));+    new C_to_Fl_Callback(castedCounter, cb, p);+  }+  FL_EXPORT_C(void,Fl_Counter_set_callback)(fl_Counter counter,fl_Callback* cb){+    Fl_Counter* castedCounter = (static_cast<Fl_Counter*>(counter));+    new C_to_Fl_Callback(castedCounter, cb);+  }+  FL_EXPORT_C(void*,Fl_Counter_user_data)(fl_Counter counter){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Counter*>(counter))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Counter*>(counter))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Counter_set_user_data)(fl_Counter counter,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Counter*>(counter))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Counter*>(counter))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Counter*>(counter))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Counter_argument)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->argument();+  }+  FL_EXPORT_C(void,Fl_Counter_set_argument)(fl_Counter counter,long v){+    (static_cast<Fl_Counter*>(counter))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Counter_when)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->when();+  }+  FL_EXPORT_C(void,Fl_Counter_set_when)(fl_Counter counter,uchar i){+    (static_cast<Fl_Counter*>(counter))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Counter_visible)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->visible();+  }+  FL_EXPORT_C(int,Fl_Counter_visible_r)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Counter_show)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->show();+  }+  FL_EXPORT_C(void,Fl_Counter_hide)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->hide();+  }+  FL_EXPORT_C(void,Fl_Counter_set_visible)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->visible();+  }+  FL_EXPORT_C(void,Fl_Counter_clear_visible)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Counter_active)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->active();+  }+  FL_EXPORT_C(int,Fl_Counter_active_r)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->active_r();+  }+  FL_EXPORT_C(void,Fl_Counter_activate)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->activate();+  }+  FL_EXPORT_C(void,Fl_Counter_deactivate)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Counter_output)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->output();+  }+  FL_EXPORT_C(void,Fl_Counter_set_output)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->output();+  }+  FL_EXPORT_C(void,Fl_Counter_clear_output)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Counter_takesevents)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Counter_set_changed)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->changed();+  }+  FL_EXPORT_C(void,Fl_Counter_clear_changed)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Counter_take_focus)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Counter_set_visible_focus)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Counter_clear_visible_focus)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Counter_modify_visible_focus)(fl_Counter counter,int v){+    (static_cast<Fl_Counter*>(counter))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Counter_visible_focus)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_Counter_contains)(fl_Counter counter,fl_Widget w){+    return (static_cast<Fl_Counter*>(counter))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Counter_inside)(fl_Counter counter,fl_Widget w){+    return (static_cast<Fl_Counter*>(counter))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Counter_redraw)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->redraw();+  }+  FL_EXPORT_C(void,Fl_Counter_redraw_label)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Counter_damage)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->damage();+  }+  FL_EXPORT_C(void,Fl_Counter_clear_damage_with_bitmask)(fl_Counter counter,uchar c){+    (static_cast<Fl_Counter*>(counter))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Counter_clear_damage)(fl_Counter counter){+    (static_cast<Fl_Counter*>(counter))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Counter_damage_with_text)(fl_Counter counter,uchar c){+    (static_cast<Fl_Counter*>(counter))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Counter_damage_inside_widget)(fl_Counter counter,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Counter*>(counter))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Counter_draw_label_with_xywh_alignment)(fl_Counter counter,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Counter*>(counter))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Counter_measure_label)(fl_Counter counter,int* ww,int* hh){+    (static_cast<Fl_Counter*>(counter))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,Fl_Counter_window)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->window();+  }+  FL_EXPORT_C(fl_Window,Fl_Counter_top_window)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->top_window();+  }+  FL_EXPORT_C(fl_Window,Fl_Counter_top_window_offset)(fl_Counter counter,int* xoff,int* yoff){+    return (fl_Window)(static_cast<Fl_Counter*>(counter))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Counter_as_gl_window)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Counter_resize)(fl_Counter counter,int X,int Y,int W,int H){+    (static_cast<Fl_Counter*>(counter))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Counter_bounds)(fl_Counter counter,double a,double b){+    (static_cast<Fl_Counter*>(counter))->bounds(a,b);+  }+  FL_EXPORT_C(double,Fl_Counter_minimum)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->minimum();+  }+  FL_EXPORT_C(void,Fl_Counter_set_minimum)(fl_Counter counter,double a){+    (static_cast<Fl_Counter*>(counter))->minimum(a);+  }+  FL_EXPORT_C(double,Fl_Counter_maximum)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->maximum();+  }+  FL_EXPORT_C(void,Fl_Counter_set_maximum)(fl_Counter counter,double a){+    (static_cast<Fl_Counter*>(counter))->maximum(a);+  }+  FL_EXPORT_C(void,Fl_Counter_range)(fl_Counter counter,double a,double b){+    (static_cast<Fl_Counter*>(counter))->range(a,b);+  }+  FL_EXPORT_C(void,Fl_Counter_set_step)(fl_Counter counter,int a){+    (static_cast<Fl_Counter*>(counter))->step(a);+  }+  FL_EXPORT_C(void,Fl_Counter_set_step_with_a_b)(fl_Counter counter,double a,int b){+    (static_cast<Fl_Counter*>(counter))->step(a,b);+  }+  FL_EXPORT_C(void,Fl_Counter_step_with_s)(fl_Counter counter,double s){+    (static_cast<Fl_Counter*>(counter))->step(s);+  }+  FL_EXPORT_C(double,Fl_Counter_step)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->step();+  }+  FL_EXPORT_C(void,Fl_Counter_precision)(fl_Counter counter,int precision){+    (static_cast<Fl_Counter*>(counter))->precision(precision);+  }+  FL_EXPORT_C(double,Fl_Counter_value)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->value();+  }+  FL_EXPORT_C(int,Fl_Counter_set_value)(fl_Counter counter,double v){+    return (static_cast<Fl_Counter*>(counter))->value(v);+  }+  FL_EXPORT_C(int,Fl_Counter_format)(fl_Counter counter,char* format){+    return (static_cast<Fl_Counter*>(counter))->format(format);+  }+  FL_EXPORT_C(double,Fl_Counter_round)(fl_Counter counter,double v){+    return (static_cast<Fl_Counter*>(counter))->round(v);+  }+  FL_EXPORT_C(double,Fl_Counter_clamp)(fl_Counter counter,double v){+    return (static_cast<Fl_Counter*>(counter))->clamp(v);+  }+  FL_EXPORT_C(double,Fl_Counter_increment)(fl_Counter counter,double v,int n){+    return (static_cast<Fl_Counter*>(counter))->increment(v,n);+  }+  FL_EXPORT_C(fl_Counter,Fl_Counter_New_WithLabel)(int x,int y,int w,int h,const char* label){+    Fl_Counter* counter = new Fl_Counter(x,y,w,h,label);+    return (fl_Counter) counter;+  }+  FL_EXPORT_C(fl_Counter,Fl_Counter_New)(int x,int y,int w,int h){+    Fl_Counter* counter = new Fl_Counter(x,y,w,h);+    return (fl_Counter) counter;+  }+  FL_EXPORT_C(fl_Simple_Counter,Fl_Simple_Counter_New_WithLabel)(int x,int y,int w,int h,const char* label){+    Fl_Simple_Counter* simple_counter = new Fl_Simple_Counter(x,y,w,h,label);+    return (fl_Simple_Counter) simple_counter;+  }+  FL_EXPORT_C(fl_Simple_Counter,Fl_Simple_Counter_New)(int x,int y,int w,int h){+    Fl_Simple_Counter* simple_counter = new Fl_Simple_Counter(x,y,w,h);+    return (fl_Simple_Counter) simple_counter;+  }+  FL_EXPORT_C(void,Fl_Counter_Destroy)(fl_Counter counter){+    delete (static_cast<Fl_Counter*>(counter));+  }+  FL_EXPORT_C(void,Fl_Counter_set_textfont)(fl_Counter counter,Fl_Font text){+    (static_cast<Fl_Counter*>(counter))->textfont(text);+  }+  FL_EXPORT_C(Fl_Font,Fl_Counter_textfont)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->textfont();+  }+  FL_EXPORT_C(void,Fl_Counter_set_textsize)(fl_Counter counter,Fl_Fontsize text){+    (static_cast<Fl_Counter*>(counter))->textsize(text);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Counter_textsize)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->textsize();+  }+  FL_EXPORT_C(void,Fl_Counter_set_textcolor)(fl_Counter counter,Fl_Color text){+    (static_cast<Fl_Counter*>(counter))->textcolor(text);+  }+  FL_EXPORT_C(Fl_Color,Fl_Counter_textcolor)(fl_Counter counter){+    return (static_cast<Fl_Counter*>(counter))->textcolor();+  }+  FL_EXPORT_C(int,Fl_Counter_handle)(fl_Counter counter,int event){+    return (static_cast<Fl_Counter*>(counter))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Counter_lstep)(fl_Counter counter,double lstep){+    (static_cast<Fl_Counter*>(counter))->lstep(lstep);+  }+#ifdef __cplusplus+}+#endif 
+ c-src/Fl_CounterC.h view
@@ -0,0 +1,133 @@+#ifndef __FL_COUNTER_C__+#define __FL_COUNTER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Counter is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Counter.H"+#include "FL/Fl_Simple_Counter.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_Group,     Fl_Counter_parent)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_parent)(fl_Counter counter, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Counter_type)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_type)(fl_Counter counter, uchar t);++  FL_EXPORT_C(int,          Fl_Counter_x)(fl_Counter counter);+  FL_EXPORT_C(int,          Fl_Counter_y)(fl_Counter counter);+  FL_EXPORT_C(int,          Fl_Counter_w)(fl_Counter counter);+  FL_EXPORT_C(int,          Fl_Counter_h)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_align)(fl_Counter counter, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Counter_align)(fl_Counter counter);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Counter_box)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_box)(fl_Counter counter, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Counter_color)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_color)(fl_Counter counter, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Counter_set_color_with_bg_sel)(fl_Counter counter,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Counter_selection_color)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_selection_color)(fl_Counter counter, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Counter_label)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_copy_label)(fl_Counter counter, const char* new_label);+  FL_EXPORT_C(void,         Fl_Counter_set_label)(fl_Counter counter, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Counter_labeltype)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_labeltype)(fl_Counter counter, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Counter_labelcolor)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_labelcolor)(fl_Counter counter, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Counter_labelfont)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_labelfont)(fl_Counter counter, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Counter_labelsize)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_labelsize)(fl_Counter counter, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Counter_image)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_image)(fl_Counter counter, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Counter_deimage)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_deimage)(fl_Counter counter, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Counter_tooltip)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_copy_tooltip)(fl_Counter counter, const char* text);+  FL_EXPORT_C(void,         Fl_Counter_set_tooltip)(fl_Counter counter, const char* text);+  FL_EXPORT_C(void,         Fl_Counter_set_callback_with_user_data)(fl_Counter counter, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Counter_set_callback)(fl_Counter counter, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Counter_other_data)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_other_data)(fl_Counter counter, void* v);+  FL_EXPORT_C(void*,        Fl_Counter_user_data)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_user_data)(fl_Counter counter, void* v);+  FL_EXPORT_C(long,         Fl_Counter_argument)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_argument)(fl_Counter counter, long v);+  FL_EXPORT_C(Fl_When,      Fl_Counter_when)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_when)(fl_Counter counter, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Counter_visible)(fl_Counter counter);+  FL_EXPORT_C(int,          Fl_Counter_visible_r)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_show)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_hide)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_visible)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_clear_visible)(fl_Counter counter);+  FL_EXPORT_C(unsigned int, Fl_Counter_active)(fl_Counter counter);+  FL_EXPORT_C(int,          Fl_Counter_active_r)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_activate)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_deactivate)(fl_Counter counter);+  FL_EXPORT_C(unsigned int, Fl_Counter_output)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_output)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_clear_output)(fl_Counter counter);+  FL_EXPORT_C(unsigned int, Fl_Counter_takesevents)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_changed)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_clear_changed)(fl_Counter counter);+  FL_EXPORT_C(int,          Fl_Counter_take_focus)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_visible_focus)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_clear_visible_focus)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_modify_visible_focus)(fl_Counter counter, int v);+  FL_EXPORT_C(unsigned int, Fl_Counter_visible_focus)(fl_Counter counter);+  FL_EXPORT_C(int,          Fl_Counter_contains)(fl_Counter counter, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Counter_inside)(fl_Counter counter, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Counter_redraw)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_redraw_label)(fl_Counter counter);+  FL_EXPORT_C(uchar,        Fl_Counter_damage)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_clear_damage_with_bitmask)(fl_Counter counter, uchar c);+  FL_EXPORT_C(void,         Fl_Counter_clear_damage)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_damage_with_text)(fl_Counter counter, uchar c);+  FL_EXPORT_C(void,         Fl_Counter_damage_inside_widget)(fl_Counter counter, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Counter_draw_label_with_xywh_alignment)(fl_Counter counter, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Counter_measure_label)(fl_Counter counter, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Counter_window)(fl_Counter counter);+  FL_EXPORT_C(fl_Window,    Fl_Counter_top_window)(fl_Counter counter);+  FL_EXPORT_C(fl_Window ,   Fl_Counter_top_window_offset)(fl_Counter counter, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Gl_Window, Fl_Counter_as_gl_window)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_resize)(fl_Table table,int X, int Y, int W, int H);++  /* Inherited from Fl_Valuator */+  FL_EXPORT_C(void, Fl_Counter_bounds)(fl_Counter counter, double a, double b);+  FL_EXPORT_C(double, Fl_Counter_minimum)(fl_Counter counter);+  FL_EXPORT_C(void, Fl_Counter_set_minimum)(fl_Counter counter, double a);+  FL_EXPORT_C(double, Fl_Counter_maximum)(fl_Counter counter);+  FL_EXPORT_C(void, Fl_Counter_set_maximum)(fl_Counter counter, double a);+  FL_EXPORT_C(void, Fl_Counter_range)(fl_Counter counter, double a, double b);+  FL_EXPORT_C(void, Fl_Counter_set_step)(fl_Counter counter, int a);+  FL_EXPORT_C(void, Fl_Counter_set_step_with_a_b)(fl_Counter counter, double a, int b);+  FL_EXPORT_C(void, Fl_Counter_step_with_s)(fl_Counter counter, double s);+  FL_EXPORT_C(double, Fl_Counter_step)(fl_Counter counter);+  FL_EXPORT_C(void, Fl_Counter_precision)(fl_Counter counter, int precision);+  FL_EXPORT_C(double, Fl_Counter_value)(fl_Counter counter);+  FL_EXPORT_C(int, Fl_Counter_set_value)(fl_Counter counter, double v);+  FL_EXPORT_C(int, Fl_Counter_format)(fl_Counter counter, char* format);+  FL_EXPORT_C(double, Fl_Counter_round)(fl_Counter counter, double v);+  FL_EXPORT_C(double, Fl_Counter_clamp)(fl_Counter counter, double v);+  FL_EXPORT_C(double, Fl_Counter_increment)(fl_Counter counter, double v, int n);++  /* Fl_Counter specific */+  FL_EXPORT_C(fl_Counter,    Fl_Counter_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Counter   , Fl_Counter_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Simple_Counter,Fl_Simple_Counter_New)(int x,int y,int w,int h);+  FL_EXPORT_C(fl_Simple_Counter,Fl_Simple_Counter_New_WithLabel)(int x,int y,int w,int h,const char* label);+  FL_EXPORT_C(void,      Fl_Counter_Destroy)(fl_Counter counter);+  FL_EXPORT_C(int,       Fl_Counter_handle)(fl_Counter counter, int event);+  FL_EXPORT_C(void,      Fl_Counter_lstep)(fl_Counter counter, double lstep);+  FL_EXPORT_C(void,         Fl_Counter_set_textfont)(fl_Counter counter, Fl_Font text);+  FL_EXPORT_C(Fl_Font,     Fl_Counter_textfont)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_textsize)(fl_Counter counter, Fl_Fontsize text);+  FL_EXPORT_C(Fl_Fontsize,     Fl_Counter_textsize)(fl_Counter counter);+  FL_EXPORT_C(void,         Fl_Counter_set_textcolor)(fl_Counter counter, Fl_Color text);+  FL_EXPORT_C(Fl_Color,     Fl_Counter_textcolor)(fl_Counter counter);+#ifdef __cplusplus+}+#endif+#endif /* __FL_COUNTER_C__ */
+ c-src/Fl_DeviceC.cpp view
@@ -0,0 +1,72 @@+#include "Fl_DeviceC.h"+#ifdef __cplusplus+EXPORT {+#endif+FL_EXPORT_C(const char*,Fl_Graphics_Driver_class_id)( ){+ return Fl_Graphics_Driver::class_id;+}+FL_EXPORT_C(const char*,Fl_Graphics_Driver_class_name)(fl_Graphics_Driver graphics_driver){+ return (static_cast<Fl_Graphics_Driver*>(graphics_driver))->class_name();+}+FL_EXPORT_C(void,Fl_Graphics_Driver_set_font)(fl_Graphics_Driver graphics_driver,Fl_Font face,Fl_Fontsize fsize){+ return (static_cast<Fl_Graphics_Driver*>(graphics_driver))->font(face,fsize);+}+FL_EXPORT_C(Fl_Font,Fl_Graphics_Driver_font)(fl_Graphics_Driver graphics_driver){+ return (static_cast<Fl_Graphics_Driver*>(graphics_driver))->font();+}+FL_EXPORT_C(Fl_Fontsize,Fl_Graphics_Driver_size)(fl_Graphics_Driver graphics_driver){+ return (static_cast<Fl_Graphics_Driver*>(graphics_driver))->size();+}+FL_EXPORT_C(double,Fl_Graphics_Driver_width)(fl_Graphics_Driver graphics_driver,const char* str,int n){+ return (static_cast<Fl_Graphics_Driver*>(graphics_driver))->width(str,n);+}+FL_EXPORT_C(double,Fl_Graphics_Driver_width_with_c)(fl_Graphics_Driver graphics_driver,unsigned int c){+  return (static_cast<Fl_Graphics_Driver*>(graphics_driver))->width(c);+}+FL_EXPORT_C(void,Fl_Graphics_Driver_text_extents)(fl_Graphics_Driver graphics_driver,const char* c,int n,int* dx,int* dy,int* w,int* h){+  return (static_cast<Fl_Graphics_Driver*>(graphics_driver))->text_extents(c,n,*dx,*dy,*w,*h);+}+FL_EXPORT_C(int,Fl_Graphics_Driver_height)(fl_Graphics_Driver graphics_driver){+ return (static_cast<Fl_Graphics_Driver*>(graphics_driver))->height();+}+FL_EXPORT_C(int,Fl_Graphics_Driver_descent)(fl_Graphics_Driver graphics_driver){+ return (static_cast<Fl_Graphics_Driver*>(graphics_driver))->descent();+}+FL_EXPORT_C(Fl_Color,Fl_Graphics_Driver_color)(fl_Graphics_Driver graphics_driver){+ return (static_cast<Fl_Graphics_Driver*>(graphics_driver))->color();+}+FL_EXPORT_C(fl_Font_Descriptor,Fl_Graphics_Driver_font_descriptor)(fl_Graphics_Driver graphics_driver){+ Fl_Font_Descriptor* _d = (static_cast<Fl_Graphics_Driver*>(graphics_driver))->font_descriptor();+ return static_cast<Fl_Font_Descriptor*>(_d);+}+FL_EXPORT_C(void,Fl_Graphics_Driver_set_font_descriptor)(fl_Graphics_Driver graphics_driver,fl_Font_Descriptor d){+  Fl_Font_Descriptor* _d = static_cast<Fl_Font_Descriptor*>(d);+ return (static_cast<Fl_Graphics_Driver*>(graphics_driver))->font_descriptor(_d);+}+FL_EXPORT_C(void,Fl_Graphics_Driver_Destroy)(fl_Graphics_Driver graphics_driver){+ delete (static_cast<Fl_Graphics_Driver*>(graphics_driver));+}+FL_EXPORT_C(const char*,Fl_Surface_Device_class_id)( ){+ return Fl_Surface_Device::class_id;+}+FL_EXPORT_C(const char*,Fl_Surface_Device_class_name)(fl_Surface_Device surface_device){+ return (static_cast<Fl_Surface_Device*>(surface_device))->class_name();+}+FL_EXPORT_C(void,Fl_Surface_Device_set_current)(fl_Surface_Device surface_device){+ return (static_cast<Fl_Surface_Device*>(surface_device))->set_current();+}+FL_EXPORT_C(void,Fl_Surface_Device_set_driver)(fl_Surface_Device surface_device,fl_Graphics_Driver graphics_driver){+  return (static_cast<Fl_Surface_Device*>(surface_device))->driver((static_cast<Fl_Graphics_Driver*>(graphics_driver)));+}+FL_EXPORT_C(fl_Graphics_Driver,Fl_Surface_Device_driver)(fl_Surface_Device surface_device){+ return (fl_Graphics_Driver)(static_cast<Fl_Surface_Device*>(surface_device))->driver();+}+FL_EXPORT_C(fl_Surface_Device,Fl_Surface_Device_surface)(){+  return (fl_Surface_Device)Fl_Surface_Device::surface();+}+FL_EXPORT_C(void,Fl_Surface_Device_Destroy)(fl_Surface_Device surface_device){+ delete (static_cast<Fl_Surface_Device*>(surface_device));+}+#ifdef __cplusplus+}+#endif
+ c-src/Fl_DeviceC.h view
@@ -0,0 +1,43 @@+#ifndef __Fl_DeviceC__+#define __Fl_DeviceC__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// X is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Device.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  //Fl_Graphics_Driver+  FL_EXPORT_C(const char*, Fl_Graphics_Driver_class_id)();+  FL_EXPORT_C(const char*, Fl_Graphics_Driver_class_name)(fl_Graphics_Driver graphics_driver);+  FL_EXPORT_C(const char*, Fl_Graphics_Driver_class_id)();+  FL_EXPORT_C(const char*, Fl_Graphics_Driver_class_name)(fl_Graphics_Driver graphics_driver);+  FL_EXPORT_C(void, Fl_Graphics_Driver_set_font)(fl_Graphics_Driver graphics_driver,Fl_Font face, Fl_Fontsize fsize);+  FL_EXPORT_C(Fl_Font, Fl_Graphics_Driver_font)(fl_Graphics_Driver graphics_driver);+  FL_EXPORT_C(Fl_Fontsize, Fl_Graphics_Driver_size)(fl_Graphics_Driver graphics_driver);+  FL_EXPORT_C(double, Fl_Graphics_Driver_width)(fl_Graphics_Driver graphics_driver,const char* str, int n);+  FL_EXPORT_C(double, Fl_Graphics_Driver_width_with_c)(fl_Graphics_Driver graphics_driver,unsigned int c);+  FL_EXPORT_C(void, Fl_Graphics_Driver_text_extents)(fl_Graphics_Driver graphics_driver,const char*, int n, int* dx, int* dy, int* w, int* h);;+  FL_EXPORT_C(int, Fl_Graphics_Driver_height)(fl_Graphics_Driver graphics_driver);+  FL_EXPORT_C(int, Fl_Graphics_Driver_descent)(fl_Graphics_Driver graphics_driver);+  FL_EXPORT_C(Fl_Color, Fl_Graphics_Driver_color)(fl_Graphics_Driver graphics_driver);+  FL_EXPORT_C(fl_Font_Descriptor, Fl_Graphics_Driver_font_descriptor)(fl_Graphics_Driver graphics_driver);+  FL_EXPORT_C(void, Fl_Graphics_Driver_set_font_descriptor)(fl_Graphics_Driver graphics_driver,fl_Font_Descriptor d);+  FL_EXPORT_C(void, Fl_Graphics_Driver_Destroy)(fl_Graphics_Driver graphics_driver);++  // Fl_Surface_Device+  FL_EXPORT_C(const char*, Fl_Surface_Device_class_id)();+  FL_EXPORT_C(const char*, Fl_Surface_Device_class_name)(fl_Surface_Device surface_device);+  FL_EXPORT_C(const char*, Fl_Surface_Device_class_id)();+  FL_EXPORT_C(const char*, Fl_Surface_Device_class_name)(fl_Surface_Device surface_device);+  FL_EXPORT_C(void, Fl_Surface_Device_set_current)(fl_Surface_Device surface_device);+  FL_EXPORT_C(void, Fl_Surface_Device_set_driver)(fl_Surface_Device surface_device,fl_Graphics_Driver graphics_driver);+  FL_EXPORT_C(fl_Graphics_Driver, Fl_Surface_Device_driver)(fl_Surface_Device surface_device);+  FL_EXPORT_C(fl_Surface_Device, Fl_Surface_Device_surface)();+  FL_EXPORT_C(void, Fl_Surface_Device_Destroy)(fl_Surface_Device surface_device);+#ifdef __cplusplus+}+#endif+#endif /* __Fl_DeviceC__ */
+ c-src/Fl_DialC.cpp view
@@ -0,0 +1,351 @@+#include "Fl_DialC.h"+#ifdef __cplusplus+EXPORT {+#endif  +  FL_EXPORT_C(fl_Group,Fl_Dial_parent)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->parent();+  }+  FL_EXPORT_C(void,Fl_Dial_set_parent)(fl_Dial dial,fl_Group grp){+    (static_cast<Fl_Dial*>(dial))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Dial_type)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->type();+  }+  FL_EXPORT_C(void,Fl_Dial_set_type)(fl_Dial dial,uchar t){+    (static_cast<Fl_Dial*>(dial))->type(t);+  }+  FL_EXPORT_C(int,Fl_Dial_x)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->x();+  }+  FL_EXPORT_C(int,Fl_Dial_y)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->y();+  }+  FL_EXPORT_C(int,Fl_Dial_w)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->w();+  }+  FL_EXPORT_C(int,Fl_Dial_h)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->h();+  }+  FL_EXPORT_C(void,Fl_Dial_set_align)(fl_Dial dial,Fl_Align alignment){+    (static_cast<Fl_Dial*>(dial))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Dial_align)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Dial_box)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->box();+  }+  FL_EXPORT_C(void,Fl_Dial_set_box)(fl_Dial dial,Fl_Boxtype new_box){+    (static_cast<Fl_Dial*>(dial))->box(new_box);+  }+  FL_EXPORT_C(Fl_Color,Fl_Dial_color)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->color();+  }+  FL_EXPORT_C(void,Fl_Dial_set_color)(fl_Dial dial,Fl_Color bg){+    (static_cast<Fl_Dial*>(dial))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Dial_set_color_with_bg_sel)(fl_Dial dial,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Dial*>(dial))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Dial_selection_color)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Dial_set_selection_color)(fl_Dial dial,Fl_Color a){+    (static_cast<Fl_Dial*>(dial))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Dial_label)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->label();+  }+  FL_EXPORT_C(void,Fl_Dial_copy_label)(fl_Dial dial,const char* new_label){+    (static_cast<Fl_Dial*>(dial))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Dial_set_label)(fl_Dial dial,const char* text){+    (static_cast<Fl_Dial*>(dial))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Dial_labeltype)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Dial_set_labeltype)(fl_Dial dial,Fl_Labeltype a){+    (static_cast<Fl_Dial*>(dial))->labeltype(a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Dial_labelcolor)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->labelcolor();+  }+  FL_EXPORT_C(void,Fl_Dial_set_labelcolor)(fl_Dial dial,Fl_Color c){+    (static_cast<Fl_Dial*>(dial))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Font,Fl_Dial_labelfont)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Dial_set_labelfont)(fl_Dial dial,Fl_Font c){+    (static_cast<Fl_Dial*>(dial))->labelfont(c);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Dial_labelsize)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Dial_set_labelsize)(fl_Dial dial,Fl_Fontsize pix){+    (static_cast<Fl_Dial*>(dial))->labelsize(pix);+  }+  FL_EXPORT_C(fl_Image,Fl_Dial_image)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->image();+  }+  FL_EXPORT_C(void,Fl_Dial_set_image)(fl_Dial dial,fl_Image pix){+    (static_cast<Fl_Dial*>(dial))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Dial_deimage)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->deimage();+  }+  FL_EXPORT_C(void,Fl_Dial_set_deimage)(fl_Dial dial,fl_Image pix){+    (static_cast<Fl_Dial*>(dial))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Dial_tooltip)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Dial_copy_tooltip)(fl_Dial dial,const char* text){+    (static_cast<Fl_Dial*>(dial))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Dial_set_tooltip)(fl_Dial dial,const char* text){+    (static_cast<Fl_Dial*>(dial))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Dial_set_callback_with_user_data)(fl_Dial dial,fl_Callback* cb,void* p){+    Fl_Dial* castedDial = (static_cast<Fl_Dial*>(dial));+    new C_to_Fl_Callback(castedDial, cb, p);+  }+  FL_EXPORT_C(void,Fl_Dial_set_callback)(fl_Dial dial,fl_Callback* cb){+    Fl_Dial* castedDial = (static_cast<Fl_Dial*>(dial));+    new C_to_Fl_Callback(castedDial, cb);+  }+  FL_EXPORT_C(void*,Fl_Dial_user_data)(fl_Dial dial){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Dial*>(dial))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Dial*>(dial))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Dial_set_user_data)(fl_Dial dial,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Dial*>(dial))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Dial*>(dial))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Dial*>(dial))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Dial_argument)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->argument();+  }+  FL_EXPORT_C(void,Fl_Dial_set_argument)(fl_Dial dial,long v){+    (static_cast<Fl_Dial*>(dial))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Dial_when)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->when();+  }+  FL_EXPORT_C(void,Fl_Dial_set_when)(fl_Dial dial,uchar i){+    (static_cast<Fl_Dial*>(dial))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Dial_visible)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->visible();+  }+  FL_EXPORT_C(int,Fl_Dial_visible_r)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Dial_show)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->show();+  }+  FL_EXPORT_C(void,Fl_Dial_hide)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->hide();+  }+  FL_EXPORT_C(void,Fl_Dial_set_visible)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->visible();+  }+  FL_EXPORT_C(void,Fl_Dial_clear_visible)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Dial_active)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->active();+  }+  FL_EXPORT_C(int,Fl_Dial_active_r)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->active_r();+  }+  FL_EXPORT_C(void,Fl_Dial_activate)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->activate();+  }+  FL_EXPORT_C(void,Fl_Dial_deactivate)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Dial_output)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->output();+  }+  FL_EXPORT_C(void,Fl_Dial_set_output)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->output();+  }+  FL_EXPORT_C(void,Fl_Dial_clear_output)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Dial_takesevents)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Dial_set_changed)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->changed();+  }+  FL_EXPORT_C(void,Fl_Dial_clear_changed)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Dial_take_focus)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Dial_set_visible_focus)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Dial_clear_visible_focus)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Dial_modify_visible_focus)(fl_Dial dial,int v){+    (static_cast<Fl_Dial*>(dial))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Dial_visible_focus)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_Dial_contains)(fl_Dial dial,fl_Widget w){+    return (static_cast<Fl_Dial*>(dial))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Dial_inside)(fl_Dial dial,fl_Widget w){+    return (static_cast<Fl_Dial*>(dial))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Dial_redraw)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->redraw();+  }+  FL_EXPORT_C(void,Fl_Dial_redraw_label)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Dial_damage)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->damage();+  }+  FL_EXPORT_C(void,Fl_Dial_clear_damage_with_bitmask)(fl_Dial dial,uchar c){+    (static_cast<Fl_Dial*>(dial))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Dial_clear_damage)(fl_Dial dial){+    (static_cast<Fl_Dial*>(dial))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Dial_damage_with_text)(fl_Dial dial,uchar c){+    (static_cast<Fl_Dial*>(dial))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Dial_damage_inside_widget)(fl_Dial dial,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Dial*>(dial))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Dial_draw_label_with_xywh_alignment)(fl_Dial dial,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Dial*>(dial))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Dial_measure_label)(fl_Dial dial,int* ww,int* hh){+    (static_cast<Fl_Dial*>(dial))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,Fl_Dial_window)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->window();+  }+  FL_EXPORT_C(fl_Window,Fl_Dial_top_window)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->top_window();+  }+  FL_EXPORT_C(fl_Window,Fl_Dial_top_window_offset)(fl_Dial dial,int* xoff,int* yoff){+    return (fl_Window)(static_cast<Fl_Dial*>(dial))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Dial_as_gl_window)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Dial_resize)(fl_Dial dial,int X,int Y,int W,int H){+    (static_cast<Fl_Dial*>(dial))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Dial_bounds)(fl_Dial dial,double a,double b){+    (static_cast<Fl_Dial*>(dial))->bounds(a,b);+  }+  FL_EXPORT_C(double,Fl_Dial_minimum)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->minimum();+  }+  FL_EXPORT_C(void,Fl_Dial_set_minimum)(fl_Dial dial,double a){+    (static_cast<Fl_Dial*>(dial))->minimum(a);+  }+  FL_EXPORT_C(double,Fl_Dial_maximum)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->maximum();+  }+  FL_EXPORT_C(void,Fl_Dial_set_maximum)(fl_Dial dial,double a){+    (static_cast<Fl_Dial*>(dial))->maximum(a);+  }+  FL_EXPORT_C(void,Fl_Dial_range)(fl_Dial dial,double a,double b){+    (static_cast<Fl_Dial*>(dial))->range(a,b);+  }+  FL_EXPORT_C(void,Fl_Dial_set_step)(fl_Dial dial,int a){+    (static_cast<Fl_Dial*>(dial))->step(a);+  }+  FL_EXPORT_C(void,Fl_Dial_set_step_with_a_b)(fl_Dial dial,double a,int b){+    (static_cast<Fl_Dial*>(dial))->step(a,b);+  }+  FL_EXPORT_C(void,Fl_Dial_step_with_s)(fl_Dial dial,double s){+    (static_cast<Fl_Dial*>(dial))->step(s);+  }+  FL_EXPORT_C(double,Fl_Dial_step)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->step();+  }+  FL_EXPORT_C(void,Fl_Dial_precision)(fl_Dial dial,int precision){+    (static_cast<Fl_Dial*>(dial))->precision(precision);+  }+  FL_EXPORT_C(double,Fl_Dial_value)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->value();+  }+  FL_EXPORT_C(int,Fl_Dial_set_value)(fl_Dial dial,double v){+    return (static_cast<Fl_Dial*>(dial))->value(v);+  }+  FL_EXPORT_C(int,Fl_Dial_format)(fl_Dial dial,char* format){+    return (static_cast<Fl_Dial*>(dial))->format(format);+  }+  FL_EXPORT_C(double,Fl_Dial_round)(fl_Dial dial,double v){+    return (static_cast<Fl_Dial*>(dial))->round(v);+  }+  FL_EXPORT_C(double,Fl_Dial_clamp)(fl_Dial dial,double v){+    return (static_cast<Fl_Dial*>(dial))->clamp(v);+  }+  FL_EXPORT_C(double,Fl_Dial_increment)(fl_Dial dial,double v,int n){+    return (static_cast<Fl_Dial*>(dial))->increment(v,n);+  }+  FL_EXPORT_C(fl_Dial,Fl_Dial_New_WithLabel)(int x,int y,int w,int h,const char* label){+    Fl_Dial* dial = new Fl_Dial(x,y,w,h,label);+    return (fl_Dial) dial;+  }+  FL_EXPORT_C(fl_Dial,Fl_Dial_New)(int x,int y,int w,int h){+    Fl_Dial* dial = new Fl_Dial(x,y,w,h);+    return (fl_Dial) dial;+  }+  FL_EXPORT_C(fl_Fill_Dial,Fl_Fill_Dial_New)(int x,int y,int w,int h,const char* label){+    Fl_Fill_Dial* dial = new Fl_Fill_Dial(x,y,w,h,label);+    return (fl_Fill_Dial) dial;+  }+  FL_EXPORT_C(fl_Line_Dial,Fl_Line_Dial_New_WithLabel)(int x,int y,int w,int h,const char* label){+    Fl_Line_Dial* dial = new Fl_Line_Dial(x,y,w,h,label);+    return (fl_Line_Dial) dial;+  }+  FL_EXPORT_C(fl_Line_Dial,Fl_Line_Dial_New)(int x,int y,int w,int h){+    Fl_Line_Dial* dial = new Fl_Line_Dial(x,y,w,h);+    return (fl_Line_Dial) dial;+  }+  FL_EXPORT_C(void,Fl_Dial_Destroy)(fl_Dial dial){+    delete (static_cast<Fl_Dial*>(dial));+  }+  FL_EXPORT_C(void,Fl_Dial_set_angle1)(fl_Dial dial,short a){+    (static_cast<Fl_Dial*>(dial))->angle1(a);+  }+  FL_EXPORT_C(void,Fl_Dial_set_angle2)(fl_Dial dial,short a){+    (static_cast<Fl_Dial*>(dial))->angle2(a);+  }+  FL_EXPORT_C(short,Fl_Dial_angle1)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->angle1();+  }+  FL_EXPORT_C(short,Fl_Dial_angle2)(fl_Dial dial){+    return (static_cast<Fl_Dial*>(dial))->angle2();+  }+  FL_EXPORT_C(int,Fl_Dial_handle)(fl_Dial dial,int event){+    return (static_cast<Fl_Dial*>(dial))->handle(event);+  }+#ifdef __cplusplus+}+#endif 
+ c-src/Fl_DialC.h view
@@ -0,0 +1,132 @@+#ifndef __FL_DIAL_C__+#define __FL_DIAL_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Dial is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Dial.H"+#include "FL/Fl_Fill_Dial.H"+#include "FL/Fl_Line_Dial.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_Group,     Fl_Dial_parent)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_parent)(fl_Dial dial, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Dial_type)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_type)(fl_Dial dial, uchar t);++  FL_EXPORT_C(int,          Fl_Dial_x)(fl_Dial dial);+  FL_EXPORT_C(int,          Fl_Dial_y)(fl_Dial dial);+  FL_EXPORT_C(int,          Fl_Dial_w)(fl_Dial dial);+  FL_EXPORT_C(int,          Fl_Dial_h)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_align)(fl_Dial dial, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Dial_align)(fl_Dial dial);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Dial_box)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_box)(fl_Dial dial, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Dial_color)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_color)(fl_Dial dial, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Dial_set_color_with_bg_sel)(fl_Dial dial,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Dial_selection_color)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_selection_color)(fl_Dial dial, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Dial_label)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_copy_label)(fl_Dial dial, const char* new_label);+  FL_EXPORT_C(void,         Fl_Dial_set_label)(fl_Dial dial, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Dial_labeltype)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_labeltype)(fl_Dial dial, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Dial_labelcolor)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_labelcolor)(fl_Dial dial, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Dial_labelfont)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_labelfont)(fl_Dial dial, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Dial_labelsize)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_labelsize)(fl_Dial dial, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Dial_image)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_image)(fl_Dial dial, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Dial_deimage)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_deimage)(fl_Dial dial, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Dial_tooltip)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_copy_tooltip)(fl_Dial dial, const char* text);+  FL_EXPORT_C(void,         Fl_Dial_set_tooltip)(fl_Dial dial, const char* text);+  FL_EXPORT_C(void,         Fl_Dial_set_callback_with_user_data)(fl_Dial dial, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Dial_set_callback)(fl_Dial dial, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Dial_other_data)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_other_data)(fl_Dial dial, void* v);+  FL_EXPORT_C(void*,        Fl_Dial_user_data)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_user_data)(fl_Dial dial, void* v);+  FL_EXPORT_C(long,         Fl_Dial_argument)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_argument)(fl_Dial dial, long v);+  FL_EXPORT_C(Fl_When,      Fl_Dial_when)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_when)(fl_Dial dial, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Dial_visible)(fl_Dial dial);+  FL_EXPORT_C(int,          Fl_Dial_visible_r)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_show)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_hide)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_visible)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_clear_visible)(fl_Dial dial);+  FL_EXPORT_C(unsigned int, Fl_Dial_active)(fl_Dial dial);+  FL_EXPORT_C(int,          Fl_Dial_active_r)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_activate)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_deactivate)(fl_Dial dial);+  FL_EXPORT_C(unsigned int, Fl_Dial_output)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_output)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_clear_output)(fl_Dial dial);+  FL_EXPORT_C(unsigned int, Fl_Dial_takesevents)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_changed)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_clear_changed)(fl_Dial dial);+  FL_EXPORT_C(int,          Fl_Dial_take_focus)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_set_visible_focus)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_clear_visible_focus)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_modify_visible_focus)(fl_Dial dial, int v);+  FL_EXPORT_C(unsigned int, Fl_Dial_visible_focus)(fl_Dial dial);+  FL_EXPORT_C(int,          Fl_Dial_contains)(fl_Dial dial, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Dial_inside)(fl_Dial dial, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Dial_redraw)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_redraw_label)(fl_Dial dial);+  FL_EXPORT_C(uchar,        Fl_Dial_damage)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_clear_damage_with_bitmask)(fl_Dial dial, uchar c);+  FL_EXPORT_C(void,         Fl_Dial_clear_damage)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_damage_with_text)(fl_Dial dial, uchar c);+  FL_EXPORT_C(void,         Fl_Dial_damage_inside_widget)(fl_Dial dial, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Dial_draw_label_with_xywh_alignment)(fl_Dial dial, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Dial_measure_label)(fl_Dial dial, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Dial_window)(fl_Dial dial);+  FL_EXPORT_C(fl_Window,    Fl_Dial_top_window)(fl_Dial dial);+  FL_EXPORT_C(fl_Window ,   Fl_Dial_top_window_offset)(fl_Dial dial, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Gl_Window, Fl_Dial_as_gl_window)(fl_Dial dial);+  FL_EXPORT_C(void,         Fl_Dial_resize)(fl_Table table,int X, int Y, int W, int H);++  /* Inherited from Fl_Valuator */+  FL_EXPORT_C(void, Fl_Dial_bounds)(fl_Dial dial, double a, double b);+  FL_EXPORT_C(double, Fl_Dial_minimum)(fl_Dial dial);+  FL_EXPORT_C(void, Fl_Dial_set_minimum)(fl_Dial dial, double a);+  FL_EXPORT_C(double, Fl_Dial_maximum)(fl_Dial dial);+  FL_EXPORT_C(void, Fl_Dial_set_maximum)(fl_Dial dial, double a);+  FL_EXPORT_C(void, Fl_Dial_range)(fl_Dial dial, double a, double b);+  FL_EXPORT_C(void, Fl_Dial_set_step)(fl_Dial dial, int a);+  FL_EXPORT_C(void, Fl_Dial_set_step_with_a_b)(fl_Dial dial, double a, int b);+  FL_EXPORT_C(void, Fl_Dial_step_with_s)(fl_Dial dial, double s);+  FL_EXPORT_C(double, Fl_Dial_step)(fl_Dial dial);+  FL_EXPORT_C(void, Fl_Dial_precision)(fl_Dial dial, int precision);+  FL_EXPORT_C(double, Fl_Dial_value)(fl_Dial dial);+  FL_EXPORT_C(int, Fl_Dial_set_value)(fl_Dial dial, double v);+  FL_EXPORT_C(int, Fl_Dial_format)(fl_Dial dial, char* format);+  FL_EXPORT_C(double, Fl_Dial_round)(fl_Dial dial, double v);+  FL_EXPORT_C(double, Fl_Dial_clamp)(fl_Dial dial, double v);+  FL_EXPORT_C(double, Fl_Dial_increment)(fl_Dial dial, double v, int n);++  /* Fl_Dial specific */+  FL_EXPORT_C(fl_Dial      ,Fl_Dial_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Dial      ,Fl_Dial_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Fill_Dial ,Fl_Fill_Dial_New)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Line_Dial ,Fl_Line_Dial_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Line_Dial ,Fl_Line_Dial_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,      Fl_Dial_Destroy)(fl_Dial dial);+  FL_EXPORT_C(void,      Fl_Dial_set_angle1)(fl_Dial dial, short a);+  FL_EXPORT_C(void,      Fl_Dial_set_angle2)(fl_Dial dial, short a);+  FL_EXPORT_C(short,     Fl_Dial_angle1)(fl_Dial dial);+  FL_EXPORT_C(short,     Fl_Dial_angle2)(fl_Dial dial);+  FL_EXPORT_C(int,       Fl_Dial_handle)(fl_Dial dial, int event);+#ifdef __cplusplus+}+#endif+#endif /* __FL_DIAL_C__ */
+ c-src/Fl_Double_WindowC.cpp view
@@ -0,0 +1,782 @@+#include "Fl_WindowC.h"+#include "Fl_Double_WindowC.h"++#ifdef __cplusplus+Fl_DerivedDouble_Window::Fl_DerivedDouble_Window(int X, int Y, int W, int H, const char *l, fl_Window_Virtual_Funcs* funcs) : Fl_Double_Window(X,Y,W,H,l){+overriddenFuncs = funcs;+other_data = 0;+}+Fl_DerivedDouble_Window::Fl_DerivedDouble_Window(int X, int Y, int W, int H, fl_Window_Virtual_Funcs* funcs):Fl_Double_Window(X,Y,W,H,0){+overriddenFuncs = funcs;+other_data = 0;+}+Fl_DerivedDouble_Window::Fl_DerivedDouble_Window(int W, int H, const char *l, fl_Window_Virtual_Funcs* funcs) :Fl_Double_Window(W,H,l){+overriddenFuncs = funcs;+other_data = 0;+}+Fl_DerivedDouble_Window::Fl_DerivedDouble_Window(int W, int H, fl_Window_Virtual_Funcs* funcs):Fl_Double_Window(W,H,0){+overriddenFuncs = funcs;+other_data = 0;+}+Fl_DerivedDouble_Window::~Fl_DerivedDouble_Window(){+destroy_data();+free(overriddenFuncs);+}+void* Fl_DerivedDouble_Window::get_other_data(){+return this->other_data;+}+void Fl_DerivedDouble_Window::set_other_data(void* data){+this->other_data = data;+}+void Fl_DerivedDouble_Window::destroy_data(){+if (this->overriddenFuncs->destroy_data != NULL){+this->overriddenFuncs->destroy_data((fl_Window) this);+}+}+void Fl_DerivedDouble_Window::draw_box(){+Fl_Double_Window::draw_box();+}+void Fl_DerivedDouble_Window::draw_box(Fl_Boxtype t, Fl_Color c){+Fl_Double_Window::draw_box(t,c);+}+void Fl_DerivedDouble_Window::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+Fl_Double_Window::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedDouble_Window::draw_backdrop(){+Fl_Double_Window::draw_backdrop();+}+void Fl_DerivedDouble_Window::draw_focus(){+Fl_Double_Window::draw_focus();+}+void Fl_DerivedDouble_Window::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+Fl_Double_Window::draw_focus(t,x,y,w,h);+}+void Fl_DerivedDouble_Window::draw_label(){+Fl_Double_Window::draw_label();+}+void Fl_DerivedDouble_Window::draw_label(int x,int y,int w,int h,Fl_Align alignment){+Fl_Double_Window::draw_label(x,y,w,h,alignment);+}+void Fl_DerivedDouble_Window::draw_child(Fl_Widget* widget){+Fl_Double_Window::draw_child(*widget);+}+void Fl_DerivedDouble_Window::draw_children(){+Fl_Double_Window::draw_children();+}+void Fl_DerivedDouble_Window::draw_outside_label(Fl_Widget* widget){+Fl_Double_Window::draw_outside_label(*widget);+}+void Fl_DerivedDouble_Window::update_child(Fl_Widget* widget){+Fl_Double_Window::update_child(*widget);+}+int* Fl_DerivedDouble_Window:: sizes(){+return Fl_Double_Window::sizes();+}+int Fl_DerivedDouble_Window::handle(int event){+int i;+if (this->overriddenFuncs->handle != NULL) {+i = this->overriddenFuncs->handle((fl_Window) this,event);+}+else {+i = Fl_Double_Window::handle(event);+}+return i;+}+int Fl_DerivedDouble_Window::handle_super(int event){+return Fl_Double_Window::handle(event);+}+void Fl_DerivedDouble_Window::resize(int x, int y, int w, int h){+if (this->overriddenFuncs->resize != NULL) {+this->overriddenFuncs->resize((fl_Window) this,x,y,w,h);+}+else {+Fl_Double_Window::resize(x,y,w,h);+}+}+void Fl_DerivedDouble_Window::resize_super(int x, int y, int w, int h){+Fl_Double_Window::resize(x,y,w,h);+}+void Fl_DerivedDouble_Window::flush(){+if (this->overriddenFuncs->flush != NULL) {+this->overriddenFuncs->flush((fl_Window) this);+}+else {+Fl_Double_Window::flush();+}+}+void Fl_DerivedDouble_Window::flush_super(){+Fl_Double_Window::flush();+}+void Fl_DerivedDouble_Window::show(){+if (this->overriddenFuncs->show != NULL) {+this->overriddenFuncs->show((fl_Window) this);+}+else {+Fl_Double_Window::show();+}+}+void Fl_DerivedDouble_Window::show_super(){+Fl_Double_Window::show();+}+void Fl_DerivedDouble_Window::show(int argc, char** argv){+Fl_Double_Window::show(argc,argv);+}+void Fl_DerivedDouble_Window::hide(){+if (this->overriddenFuncs->hide != NULL) {+this->overriddenFuncs->hide((fl_Window) this);+}+else {+Fl_Double_Window::hide();+}+}+void Fl_DerivedDouble_Window::hide_super(){+Fl_Double_Window::hide();+}+void Fl_DerivedDouble_Window::draw(){+if (this->overriddenFuncs->draw != NULL) {+this->overriddenFuncs->draw((fl_Window) this);+}+else {+Fl_Double_Window::draw();+}+}+void Fl_DerivedDouble_Window::draw_super(){+Fl_Double_Window::draw();+}+Fl_Window* Fl_DerivedDouble_Window::as_window(){+Fl_Window* win;+if (this->overriddenFuncs->as_window != NULL) {+win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Window) this)));+}+else {+win = Fl_Double_Window::as_window();+}+return win;+}+Fl_Window* Fl_DerivedDouble_Window::as_window_super(){+return Fl_Double_Window::as_window();+}+Fl_Group* Fl_DerivedDouble_Window::as_group(){+Fl_Group* grp;+if (this->overriddenFuncs->as_group != NULL) {+grp= (static_cast<Fl_Window*>(this->overriddenFuncs->as_group((fl_Window) this)));+}+else {+grp= Fl_Double_Window::as_group();+}+return grp;+}+Fl_Group* Fl_DerivedDouble_Window::as_group_super(){+return Fl_Double_Window::as_group();+}+Fl_Gl_Window* Fl_DerivedDouble_Window::as_gl_window(){+Fl_Gl_Window* win;+if (this->overriddenFuncs->as_gl_window != NULL) {+win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Window) this)));+}+else {+win = Fl_Double_Window::as_gl_window();+}+return win;+}+Fl_Gl_Window* Fl_DerivedDouble_Window::as_gl_window_super(){+return Fl_Double_Window::as_gl_window();+}+EXPORT {+#endif+FL_EXPORT_C(fl_Double_Window_Virtual_Funcs*, Fl_Double_Window_default_virtual_funcs)(){+fl_Double_Window_Virtual_Funcs* ptr = (fl_Double_Window_Virtual_Funcs*)malloc(sizeof(fl_Double_Window_Virtual_Funcs));+ptr->draw = NULL;+ptr->handle = NULL;+ptr->resize = NULL;+ptr->show  = NULL;+ptr->hide = NULL;+ptr->as_window = NULL;+ptr->as_gl_window = NULL;+ptr->flush = NULL;+ptr->destroy_data = NULL;+return ptr;+}+FL_EXPORT_C(fl_Window,Fl_Double_Window_as_window)(fl_Double_Window self){+return (fl_Window)(static_cast<Fl_DerivedDouble_Window*>(self))->as_window();+}+FL_EXPORT_C(fl_Window,Fl_Double_Window_as_window_super)(fl_Double_Window self){+return (fl_Window)(static_cast<Fl_DerivedDouble_Window*>(self))->as_window_super();+  }+  FL_EXPORT_C(int,Fl_Double_Window_handle)(fl_Double_Window self, int event){+    return (static_cast<Fl_DerivedDouble_Window*>(self))->handle(event);+  }+  FL_EXPORT_C(int,Fl_Double_Window_handle_super)(fl_Double_Window self, int event){+    return (static_cast<Fl_DerivedDouble_Window*>(self))->handle_super(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Double_Window_parent)(fl_Double_Window win){+    return (fl_Group) (static_cast<Fl_DerivedDouble_Window*>(win))->parent();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_parent)(fl_Double_Window win,fl_Group grp){+    (static_cast<Fl_DerivedDouble_Window*>(win))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Double_Window_type)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->type();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_type)(fl_Double_Window win,uchar t){+    (static_cast<Fl_DerivedDouble_Window*>(win))->type(t);+  }++  FL_EXPORT_C(int,Fl_Double_Window_x)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->x();+  }+  FL_EXPORT_C(int,Fl_Double_Window_y)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->y();+  }+  FL_EXPORT_C(int,Fl_Double_Window_w)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->w();+  }+  FL_EXPORT_C(int,Fl_Double_Window_h)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->h();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_align)(fl_Double_Window double_window, Fl_Align alignment){+    (static_cast<Fl_DerivedDouble_Window*>(double_window))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Double_Window_align)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Double_Window_box)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->box();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_box)(fl_Double_Window win,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedDouble_Window*>(win))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Double_Window_color)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->color();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_color)(fl_Double_Window win,Fl_Color bg){+    (static_cast<Fl_DerivedDouble_Window*>(win))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_color_with_bg_sel)(fl_Double_Window win,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedDouble_Window*>(win))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Double_Window_selection_color)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_selection_color)(fl_Double_Window win,Fl_Color a){+    (static_cast<Fl_DerivedDouble_Window*>(win))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Double_Window_label)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->label();+  }+  FL_EXPORT_C(void,Fl_Double_Window_copy_label)(fl_Double_Window win,const char* new_label){+    (static_cast<Fl_DerivedDouble_Window*>(win))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_label)(fl_Double_Window win,const char* text){+    (static_cast<Fl_DerivedDouble_Window*>(win))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Double_Window_labeltype)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_labeltype)(fl_Double_Window win,Fl_Labeltype a){+    (static_cast<Fl_DerivedDouble_Window*>(win))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_labelcolor)(fl_Double_Window win,Fl_Color c){+    (static_cast<Fl_DerivedDouble_Window*>(win))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Double_Window_labelcolor)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Double_Window_labelfont)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_labelfont)(fl_Double_Window win,Fl_Font c){+    (static_cast<Fl_DerivedDouble_Window*>(win))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Double_Window_labelsize)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_labelsize)(fl_Double_Window win,Fl_Fontsize pix){+    (static_cast<Fl_DerivedDouble_Window*>(win))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Double_Window_image)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->image();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_image)(fl_Double_Window win,fl_Image pix){+    (static_cast<Fl_DerivedDouble_Window*>(win))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Double_Window_deimage)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->deimage();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_deimage)(fl_Double_Window win,fl_Image pix){+    (static_cast<Fl_DerivedDouble_Window*>(win))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Double_Window_tooltip)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Double_Window_copy_tooltip)(fl_Double_Window win,const char* text){+    (static_cast<Fl_DerivedDouble_Window*>(win))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_tooltip)(fl_Double_Window win,const char* text){+    (static_cast<Fl_DerivedDouble_Window*>(win))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_callback_with_user_data)(fl_Double_Window win,fl_Callback* cb,void* p){+    Fl_Double_Window* castedWindow = (static_cast<Fl_DerivedDouble_Window*>(win));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_callback)(fl_Double_Window win,fl_Callback* cb){+    Fl_Double_Window* castedWindow = (static_cast<Fl_DerivedDouble_Window*>(win));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Double_Window_user_data)(fl_Double_Window win){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedDouble_Window*>(win))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedDouble_Window*>(win))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_user_data)(fl_Double_Window win,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedDouble_Window*>(win))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_DerivedDouble_Window*>(win))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_DerivedDouble_Window*>(win))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Double_Window_argument)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->argument();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_argument)(fl_Double_Window win,long v){+    (static_cast<Fl_DerivedDouble_Window*>(win))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Double_Window_when)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->when();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_when)(fl_Double_Window win,uchar i){+    (static_cast<Fl_DerivedDouble_Window*>(win))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_visible)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->visible();+  }+  FL_EXPORT_C(int,Fl_Double_Window_visible_r)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_visible)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->visible();+  }+  FL_EXPORT_C(void,Fl_Double_Window_clear_visible)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_active)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->active();+  }+  FL_EXPORT_C(int,Fl_Double_Window_active_r)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->active_r();+  }+  FL_EXPORT_C(void,Fl_Double_Window_activate)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->activate();+  }+  FL_EXPORT_C(void,Fl_Double_Window_deactivate)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_output)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_output)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Double_Window_clear_output)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_takesevents)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_changed)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->changed();+  }+  FL_EXPORT_C(void,Fl_Double_Window_clear_changed)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Double_Window_take_focus)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_visible_focus)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Double_Window_clear_visible_focus)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Double_Window_modify_visible_focus)(fl_Double_Window win,int v){+    (static_cast<Fl_DerivedDouble_Window*>(win))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_visible_focus)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Double_Window_do_callback)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Double_Window_do_callback_with_widget_and_user_data)(fl_Double_Window win,fl_Widget w,long arg){+    (static_cast<Fl_DerivedDouble_Window*>(win))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Double_Window_do_callback_with_widget_and_default_user_data)(fl_Double_Window win,fl_Widget w){+    (static_cast<Fl_DerivedDouble_Window*>(win))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Double_Window_contains)(fl_Double_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Double_Window_inside)(fl_Double_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Double_Window_redraw)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->redraw();+  }+  FL_EXPORT_C(void,Fl_Double_Window_redraw_label)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Double_Window_damage)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->damage();+  }+  FL_EXPORT_C(void,Fl_Double_Window_clear_damage_with_bitmask)(fl_Double_Window win,uchar c){+    (static_cast<Fl_DerivedDouble_Window*>(win))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Double_Window_clear_damage)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Double_Window_damage_with_text)(fl_Double_Window win,uchar c){+    (static_cast<Fl_DerivedDouble_Window*>(win))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Double_Window_damage_inside_widget)(fl_Double_Window win,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedDouble_Window*>(win))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Double_Window_draw_super)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->draw_super();+  }+  FL_EXPORT_C(void,Fl_Double_Window_draw_label_with_xywh_alignment)(fl_Double_Window win,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedDouble_Window*>(win))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Double_Window_measure_label)(fl_Double_Window win,int* ww,int* hh){+    (static_cast<Fl_DerivedDouble_Window*>(win))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Double_Window_window)(fl_Double_Window double_window){+    return (fl_Window) (static_cast<Fl_DerivedDouble_Window*>(double_window))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Double_Window_top_window)(fl_Double_Window double_window){+    return (fl_Window) (static_cast<Fl_DerivedDouble_Window*>(double_window))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Double_Window_top_window_offset)(fl_Double_Window double_window, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedDouble_Window*>(double_window))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Double_Window_as_group)(fl_Double_Window win){+    return (fl_Group) (static_cast<Fl_DerivedDouble_Window*>(win))->as_group();+  }+  FL_EXPORT_C(fl_Group,Fl_Double_Window_as_group_super)(fl_Double_Window win){+    return (fl_Group) (static_cast<Fl_DerivedDouble_Window*>(win))->as_group_super();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Double_Window_as_gl_window)(fl_Double_Window win){+    return (fl_Gl_Window) (static_cast<Fl_DerivedDouble_Window*>(win))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Double_Window_as_gl_window_super)(fl_Double_Window win){+    return (fl_Gl_Window) (static_cast<Fl_DerivedDouble_Window*>(win))->as_gl_window();+  }+  FL_EXPORT_C(void, Fl_Double_Window_draw_child)(fl_Double_Window Double_Window,fl_Widget widget){+    (static_cast<Fl_DerivedDouble_Window*>(Double_Window))->draw_child(static_cast<Fl_Widget*>(widget));+  }+  FL_EXPORT_C(void, Fl_Double_Window_draw_children)(fl_Double_Window Double_Window){+    (static_cast<Fl_DerivedDouble_Window*>(Double_Window))->draw_children();+  }+  FL_EXPORT_C(void, Fl_Double_Window_draw_outside_label)(fl_Double_Window Double_Window,fl_Widget widget){+    (static_cast<Fl_DerivedDouble_Window*>(Double_Window))->draw_outside_label(static_cast<Fl_Widget*>(widget));+  }+  FL_EXPORT_C(void, Fl_Double_Window_update_child)(fl_Double_Window Double_Window,fl_Widget widget){+    (static_cast<Fl_DerivedDouble_Window*>(Double_Window))->update_child(static_cast<Fl_Widget*>(widget));+  }+  FL_EXPORT_C(int*, Fl_Double_Window_sizes)(fl_Double_Window Double_Window){+    return (static_cast<Fl_DerivedDouble_Window*>(Double_Window))->sizes();+  }+  FL_EXPORT_C(void,Fl_Double_Window_begin)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->begin();+  }+  FL_EXPORT_C(void,Fl_Double_Window_end)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->end();+  }+  FL_EXPORT_C(int,Fl_Double_Window_find)(fl_Double_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Double_Window_add)(fl_Double_Window win,fl_Widget w){+    (static_cast<Fl_DerivedDouble_Window*>(win))->add((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Double_Window_insert)(fl_Double_Window win,fl_Widget w,int i){+    (static_cast<Fl_DerivedDouble_Window*>(win))->insert(*(static_cast<Fl_Widget*>(w)),i);+  }+  FL_EXPORT_C(void,Fl_Double_Window_remove_index)(fl_Double_Window win,int index){+    (static_cast<Fl_DerivedDouble_Window*>(win))->remove(index);+  }+  FL_EXPORT_C(void,Fl_Double_Window_remove_widget)(fl_Double_Window win,fl_Widget w){+    (static_cast<Fl_DerivedDouble_Window*>(win))->remove((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Double_Window_clear)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->clear();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_resizable_by_reference)(fl_Double_Window win,fl_Widget o){+    (static_cast<Fl_DerivedDouble_Window*>(win))->resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_resizable)(fl_Double_Window win,fl_Widget o){+    (static_cast<Fl_DerivedDouble_Window*>(win))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Double_Window_resizable)(fl_Double_Window win){+    return (fl_Widget)(static_cast<Fl_DerivedDouble_Window*>(win))->resizable();+  }+  FL_EXPORT_C(void,Fl_Double_Window_add_resizable)(fl_Double_Window win,fl_Widget o){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Double_Window_init_sizes)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->init_sizes();+  }+  FL_EXPORT_C(int,Fl_Double_Window_children)(fl_Double_Window self){+    return (static_cast<Fl_DerivedDouble_Window*>(self))->children();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_clip_children)(fl_Double_Window win,int c){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_clip_children)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Double_Window_focus)(fl_Double_Window win, fl_Widget W){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Double_Window__ddfdesign_kludge)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(void, Fl_Double_Window_insert_with_before)(fl_Double_Window self, fl_Widget w, fl_Widget before){+    (static_cast<Fl_DerivedDouble_Window*>(self))->insert(*(static_cast<Fl_Widget*>(w)),(static_cast<Fl_Widget*>(before)));+  }+  FL_EXPORT_C(fl_Widget*, Fl_Double_Window_array)(fl_Double_Window self){+    return (fl_Widget*)(static_cast<Fl_DerivedDouble_Window*>(self))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Double_Window_child)(fl_Double_Window self, int n){+    return (fl_Widget)(static_cast<Fl_DerivedDouble_Window*>(self))->child(n);+  }+  // FL_EXPORT_C(void,Fl_Double_Window_forms_end)(fl_Double_Window win){+  //   return (static_cast<Fl_DerivedDouble_Window*>(win))->forms_end();+  // }+  FL_EXPORT_C(fl_Double_Window, Fl_Double_Window_New_WithLabel)(int w, int h, const char* title) {+    fl_Window_Virtual_Funcs* funcs = Fl_Window_default_virtual_funcs();+    Fl_DerivedDouble_Window* window = new Fl_DerivedDouble_Window(w,h,title,funcs);+    return (static_cast<fl_Double_Window>(window));+  }+  FL_EXPORT_C(fl_Double_Window, Fl_Double_Window_New)(int w, int h) {+    fl_Double_Window_Virtual_Funcs* funcs = Fl_Double_Window_default_virtual_funcs();+    Fl_DerivedDouble_Window* window = new Fl_DerivedDouble_Window(w,h,0,funcs);+    return (fl_Double_Window)window;+  }+  FL_EXPORT_C(fl_Double_Window, Fl_Double_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title) {+    fl_Double_Window_Virtual_Funcs* funcs = Fl_Double_Window_default_virtual_funcs();+    Fl_DerivedDouble_Window* window = new Fl_DerivedDouble_Window(x,y,w,h,title,funcs);+    return (fl_Double_Window)window;+  }+  FL_EXPORT_C(fl_Double_Window, Fl_Double_Window_NewXY)(int x, int y, int w, int h) {+    fl_Double_Window_Virtual_Funcs* funcs = Fl_Double_Window_default_virtual_funcs();+    Fl_DerivedDouble_Window* window = new Fl_DerivedDouble_Window(x,y,w,h,0,funcs);+    return (fl_Double_Window)window;+  }+  FL_EXPORT_C(fl_Double_Window, Fl_OverriddenDouble_Window_New_WithLabel)(int w, int h, const char* title, fl_Double_Window_Virtual_Funcs* funcs) {+    Fl_DerivedDouble_Window* window = new Fl_DerivedDouble_Window(w,h,title,funcs);+    return (static_cast<fl_Double_Window>(window));+  }+  FL_EXPORT_C(fl_Double_Window, Fl_OverriddenDouble_Window_New)(int w, int h,fl_Double_Window_Virtual_Funcs* funcs) {+    Fl_DerivedDouble_Window* window = new Fl_DerivedDouble_Window(w,h,0,funcs);+    return (fl_Double_Window)window;+  }+  FL_EXPORT_C(fl_Double_Window, Fl_OverriddenDouble_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title,fl_Double_Window_Virtual_Funcs* funcs) {+    Fl_DerivedDouble_Window* window = new Fl_DerivedDouble_Window(x,y,w,h,title,funcs);+    return (fl_Double_Window)window;+  }+  FL_EXPORT_C(fl_Double_Window, Fl_OverriddenDouble_Window_NewXY)(int x, int y, int w, int h,fl_Double_Window_Virtual_Funcs* funcs) {+    Fl_DerivedDouble_Window* window = new Fl_DerivedDouble_Window(x,y,w,h,0,funcs);+    return (fl_Double_Window)window;+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_changed)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->changed();+  }+  FL_EXPORT_C(void,Fl_Double_Window_fullscreen)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->fullscreen();+  }+  FL_EXPORT_C(void,Fl_Double_Window_fullscreen_off)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->fullscreen_off();+  }+  FL_EXPORT_C(void,Fl_Double_Window_fullscreen_off_with_resize)(fl_Double_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedDouble_Window*>(win))->fullscreen_off(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Double_Window_hide)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->hide();+  }+  FL_EXPORT_C(void,Fl_Double_Window_hide_super)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->hide_super();+  }+  FL_EXPORT_C(void,Fl_Double_Window_show)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->show();+  }+  FL_EXPORT_C(void,Fl_Double_Window_show_super)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->show_super();+  }+  FL_EXPORT_C(void,Fl_Double_Window_show_with_args)(fl_Double_Window win,int argc,char** argv){+    (static_cast<Fl_DerivedDouble_Window*>(win))->show(argc,argv);+  }+  FL_EXPORT_C(void,Fl_Double_Window_Destroy)(fl_Double_Window win){+    delete (static_cast<Fl_DerivedDouble_Window*>(win));+  }+  FL_EXPORT_C(void,Fl_Double_Window_resize)(fl_Double_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedDouble_Window*>(win))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Double_Window_resize_super)(fl_Double_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedDouble_Window*>(win))->resize_super(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Double_Window_iconize)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->iconize();+  }+  FL_EXPORT_C(void,Fl_Double_Window_flush)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->flush();+  }+  FL_EXPORT_C(void,Fl_Double_Window_flush_super)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->flush_super();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_border)(fl_Double_Window win,int b){+    (static_cast<Fl_DerivedDouble_Window*>(win))->border(b);+  }+  FL_EXPORT_C(void,Fl_Double_Window_clear_border)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->clear_border();+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_border)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->border();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_override)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->set_override();+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_override)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->override();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_modal)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->set_modal();+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_modal)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->modal();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_non_modal)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->set_non_modal();+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_non_modal)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->non_modal();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_menu_window)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->set_menu_window();+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_menu_window)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->menu_window();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_tooltip_window)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->set_tooltip_window();+  }+  FL_EXPORT_C(unsigned int,Fl_Double_Window_tooltip_window)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->tooltip_window();+  }+  FL_EXPORT_C(void,Fl_Double_Window_hotspot_with_x_y)(fl_Double_Window win,int x,int y){+    (static_cast<Fl_DerivedDouble_Window*>(win))->hotspot(x,y);+  }+  FL_EXPORT_C(void,Fl_Double_Window_hotspot_with_x_y_with_offscreen)(fl_Double_Window win,int x,int y,int offscreen){+    (static_cast<Fl_DerivedDouble_Window*>(win))->hotspot(x,y,offscreen);+  }+  FL_EXPORT_C(void,Fl_Double_Window_hotspot_with_widget)(fl_Double_Window win,fl_Widget w){+    (static_cast<Fl_DerivedDouble_Window*>(win))->hotspot((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Double_Window_hotspot_with_widget_with_offscreen)(fl_Double_Window win,fl_Widget w,int offscreen){+    (static_cast<Fl_DerivedDouble_Window*>(win))->hotspot((static_cast<Fl_Widget*>(w)),offscreen);+  }+  FL_EXPORT_C(void,Fl_Double_Window_free_position)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->free_position();+  }+  FL_EXPORT_C(void,Fl_Double_Window_size_range)(fl_Double_Window win,int minw,int minh){+    (static_cast<Fl_DerivedDouble_Window*>(win))->size_range(minw,minh);+  }+  FL_EXPORT_C(void,Fl_Double_Window_size_range_with_args)(fl_Double_Window win,int minw,int minh,fl_Window_size_range_args* ptr){+    (static_cast<Fl_DerivedDouble_Window*>(win))->size_range(minw,minh,ptr->maxw, ptr->maxh, ptr->dw,ptr->dh,ptr->aspect);+  }+  FL_EXPORT_C(const char*,Fl_Double_Window_iconlabel)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->iconlabel();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_iconlabel)(fl_Double_Window win,const char* label){+    (static_cast<Fl_DerivedDouble_Window*>(win))->iconlabel(label);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_label_with_iconlabel)(fl_Double_Window win,const char* label,const char* iconlabel){+    (static_cast<Fl_DerivedDouble_Window*>(win))->label(label,iconlabel);+  }+  FL_EXPORT_C(const char*,Fl_Double_Window_xclass)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->xclass();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_xclass)(fl_Double_Window win,const char* c){+    (static_cast<Fl_DerivedDouble_Window*>(win))->xclass(c);+  }+  FL_EXPORT_C(const void*,Fl_Double_Window_icon)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->icon();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_icon)(fl_Double_Window win,const void * ic){+    (static_cast<Fl_DerivedDouble_Window*>(win))->icon(ic);+  }+  FL_EXPORT_C(int,Fl_Double_Window_shown)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->shown();+  }+  FL_EXPORT_C(int,Fl_Double_Window_x_root)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->x_root();+  }+  FL_EXPORT_C(int,Fl_Double_Window_y_root)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->y_root();+  }+  FL_EXPORT_C(void,Fl_Double_Window_make_current)(fl_Double_Window win){+    (static_cast<Fl_DerivedDouble_Window*>(win))->make_current();+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_cursor_with_bg)(fl_Double_Window win,Fl_Cursor cursor,Fl_Color bg){+    (static_cast<Fl_DerivedDouble_Window*>(win))->cursor(cursor,bg);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_cursor_with_fg)(fl_Double_Window win,Fl_Cursor cursor,Fl_Color fg){+    (static_cast<Fl_DerivedDouble_Window*>(win))->cursor(cursor,fg);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_cursor_with_fg_bg)(fl_Double_Window win,Fl_Cursor cursor,Fl_Color fg,Fl_Color bg){+    (static_cast<Fl_DerivedDouble_Window*>(win))->cursor(cursor,fg,bg);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_cursor)(fl_Double_Window win,Fl_Cursor cursor){+    (static_cast<Fl_DerivedDouble_Window*>(win))->cursor(cursor);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_default_cursor_with_bg)(fl_Double_Window win,Fl_Cursor cursor,Fl_Color bg){+    (static_cast<Fl_DerivedDouble_Window*>(win))->default_cursor(cursor,bg);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_default_cursor_with_fg)(fl_Double_Window win,Fl_Cursor cursor,Fl_Color fg){+    (static_cast<Fl_DerivedDouble_Window*>(win))->default_cursor(cursor,fg);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_default_cursor_with_fg_bg)(fl_Double_Window win,Fl_Cursor cursor,Fl_Color fg,Fl_Color bg){+    (static_cast<Fl_DerivedDouble_Window*>(win))->default_cursor(cursor,fg,bg);+  }+  FL_EXPORT_C(void,Fl_Double_Window_set_default_cursor)(fl_Double_Window win,Fl_Cursor cursor){+    (static_cast<Fl_DerivedDouble_Window*>(win))->default_cursor(cursor);+  }+  FL_EXPORT_C(int,Fl_Double_Window_decorated_w)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->decorated_w();+  }+  FL_EXPORT_C(int,Fl_Double_Window_decorated_h)(fl_Double_Window win){+    return (static_cast<Fl_DerivedDouble_Window*>(win))->decorated_h();+  }+  FL_EXPORT_C(void, Fl_Double_Window_set_default_xclass)(const char* label){+    Fl_Double_Window::default_xclass(label);+  }+  FL_EXPORT_C(const char*, Fl_Double_Window_default_xclass)(){+    return Fl_Double_Window::default_xclass();+  }+  FL_EXPORT_C(fl_Window, Fl_Double_Window_current)(){+    return (fl_Window)Fl_Double_Window::current();+  }+  FL_EXPORT_C(void, Fl_Double_Window_default_callback)(fl_Double_Window win, void* v){+    Fl_Double_Window::default_callback((static_cast<Fl_DerivedDouble_Window*>(win)), v);+  }+  FL_EXPORT_C(void, Fl_Double_Window_wait_for_expose)(fl_Double_Window win) {+    return (static_cast<Fl_DerivedDouble_Window*>(win))->wait_for_expose();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Double_WindowC.h view
@@ -0,0 +1,265 @@+#ifndef __FL_DOUBLE_WINDOW_C__+#define __FL_DOUBLE_WINDOW_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Double_Window.H"+#include "Fl_WindowC.h"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Double_Window_handle)(fl_Double_Window self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Double_Window_parent)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_parent)(fl_Double_Window win, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Double_Window_type)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_type)(fl_Double_Window win, uchar t);++  FL_EXPORT_C(int,          Fl_Double_Window_x)(fl_Double_Window win);+  FL_EXPORT_C(int,          Fl_Double_Window_y)(fl_Double_Window win);+  FL_EXPORT_C(int,          Fl_Double_Window_w)(fl_Double_Window win);+  FL_EXPORT_C(int,          Fl_Double_Window_h)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_align)(fl_Double_Window double_window, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Double_Window_align)(fl_Double_Window win);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Double_Window_box)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_box)(fl_Double_Window win, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Double_Window_color)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_color)(fl_Double_Window win, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Double_Window_set_color_with_bg_sel)(fl_Double_Window win,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Double_Window_selection_color)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_selection_color)(fl_Double_Window win, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Double_Window_label)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_copy_label)(fl_Double_Window win, const char* new_label);+  FL_EXPORT_C(void,         Fl_Double_Window_set_label)(fl_Double_Window win, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Double_Window_labeltype)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_labeltype)(fl_Double_Window win, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Double_Window_labelcolor)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_labelcolor)(fl_Double_Window win, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Double_Window_labelfont)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_labelfont)(fl_Double_Window win, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Double_Window_labelsize)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_labelsize)(fl_Double_Window win, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Double_Window_image)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_image)(fl_Double_Window win, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Double_Window_deimage)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_deimage)(fl_Double_Window win, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Double_Window_tooltip)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_copy_tooltip)(fl_Double_Window win, const char* text);+  FL_EXPORT_C(void,         Fl_Double_Window_set_tooltip)(fl_Double_Window win, const char* text);+  FL_EXPORT_C(void,         Fl_Double_Window_set_callback_with_user_data)(fl_Double_Window win, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Double_Window_set_callback)(fl_Double_Window win, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Double_Window_user_data)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_user_data)(fl_Double_Window win, void* v);+  FL_EXPORT_C(long,         Fl_Double_Window_argument)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_argument)(fl_Double_Window win, long v);+  FL_EXPORT_C(Fl_When,      Fl_Double_Window_when)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_when)(fl_Double_Window win, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Double_Window_visible)(fl_Double_Window win);+  FL_EXPORT_C(int,          Fl_Double_Window_visible_r)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_visible)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_clear_visible)(fl_Double_Window win);+  FL_EXPORT_C(unsigned int, Fl_Double_Window_active)(fl_Double_Window win);+  FL_EXPORT_C(int,          Fl_Double_Window_active_r)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_activate)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_deactivate)(fl_Double_Window win);+  FL_EXPORT_C(unsigned int, Fl_Double_Window_output)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_output)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_clear_output)(fl_Double_Window win);+  FL_EXPORT_C(unsigned int, Fl_Double_Window_takesevents)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_changed)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_clear_changed)(fl_Double_Window win);+  FL_EXPORT_C(int,          Fl_Double_Window_take_focus)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_visible_focus)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_clear_visible_focus)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_modify_visible_focus)(fl_Double_Window win, int v);+  FL_EXPORT_C(unsigned int, Fl_Double_Window_visible_focus)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_do_callback)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_do_callback_with_widget_and_user_data)(fl_Double_Window win, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Double_Window_do_callback_with_widget_and_default_user_data)(fl_Double_Window win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Double_Window_contains)(fl_Double_Window win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Double_Window_inside)(fl_Double_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Double_Window_redraw)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_redraw_label)(fl_Double_Window win);+  FL_EXPORT_C(uchar,        Fl_Double_Window_damage)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_clear_damage_with_bitmask)(fl_Double_Window win, uchar c);+  FL_EXPORT_C(void,         Fl_Double_Window_clear_damage)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_damage_with_text)(fl_Double_Window win, uchar c);+  FL_EXPORT_C(void,         Fl_Double_Window_damage_inside_widget)(fl_Double_Window win, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Double_Window_draw_label_with_xywh_alignment)(fl_Double_Window win, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Double_Window_measure_label)(fl_Double_Window win, int* ww , int* hh);+  FL_EXPORT_C(fl_Group,     Fl_Double_Window_as_group)(fl_Double_Window win);+  FL_EXPORT_C(fl_Gl_Window, Fl_Double_Window_as_gl_window)(fl_Double_Window win);+  FL_EXPORT_C(fl_Window,    Fl_Double_Window_window)(fl_Double_Window double_window);+  FL_EXPORT_C(fl_Window,    Fl_Double_Window_top_window)(fl_Double_Window double_window);+  FL_EXPORT_C(fl_Window ,   Fl_Double_Window_top_window_offset)(fl_Double_Window double_window, int* xoff, int* yoff);+  /* Inherited from Fl_Group */+  FL_EXPORT_C(void, Fl_Double_Window_draw_child)(fl_Double_Window Double_Window,fl_Widget widget);+  FL_EXPORT_C(void, Fl_Double_Window_draw_children)(fl_Double_Window Double_Window);+  FL_EXPORT_C(void, Fl_Double_Window_draw_outside_label)(fl_Double_Window Double_Window,fl_Widget widget);+  FL_EXPORT_C(void, Fl_Double_Window_update_child)(fl_Double_Window Double_Window,fl_Widget widget);+  FL_EXPORT_C(int*, Fl_Double_Window_sizes)(fl_Double_Window Double_Window);+  FL_EXPORT_C(void,         Fl_Double_Window_begin)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_end)(fl_Double_Window win);+  FL_EXPORT_C(int,          Fl_Double_Window_find)(fl_Double_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Double_Window_add)(fl_Double_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Double_Window_insert)(fl_Double_Window win, fl_Widget w, int i);+  FL_EXPORT_C(void,         Fl_Double_Window_remove_index)(fl_Double_Window win, int index);+  FL_EXPORT_C(void,         Fl_Double_Window_remove_widget)(fl_Double_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Double_Window_clear)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_resizable_by_reference)(fl_Double_Window win,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Double_Window_set_resizable)(fl_Double_Window win,fl_Widget o);+  FL_EXPORT_C(fl_Widget,         Fl_Double_Window_resizable)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_add_resizable)(fl_Double_Window win,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Double_Window_init_sizes)(fl_Double_Window win);+  FL_EXPORT_C(int,          Fl_Double_Window_children)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_set_clip_children)(fl_Double_Window win,int c);+  FL_EXPORT_C(unsigned int, Fl_Double_Window_clip_children)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_focus)(fl_Double_Window win,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Double_Window__ddfdesign_kludge)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_insert_with_before)(fl_Double_Window self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Double_Window_array)(fl_Double_Window self);+  FL_EXPORT_C(fl_Widget,    Fl_Double_Window_child)(fl_Double_Window self, int n);+  FL_EXPORT_C(void,         Fl_Double_Window_forms_end)(fl_Double_Window self);+  /* FL_EXPORT_C(void,         Fl_Double_Window_forms_end)(fl_Double_Window win); */+  /* Fl_Window inherited */+  FL_EXPORT_C(unsigned int, Fl_Double_Window_changed)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_fullscreen)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_fullscreen_off)(fl_Double_Window win);+  FL_EXPORT_C(void,         Fl_Double_Window_fullscreen_off_with_resize)(fl_Double_Window win,int X,int Y,int W,int H);+  FL_EXPORT_C(fl_Double_Window,    Fl_Double_Window_New_WithLabel)(int w, int h, const char* title);+  FL_EXPORT_C(fl_Double_Window,    Fl_Double_Window_New)(int w, int h);+  FL_EXPORT_C(fl_Double_Window,    Fl_Double_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title);+  FL_EXPORT_C(fl_Double_Window,    Fl_Double_Window_NewXY)(int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Double_Window_iconize)(fl_Double_Window win);++  FL_EXPORT_C(fl_Double_Window, Fl_OverriddenDouble_Window_New_WithLabel)(int w, int h, const char* title, fl_Double_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Double_Window, Fl_OverriddenDouble_Window_New)(int w, int h,fl_Double_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Double_Window, Fl_OverriddenDouble_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title,fl_Double_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Double_Window, Fl_OverriddenDouble_Window_NewXY)(int x, int y, int w, int h,fl_Double_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(void ,Fl_Double_Window_set_border)(fl_Double_Window win, int b);+  FL_EXPORT_C(void ,Fl_Double_Window_clear_border)(fl_Double_Window win);+  FL_EXPORT_C(unsigned int ,Fl_Double_Window_border)(fl_Double_Window win);+  FL_EXPORT_C(void ,Fl_Double_Window_set_override)(fl_Double_Window win);+  FL_EXPORT_C(unsigned int,Fl_Double_Window_override)(fl_Double_Window win);+  FL_EXPORT_C(void ,Fl_Double_Window_set_modal)(fl_Double_Window win);+  FL_EXPORT_C(unsigned int,Fl_Double_Window_modal)(fl_Double_Window win);+  FL_EXPORT_C(void ,Fl_Double_Window_set_non_modal)(fl_Double_Window win);+  FL_EXPORT_C(unsigned int ,Fl_Double_Window_non_modal)(fl_Double_Window win);+  FL_EXPORT_C(void ,Fl_Double_Window_set_menu_window)(fl_Double_Window win);+  FL_EXPORT_C(unsigned int,Fl_Double_Window_menu_window)(fl_Double_Window win);+  FL_EXPORT_C(void ,Fl_Double_Window_set_tooltip_window)(fl_Double_Window win);+  FL_EXPORT_C(unsigned int,Fl_Double_Window_tooltip_window)(fl_Double_Window win);+  FL_EXPORT_C(void ,Fl_Double_Window_hotspot_with_x_y)(fl_Double_Window win, int x, int y);+  FL_EXPORT_C(void ,Fl_Double_Window_hotspot_with_x_y_with_offscreen)(fl_Double_Window win, int x, int y, int offscreen);+  FL_EXPORT_C(void ,Fl_Double_Window_hotspot_with_widget)(fl_Double_Window win, fl_Widget w);//, int offscreen = 0);+  FL_EXPORT_C(void ,Fl_Double_Window_hotspot_with_widget_with_offscreen)(fl_Double_Window win, fl_Widget w, int offscreen);+  FL_EXPORT_C(void ,Fl_Double_Window_free_position)(fl_Double_Window win);+  FL_EXPORT_C(void ,Fl_Double_Window_size_range)(fl_Double_Window win, int minw, int minh);+  FL_EXPORT_C(void ,Fl_Double_Window_size_range_with_args)(fl_Window win, int minw, int minh, fl_Window_size_range_args* args);//int maxw=0, int maxh=0, int dw=0, int dh=0, int aspect=0);+  FL_EXPORT_C(const char*, Fl_Double_Window_label)(fl_Double_Window win);+  FL_EXPORT_C(const char*, Fl_Double_Window_iconlabel)(fl_Double_Window win);+  FL_EXPORT_C(void, Fl_Double_Window_set_label)(fl_Double_Window win,const char*);+  FL_EXPORT_C(void, Fl_Double_Window_set_iconlabel)(fl_Double_Window win,const char*);+  FL_EXPORT_C(void, Fl_Double_Window_set_label_with_iconlabel)(fl_Double_Window win,const char* label, const char* iconlabel);+  FL_EXPORT_C(void, Fl_Double_Window_copy_label)(fl_Double_Window win,const char* a);+  FL_EXPORT_C(void, Fl_Double_Window_set_default_xclass)(const char* label);+  FL_EXPORT_C(const char*, Fl_Double_Window_default_xclass)();+  FL_EXPORT_C(const char*, Fl_Double_Window_xclass)(fl_Double_Window win);+  FL_EXPORT_C(void, Fl_Double_Window_set_xclass)(fl_Double_Window win,const char* c);+  FL_EXPORT_C(const void*, Fl_Double_Window_icon)(fl_Double_Window win);+  FL_EXPORT_C(void, Fl_Double_Window_set_icon)(fl_Double_Window win,const void * ic);+  FL_EXPORT_C(int, Fl_Double_Window_shown)(fl_Double_Window win);+  FL_EXPORT_C(void, Fl_Double_Window_iconize)(fl_Double_Window win);+  FL_EXPORT_C(int, Fl_Double_Window_x_root)(fl_Double_Window win);+  FL_EXPORT_C(int, Fl_Double_Window_y_root)(fl_Double_Window win);+  FL_EXPORT_C(fl_Double_Window, Fl_Double_Window_current)();+  FL_EXPORT_C(void, Fl_Double_Window_make_current)(fl_Double_Window win);+  FL_EXPORT_C(void, Fl_Double_Window_set_cursor_with_bg)(fl_Double_Window win, Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void, Fl_Double_Window_set_cursor_with_fg)(fl_Double_Window win,Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void, Fl_Double_Window_set_cursor_with_fg_bg)(fl_Double_Window win,Fl_Cursor cursor, Fl_Color fg , Fl_Color bg );/* =FL_BLACK *//*=FL_WHITE*/+  FL_EXPORT_C(void, Fl_Double_Window_set_cursor)(fl_Double_Window win,Fl_Cursor cursor);+  FL_EXPORT_C(void, Fl_Double_Window_set_default_cursor_with_bg)(fl_Double_Window win,Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void, Fl_Double_Window_set_default_cursor_with_fg)(fl_Double_Window win, Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void, Fl_Double_Window_set_default_cursor_with_fg_bg)(fl_Double_Window win,Fl_Cursor cursor, Fl_Color fg , Fl_Color bg );+  FL_EXPORT_C(void, Fl_Double_Window_set_default_cursor)(fl_Double_Window win,Fl_Cursor cursor);+  FL_EXPORT_C(void, Fl_Double_Window_default_callback)(fl_Double_Window win, void* v);+  FL_EXPORT_C(int, Fl_Double_Window_decorated_w)(fl_Double_Window win);+  FL_EXPORT_C(int, Fl_Double_Window_decorated_h)(fl_Double_Window win);+  /* Fl_Double_Window specific */+  // flush resize destructor, constructor+#ifdef __cplusplus+  class Fl_DerivedDouble_Window : public Fl_Double_Window {+    fl_Double_Window_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void destroy_data();+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    void draw_super();+    virtual int handle(int event);+    int handle_super(int event);+    virtual void resize(int x, int y, int w, int h);+    void resize_super(int x, int y, int w, int h);+    virtual void show();+    void show_super();+    virtual void show(int,char**);+    virtual void hide();+    void hide_super();+    virtual void flush();+    void flush_super();+    virtual Fl_Window* as_window();+    Fl_Window* as_window_super();+    virtual Fl_Group* as_group();+    Fl_Group* as_group_super();+    virtual Fl_Gl_Window* as_gl_window();+    Fl_Gl_Window* as_gl_window_super();+    void draw_child(Fl_Widget* widget);+    void draw_children();+    void draw_outside_label(Fl_Widget* widget);+    void update_child(Fl_Widget* widget);+    int* sizes();+    Fl_DerivedDouble_Window(int X, int Y, int W, int H, const char *l, fl_Double_Window_Virtual_Funcs* funcs);+    Fl_DerivedDouble_Window(int X, int Y, int W, int H, fl_Double_Window_Virtual_Funcs* funcs);+    Fl_DerivedDouble_Window(int W, int H, const char *l, fl_Double_Window_Virtual_Funcs* funcs);+    Fl_DerivedDouble_Window(int W, int H, fl_Double_Window_Virtual_Funcs* funcs);+    ~Fl_DerivedDouble_Window();+  };+#endif+  FL_EXPORT_C(fl_Double_Window_Virtual_Funcs*, Fl_Double_Window_default_virtual_funcs)();+  FL_EXPORT_C(int ,		Fl_Double_Window_handle)(fl_Double_Window win, int event);+  FL_EXPORT_C(int ,		Fl_Double_Window_handle_super)(fl_Double_Window win, int event);+  FL_EXPORT_C(void,		Fl_Double_Window_draw_super)(fl_Double_Window win);+  FL_EXPORT_C(fl_Group,		Fl_Double_Window_as_group)(fl_Double_Window window);+  FL_EXPORT_C(fl_Window,	Fl_Double_Window_as_window)(fl_Double_Window window);+  FL_EXPORT_C(fl_Gl_Window,	Fl_Double_Window_as_gl_window)(fl_Double_Window window);+  FL_EXPORT_C(fl_Group,		Fl_Double_Window_as_group_super)(fl_Double_Window window);+  FL_EXPORT_C(fl_Window,	Fl_Double_Window_as_window_super)(fl_Double_Window window);+  FL_EXPORT_C(fl_Gl_Window,	Fl_Double_Window_as_gl_window_super)(fl_Double_Window window);+  FL_EXPORT_C(void,		Fl_Double_Window_show_super)(fl_Double_Window win);+  FL_EXPORT_C(void,		Fl_Double_Window_show)(fl_Double_Window win);+  FL_EXPORT_C(void,		Fl_Double_Window_show_with_args)(fl_Double_Window win, int argc, char** argv);+  FL_EXPORT_C(void,		Fl_Double_Window_Destroy)(fl_Double_Window win);+  FL_EXPORT_C(void,		Fl_Double_Window_flush_super)(fl_Double_Window win);+  FL_EXPORT_C(void,		Fl_Double_Window_flush)(fl_Double_Window win);+  FL_EXPORT_C(void,		Fl_Double_Window_resize_super)(fl_Double_Window win, int X, int Y, int W, int H);+  FL_EXPORT_C(void,		Fl_Double_Window_resize)(fl_Double_Window win, int X, int Y, int W, int H);+  FL_EXPORT_C(void,		Fl_Double_Window_hide_super)(fl_Double_Window win);+  FL_EXPORT_C(void,             Fl_Double_Window_hide)(fl_Double_Window win);+  FL_EXPORT_C(void,             fl_Double_Window_wait_for_expose)(fl_Double_Window win);++#ifdef __cplusplus+}+#endif++#endif /* __FL_DOUBLE_WINDOW_C__ */
+ c-src/Fl_DrawC.cpp view
@@ -0,0 +1,425 @@+#include "Fl_DrawC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(void,flc_set_color)(Fl_Color c){+    fl_color(c);+  }+  FL_EXPORT_C(void,flc_set_color_with_c)(int c){+    fl_color(c);+  }+  FL_EXPORT_C(void,flc_set_color_with_rgb)(uchar r,uchar g,uchar b){+    fl_color(r,g,b);+  }+  FL_EXPORT_C(Fl_Color,flc_color)(void){+    return fl_color();+  }+  FL_EXPORT_C(void,flc_push_clip)(int x,int y,int w,int h){+    fl_push_clip(x,y,w,h);+  }+  FL_EXPORT_C(void,flc_push_no_clip)( ){+    fl_push_no_clip();+  }+  FL_EXPORT_C(void,flc_pop_clip)( ){+    fl_pop_clip();+  }+  FL_EXPORT_C(int,flc_not_clipped)(int x,int y,int w,int h){+    return fl_not_clipped(x,y,w,h);+  }+  FL_EXPORT_C(int,flc_clip_box)(int x,int y,int w,int h,int* X,int* Y,int* W,int* H){+    return fl_clip_box(x,y,w,h,*X,*Y,*W,*H);+  }+  FL_EXPORT_C(void,flc_restore_clip)( ){+    fl_restore_clip();+  }+  FL_EXPORT_C(void,flc_set_clip_region)(fl_Region r){+    fl_clip_region((static_cast<Fl_Region>(r)));+  }+  FL_EXPORT_C(fl_Region,flc_clip_region)( ){+    return (fl_Region)fl_clip_region();+  }+  FL_EXPORT_C(void,flc_point)(int x,int y){+    fl_point(x,y);+  }+  FL_EXPORT_C(void,flc_line_style_with_width_dashes)(int style,int width,char* dashes){+    fl_line_style(style,width,dashes);+  }+  FL_EXPORT_C(void,flc_line_style_with_dashes)(int style,char* dashes){+    fl_line_style(style,0,dashes);+  }+  FL_EXPORT_C(void,flc_line_style_with_width)(int style,int width){+    fl_line_style(style,width,0);+  }+  FL_EXPORT_C(void,flc_line_style)(int style){+    fl_line_style(style,0,0);+  }+  FL_EXPORT_C(void,flc_rect)(int x,int y,int w,int h){+    fl_rect(x,y,w,h);+  }+  FL_EXPORT_C(void,flc_rect_with_color)(int x,int y,int w,int h,Fl_Color c){+    fl_rect(x,y,w,h,c);+  }+  FL_EXPORT_C(void,flc_rectf)(int x,int y,int w,int h){+    fl_rectf(x,y,w,h);+  }+  FL_EXPORT_C(void,flc_rectf_with_color)(int x,int y,int w,int h,Fl_Color c){+    fl_rectf(x,y,w,h,c);+  }+  FL_EXPORT_C(void,flc_rectf_with_rgb)(int x,int y,int w,int h,uchar r,uchar g,uchar b){+    fl_rectf(x,y,w,h,r,g,b);+  }+  FL_EXPORT_C(void,flc_line)(int x,int y,int x1,int y1){+    fl_line(x,y,x1,y1);+  }+  FL_EXPORT_C(void,flc_line_with_x2_y2)(int x,int y,int x1,int y1,int x2,int y2){+    fl_line(x,y,x1,y1,x2,y2);+  }+  FL_EXPORT_C(void,flc_loop)(int x,int y,int x1,int y1,int x2,int y2){+    fl_loop(x,y,x1,y1,x2,y2);+  }+  FL_EXPORT_C(void,flc_loop_with_x3_y3)(int x,int y,int x1,int y1,int x2,int y2,int x3,int y3){+    fl_loop(x,y,x1,y1,x2,y2,x3,y3);+  }+  FL_EXPORT_C(void,flc_polygon)(int x,int y,int x1,int y1,int x2,int y2){+    fl_polygon(x,y,x1,y1,x2,y2);+  }+  FL_EXPORT_C(void,flc_polygon_with_x3_y3)(int x,int y,int x1,int y1,int x2,int y2,int x3,int y3){+    fl_polygon(x,y,x1,y1,x2,y2,x3,y3);+  }+  FL_EXPORT_C(void,flc_xyline)(int x,int y,int x1){+    fl_xyline(x,y,x1);+  }+  FL_EXPORT_C(void,flc_xyline_with_x2)(int x,int y,int x1,int y2){+    fl_xyline(x,y,x1,y2);+  }+  FL_EXPORT_C(void,flc_xyline_with_y2_x3)(int x,int y,int x1,int y2,int x3){+    fl_xyline(x,y,x1,y2,x3);+  }+  FL_EXPORT_C(void,flc_yxline_with_y1)(int x,int y,int y1){+    fl_yxline(x,y,y1);+  }+  FL_EXPORT_C(void,flc_yxline_with_y2_x2)(int x,int y,int y1,int x2){+    fl_yxline(x,y,y1,x2);+  }+  FL_EXPORT_C(void,flc_yxline_with_y2_x3)(int x,int y,int y1,int x2,int y3){+    fl_yxline(x,y,y1,x2,y3);+  }+  FL_EXPORT_C(void,flc_arc_by_width_height)(int x,int y,int w,int h,double a1,double a2){+    fl_arc(x,y,w,h,a1,a2);+  }+  FL_EXPORT_C(void,flc_pie)(int x,int y,int w,int h,double a1,double a2){+    fl_pie(x,y,w,h,a1,a2);+  }+  FL_EXPORT_C(void,flc_push_matrix)( ){+    fl_push_matrix();+  }+  FL_EXPORT_C(void,flc_pop_matrix)( ){+    fl_pop_matrix();+  }+  FL_EXPORT_C(void,flc_scale_with_y)(double x,double y){+    fl_scale(x,y);+  }+  FL_EXPORT_C(void,flc_scale)(double x){+    fl_scale(x);+  }+  FL_EXPORT_C(void,flc_translate)(double x,double y){+    fl_translate(x,y);+  }+  FL_EXPORT_C(void,flc_rotate)(double d){+    fl_rotate(d);+  }+  FL_EXPORT_C(void,flc_mult_matrix)(double a,double b,double c,double d,double x,double y){+    fl_mult_matrix(a,b,c,d,x,y);+  }+  FL_EXPORT_C(void,flc_begin_points)( ){+    fl_begin_points();+  }+  FL_EXPORT_C(void,flc_begin_line)( ){+    fl_begin_line();+  }+  FL_EXPORT_C(void,flc_begin_loop)( ){+    fl_begin_loop();+  }+  FL_EXPORT_C(void,flc_begin_polygon)( ){+    fl_begin_polygon();+  }+  FL_EXPORT_C(void,flc_vertex)(double x,double y){+    fl_vertex(x,y);+  }+  FL_EXPORT_C(void,flc_curve)(double X0,double Y0,double X1,double Y1,double X2,double Y2,double X3,double Y3){+    fl_curve(X0,Y0,X1,Y1,X2,Y2,X3,Y3);+  }+  FL_EXPORT_C(void,flc_arc_by_radius)(double x,double y,double r,double start,double end){+    fl_arc(x,y,r,start,end);+  }+  FL_EXPORT_C(void,flc_circle)(double x,double y,double r){+    fl_circle(x,y,r);+  }+  FL_EXPORT_C(void,flc_end_points)( ){+    fl_end_points();+  }+  FL_EXPORT_C(void,flc_end_line)( ){+    fl_end_line();+  }+  FL_EXPORT_C(void,flc_end_loop)( ){+    fl_end_loop();+  }+  FL_EXPORT_C(void,flc_end_polygon)( ){+    fl_end_polygon();+  }+  FL_EXPORT_C(void,flc_begin_complex_polygon)( ){+    fl_begin_complex_polygon();+  }+  FL_EXPORT_C(void,flc_gap)( ){+    fl_gap();+  }+  FL_EXPORT_C(void,flc_end_complex_polygon)( ){+    fl_end_complex_polygon();+  }+  FL_EXPORT_C(double,flc_transform_x)(double x,double y){+    return fl_transform_x(x,y);+  }+  FL_EXPORT_C(double,flc_transform_y)(double x,double y){+    return fl_transform_y(x,y);+  }+  FL_EXPORT_C(double,flc_transform_dx)(double x,double y){+    return fl_transform_dx(x,y);+  }+  FL_EXPORT_C(double,flc_transform_dy)(double x,double y){+    return fl_transform_dy(x,y);+  }+  FL_EXPORT_C(void,flc_transformed_vertex)(double xf,double yf){+    fl_transformed_vertex(xf,yf);+  }+  FL_EXPORT_C(void,flc_set_font)(Fl_Font face,Fl_Fontsize fsize){+    fl_font(face,fsize);+  }+  FL_EXPORT_C(Fl_Font,flc_font)( ){+    return fl_font();+  }+  FL_EXPORT_C(Fl_Fontsize,flc_size)( ){+    return fl_size();+  }+  FL_EXPORT_C(int,flc_height)( ){+    return fl_height();+  }+  FL_EXPORT_C(int,flc_set_height)(int font,int size){+    return fl_height(font,size);+  }+  FL_EXPORT_C(int,flc_descent)( ){+    return fl_descent();+  }+  FL_EXPORT_C(double,flc_width)(const char* txt){+    return fl_width(txt);+  }+  FL_EXPORT_C(double,flc_width_with_n)(const char* txt,int n){+    return fl_width(txt,n);+  }+  FL_EXPORT_C(double,flc_width_with_c)(unsigned int c){+    return fl_width(c);+  }+  FL_EXPORT_C(void,flc_text_extents)(const char* t,int* dx,int* dy,int* w,int* h){+    fl_text_extents(t,*dx,*dy,*w,*h);+  }+  FL_EXPORT_C(void,flc_text_extents_with_n)(const char *t,int n,int* dx,int* dy,int* w,int* h){+    fl_text_extents(t,n,*dx,*dy,*w,*h);+  }+  FL_EXPORT_C(const char*,flc_latin1_to_local)(const char *t){+    return fl_latin1_to_local(t);+  }+  FL_EXPORT_C(const char*,flc_latin1_to_local_with_n)(const char *t,int n){+    return fl_latin1_to_local(t,n);+  }+  FL_EXPORT_C(const char*,flc_local_to_latin1)(const char *t){+    return fl_local_to_latin1(t);+  }+  FL_EXPORT_C(const char*,flc_local_to_latin1_with_n)(const char *t,int n){+    return fl_local_to_latin1(t,n);+  }+  FL_EXPORT_C(const char*,flc_mac_roman_to_local)(const char *t){+    return fl_mac_roman_to_local(t);+  }+  FL_EXPORT_C(const char*,flc_mac_roman_to_local_with_n)(const char *t,int n){+    return fl_mac_roman_to_local(t,n);+  }+  FL_EXPORT_C(const char*,flc_local_to_mac_roman)(const char *t){+    return fl_local_to_mac_roman(t);+  }+  FL_EXPORT_C(const char*,flc_local_to_mac_roman_with_n)(const char *t,int n){+    return fl_local_to_mac_roman(t,n);+  }+  FL_EXPORT_C(void,flc_draw)(const char* str,int x,int y){+    fl_draw(str,x,y);+  }+  FL_EXPORT_C(void,flc_draw_with_angle)(int angle,const char* str,int x,int y){+    fl_draw(angle,str,x,y);+  }+  FL_EXPORT_C(void,flc_draw_with_n)(const char* str,int n,int x,int y){+    fl_draw(str,n,x,y);+  }+  FL_EXPORT_C(void,flc_draw_with_n_angle)(int angle,const char* str,int n,int x,int y){+    fl_draw(angle,str,n,x,y);+  }+  FL_EXPORT_C(void,flc_rtl_draw)(const char* str,int n,int x,int y){+    fl_rtl_draw(str,n,x,y);+  }+  FL_EXPORT_C(void,flc_measure)(const char* str,int* x,int* y){+    fl_measure(str,*x,*y);+  }+  FL_EXPORT_C(void,flc_measure_with_draw_symbols)(const char* str,int* x,int* y,int draw_symbols){+    fl_measure(str,*x,*y,draw_symbols);+  }+  FL_EXPORT_C(void,flc_draw_with_img_draw_symbols)(const char* str,int x,int y,int w,int h,Fl_Align align,fl_Image img,int draw_symbols){+    fl_draw(str,x,y,w,h,align,(static_cast<Fl_Image*>(img)),draw_symbols);+  }+  FL_EXPORT_C(void,flc_draw_with_img)(const char* str,int x,int y,int w,int h,Fl_Align align,fl_Image img){+    fl_draw(str,x,y,w,h,align,(static_cast<Fl_Image*>(img)),0);+  }+  FL_EXPORT_C(void,flc_draw_with_draw_symbols)(const char* str,int x,int y,int w,int h,Fl_Align align,int draw_symbols){+    fl_draw(str,x,y,w,h,align,0,draw_symbols);+  }+  FL_EXPORT_C(void,flc_draw_with_align)(const char* str,int x,int y,int w,int h,Fl_Align align){+    fl_draw(str,x,y,w,h,align);+  }+  FL_EXPORT_C(void,flc_draw_with_callthis_img_draw_symbols)(const char* str, int x, int y, int w, int h, Fl_Align align,void (*callthis)(const char *,int,int,int), fl_Image img,int draw_symbols){+    fl_draw(str,x,y,w,h,align,callthis,(static_cast<Fl_Image*>(img)),draw_symbols);+  }+  FL_EXPORT_C(void,flc_draw_with_callthis_img)(const char* str, int x, int y, int w, int h, Fl_Align align,void (*callthis)(const char *,int,int,int), fl_Image img){+    fl_draw(str,x,y,w,h,align,callthis,(static_cast<Fl_Image*>(img)),1);+  }+  FL_EXPORT_C(void,flc_draw_with_callthis_draw_symbols)(const char* str, int x, int y, int w, int h, Fl_Align align,void (*callthis)(const char *,int,int,int), int draw_symbols){+    fl_draw(str,x,y,w,h,align,callthis,0,draw_symbols);+  }+  FL_EXPORT_C(void,flc_draw_with_callthis)(const char* str, int x, int y, int w, int h, Fl_Align align,void (*callthis)(const char *,int,int,int)){+    fl_draw(str,x,y,w,h,align,callthis,0,1);+  }+  FL_EXPORT_C(void,flc_frame)(const char* s,int x,int y,int w,int h){+    fl_frame(s,x,y,w,h);+  }+  FL_EXPORT_C(void,flc_frame2)(const char* s,int x,int y,int w,int h){+    fl_frame2(s,x,y,w,h);+  }+  FL_EXPORT_C(void,flc_draw_box)(Fl_Boxtype boxtype,int x,int y,int w,int h,Fl_Color color){+    fl_draw_box(boxtype,x,y,w,h,color);+  }+  FL_EXPORT_C(void,flc_draw_image_buf_with_d_l)(const uchar* buf,int X,int Y,int W,int H,int D,int L){+    fl_draw_image(buf,X,Y,W,H,D,L);+  }+  FL_EXPORT_C(void,flc_draw_image_buf_with_d)(const uchar* buf,int X,int Y,int W,int H,int D){+    fl_draw_image(buf,X,Y,W,H,D,0);+  }+  FL_EXPORT_C(void,flc_draw_image_buf_with_l)(const uchar* buf,int X,int Y,int W,int H,int L){+    fl_draw_image(buf,X,Y,W,H,3,L);+  }+  FL_EXPORT_C(void,flc_draw_image_buf)(const uchar* buf,int X,int Y,int W,int H){+    fl_draw_image(buf,X,Y,W,H,3,0);+  }+  FL_EXPORT_C(void,flc_draw_image_mono_buf_with_d_l)(const uchar* buf,int X,int Y,int W,int H,int D,int L){+    fl_draw_image_mono(buf,X,Y,W,H,D,L);+  }+  FL_EXPORT_C(void,flc_draw_image_mono_buf_with_d)(const uchar* buf,int X,int Y,int W,int H,int D){+    fl_draw_image_mono(buf,X,Y,W,H,D,0);+  }+  FL_EXPORT_C(void,flc_draw_image_mono_buf_with_l)(const uchar* buf,int X,int Y,int W,int H,int L){+    fl_draw_image_mono(buf,X,Y,W,H,1,L);+  }+  FL_EXPORT_C(void,flc_draw_image_mono_buf)(const uchar* buf,int X,int Y,int W,int H){+    fl_draw_image_mono(buf,X,Y,W,H,1,0);+  }+  FL_EXPORT_C(void,flc_draw_image_cb)(Fl_Draw_Image_Cb cb,void* data,int X,int Y,int W,int H){+    fl_draw_image(cb,data,X,Y,W,H,3);+  }+  FL_EXPORT_C(void,flc_draw_image_cb_with_d)(Fl_Draw_Image_Cb cb,void* data,int X,int Y,int W,int H,int D){+    fl_draw_image(cb,data,X,Y,W,H,D);+  }+  FL_EXPORT_C(void,flc_draw_image_mono_cb_with_d)(Fl_Draw_Image_Cb cb,void* data,int X,int Y,int W,int H,int D){+    fl_draw_image_mono(cb,data,X,Y,W,H,D);+  }+  FL_EXPORT_C(void,flc_draw_image_mono_cb)(Fl_Draw_Image_Cb cb,void* data,int X,int Y,int W,int H){+    fl_draw_image_mono(cb,data,X,Y,W,H);+  }+  FL_EXPORT_C(char,flc_can_do_alpha_blending)( ){+    return fl_can_do_alpha_blending();+  }+  FL_EXPORT_C(uchar*,flc_read_image_with_alpha)(uchar *p,int X,int Y,int W,int H,int alpha){+    return fl_read_image(p,X,Y,W,H,alpha);+  }+  FL_EXPORT_C(uchar*,flc_read_image)(uchar* p,int X,int Y,int W,int H){+    return fl_read_image(p,X,Y,W,H);+  }+  FL_EXPORT_C(int,flc_draw_pixmap_with_color)(char* const* data,int x,int y,Fl_Color color){+    return fl_draw_pixmap(data,x,y,color);+  }+  FL_EXPORT_C(int,flc_draw_pixmap)(char* const* data,int x,int y){+    return fl_draw_pixmap(data,x,y,FL_GRAY);+  }+  FL_EXPORT_C(int,flc_draw_pixmap_with_cdata_color)(char* const* cdata,int x,int y,Fl_Color color){+    return fl_draw_pixmap(cdata,x,y,color);+  }+  FL_EXPORT_C(int,flc_draw_pixmap_with_cdata)(char* const* cdata,int x,int y){+    return fl_draw_pixmap(cdata,x,y);+  }+  FL_EXPORT_C(int,flc_measure_pixmap)(char* const* data,int *w,int *h){+    return fl_measure_pixmap(data,*w,*h);+  }++  FL_EXPORT_C(int,flc_measure_pixmap_with_cdata)(const char* const* cdata,int *w,int *h){+    return fl_measure_pixmap(cdata,*w,*h);+  }+  FL_EXPORT_C(void,flc_scroll)(int X, int Y, int W, int H, int dx, int dy, void (*draw_area)(void*, int,int,int,int), void* data){+    fl_scroll(X,Y,W,H,dx,dy,draw_area,data);+  }+  FL_EXPORT_C(const char*,flc_shortcut_label)(unsigned int shortcut){+    return fl_shortcut_label(shortcut);+  }+  FL_EXPORT_C(const char*,flc_shortcut_label_with_eom)(unsigned int shortcut,const char **eom){+    return fl_shortcut_label(shortcut,eom);+  }+  FL_EXPORT_C(unsigned int,flc_old_shortcut)(const char* s){+    return fl_old_shortcut(s);+  }+  FL_EXPORT_C(void,flc_overlay_rect)(int x,int y,int w,int h){+    fl_overlay_rect(x,y,w,h);+  }+  FL_EXPORT_C(void,flc_overlay_clear)( ){+    fl_overlay_clear();+  }+  FL_EXPORT_C(void,flc_cursor_with_fg_bg)(Fl_Cursor cursore,Fl_Color fg,Fl_Color bg){+    fl_cursor(cursore,fg,bg);+  }+  FL_EXPORT_C(void,flc_cursor_with_fg)(Fl_Cursor cursor,Fl_Color fg){+    fl_cursor(cursor,fg);+  }+  FL_EXPORT_C(void,flc_cursor_with_bg)(Fl_Cursor cursor,Fl_Color bg){+    fl_cursor(cursor,bg);+  }+  FL_EXPORT_C(void,flc_cursor)(Fl_Cursor cursor){+    fl_cursor(cursor);+  }+  FL_EXPORT_C(const char*,flc_expand_text_with_draw_symbols)(const char* from,char* buf,int maxbuf,double maxw,int* n,double *width,int wrap,int draw_symbols){+    return fl_expand_text(from,buf,maxbuf,maxw,*n,*width,wrap,draw_symbols);+  }+  FL_EXPORT_C(const char*,flc_expand_text)(const char* from,char* buf,int maxbuf,double maxw,int* n,double *width,int wrap){+    return fl_expand_text(from,buf,maxbuf,maxw,*n,*width,wrap);+  }+  FL_EXPORT_C(void,flc_set_status)(int X,int Y,int W,int H){+    fl_set_status(X,Y,W,H);+  }+  FL_EXPORT_C(void,flc_set_spot_with_win)(int font,int size,int X,int Y,int W,int H,fl_Window win){+    fl_set_spot(font,size,X,Y,W,H,(static_cast<Fl_Window*>(win)));+  }+  FL_EXPORT_C(void,flc_set_spot)(int font,int size,int X,int Y,int W,int H){+    fl_set_spot(font,size,X,Y,W,H);+  }+  FL_EXPORT_C(void,flc_reset_spot)( ){+    fl_reset_spot();+  }+  FL_EXPORT_C(int,flc_draw_symbol)(const char* label,int x,int y,int w,int h,Fl_Color color){+    return fl_draw_symbol(label,x,y,w,h,color);+  }+  FL_EXPORT_C(int,flc_add_symbol)(const char* name, void (*drawit)(Fl_Color), int scalable){+    return fl_add_symbol(name, drawit, scalable);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_DrawC.h view
@@ -0,0 +1,174 @@+#ifndef __FL_DRAW_C__+#define __FL_DRAW_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/fl_draw.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  typedef void (*Fl_Draw_Image_Cb)(void* data,int x,int y,int w,uchar* buf);+  FL_EXPORT_C(void      , flc_set_color)(Fl_Color c);+  FL_EXPORT_C(void      , flc_set_color_with_c)(int c);+  FL_EXPORT_C(void      , flc_set_color_with_rgb)(uchar r, uchar g, uchar b); // select actual color+  FL_EXPORT_C(Fl_Color  , flc_color)();+  FL_EXPORT_C(void      , flc_push_clip)(int x, int y, int w, int h);+#define fl_clipc fl_push_clipc+  FL_EXPORT_C(void      , flc_push_no_clip)();+  FL_EXPORT_C(void      , flc_pop_clip)();+  FL_EXPORT_C(int       , flc_not_clipped)(int x, int y, int w, int h);+  FL_EXPORT_C(int       , flc_clip_box)(int x , int y, int w, int h, int* X, int* Y, int* W, int* H);+  FL_EXPORT_C(void      , flc_restore_clip)();+  FL_EXPORT_C(void      , flc_set_clip_region)(fl_Region r);+  FL_EXPORT_C(fl_Region , flc_clip_region)();+  FL_EXPORT_C(void      , flc_point)(int x, int y);+  FL_EXPORT_C(void      , flc_line_style_with_width_dashes)(int style, int width, char* dashes);+  FL_EXPORT_C(void      , flc_line_style_with_dashes)(int style, char* dashes);+  FL_EXPORT_C(void      , flc_line_style_with_width)(int style, int width);+  FL_EXPORT_C(void      , flc_line_style)(int style);+#ifndef INTERNAL_LINKAGE  +  enum {+    FL_SOLID    = 0,+    FL_DASH     = 1,+    FL_DOT      = 2,+    FL_DASHDOT  = 3,+    FL_DASHDOTDOT       = 4,++    FL_CAP_FLAT = 0x100,+    FL_CAP_ROUND        = 0x200,+    FL_CAP_SQUARE       = 0x300,++    FL_JOIN_MITER       = 0x1000,+    FL_JOIN_ROUND       = 0x2000,+    FL_JOIN_BEVEL       = 0x3000+  };+#endif+  FL_EXPORT_C(void         , flc_rect)(int x, int y, int w, int h);+  FL_EXPORT_C(void         , flc_rect_with_color)(int x, int y, int w, int h, Fl_Color c);+  FL_EXPORT_C(void         , flc_rectf)(int x, int y, int w, int h);+  FL_EXPORT_C(void         , flc_rectf_with_color)(int x, int y, int w, int h, Fl_Color c);+  FL_EXPORT_C(void         , flc_rectf_with_rgb)(int x, int y, int w, int h, uchar r, uchar g, uchar b);+  FL_EXPORT_C(void         , flc_line)(int x, int y, int x1, int y1);+  FL_EXPORT_C(void         , flc_line_with_x2_y2)(int x, int y, int x1, int y1, int x2, int y2);+  FL_EXPORT_C(void         , flc_loop)(int x, int y, int x1, int y1, int x2, int y2);+  FL_EXPORT_C(void         , flc_loop_with_x3_y3)(int x, int y, int x1, int y1, int x2, int y2, int x3, int y3);+  FL_EXPORT_C(void         , flc_polygon)(int x, int y, int x1, int y1, int x2, int y2);+  FL_EXPORT_C(void         , flc_polygon_with_x3_y3)(int x, int y, int x1, int y1, int x2, int y2, int x3, int y3);+  FL_EXPORT_C(void         , flc_xyline)(int x, int y, int x1);+  FL_EXPORT_C(void         , flc_xyline_with_x2)(int x, int y, int x1, int y2);+  FL_EXPORT_C(void         , flc_xyline_with_y2_x3)(int x, int y, int x1, int y2, int x3);+  FL_EXPORT_C(void         , flc_yxline_with_y1)(int x, int y, int y1);+  FL_EXPORT_C(void         , flc_yxline_with_y2_x2)(int x, int y, int y1, int x2);+  FL_EXPORT_C(void         , flc_yxline_with_y2_x3)(int x, int y, int y1, int x2, int y3);+  FL_EXPORT_C(void         , flc_arc_by_width_height)(int x, int y, int w, int h, double a1, double a2);+  FL_EXPORT_C(void         , flc_pie)(int x, int y, int w, int h, double a1, double a2);+  FL_EXPORT_C(void         , flc_push_matrix)();+  FL_EXPORT_C(void         , flc_pop_matrix)();+  FL_EXPORT_C(void         , flc_scale_with_y)(double x, double y);+  FL_EXPORT_C(void         , flc_scale)(double x);+  FL_EXPORT_C(void         , flc_translate)(double x, double y);+  FL_EXPORT_C(void         , flc_rotate)(double d);+  FL_EXPORT_C(void         , flc_mult_matrix)(double a, double b, double c, double d, double x,double y);+  FL_EXPORT_C(void         , flc_begin_points)();+  FL_EXPORT_C(void         , flc_begin_line)();+  FL_EXPORT_C(void         , flc_begin_loop)();+  FL_EXPORT_C(void         , flc_begin_polygon)();+  FL_EXPORT_C(void         , flc_vertex)(double x, double y);+  FL_EXPORT_C(void         , flc_curve)(double X0, double Y0, double X1, double Y1, double X2, double Y2, double X3, double Y3);+  FL_EXPORT_C(void         , flc_arc_by_radius)(double x, double y, double r, double start, double end);+  FL_EXPORT_C(void         , flc_circle)(double x, double y, double r);+  FL_EXPORT_C(void         , flc_end_points)();+  FL_EXPORT_C(void         , flc_end_line)();+  FL_EXPORT_C(void         , flc_end_loop)();+  FL_EXPORT_C(void         , flc_end_polygon)();+  FL_EXPORT_C(void         , flc_begin_complex_polygon)();+  FL_EXPORT_C(void         , flc_gap)();+  FL_EXPORT_C(void         , flc_end_complex_polygon)();+  FL_EXPORT_C(double       , flc_transform_x)(double x, double y);+  FL_EXPORT_C(double       , flc_transform_y)(double x, double y);+  FL_EXPORT_C(double       , flc_transform_dx)(double x, double y);+  FL_EXPORT_C(double       , flc_transform_dy)(double x, double y);+  FL_EXPORT_C(void         , flc_transformed_vertex)(double xf, double yf);+  FL_EXPORT_C(void         , flc_set_font)(Fl_Font face, Fl_Fontsize fsize);+  FL_EXPORT_C(Fl_Font      , flc_font)();+  FL_EXPORT_C(Fl_Fontsize  , flc_size)();+  FL_EXPORT_C(int          , flc_height)();+  FL_EXPORT_C(int          , flc_set_height)(int font, int size);+  FL_EXPORT_C(int          , flc_descent)();+  FL_EXPORT_C(double       , flc_width)(const char* txt);+  FL_EXPORT_C(double       , flc_width_with_n)(const char* txt, int n);+  FL_EXPORT_C(double       , flc_width_with_c)(unsigned int c);+  FL_EXPORT_C(void         , flc_text_extents)(const char* s, int* dx, int* dy, int* w, int* h); // NO fltk symbol expansion will be performed+  FL_EXPORT_C(void         , flc_text_extents_with_n)(const char* t, int n, int* dx, int* dy, int* w, int* h);+  FL_EXPORT_C(const char*  , flc_latin1_to_local)(const char* t);+  FL_EXPORT_C(const char*  , flc_latin1_to_local_with_n)(const char* t, int n);+  FL_EXPORT_C(const char*  , flc_local_to_latin1)(const char* t);+  FL_EXPORT_C(const char*  , flc_local_to_latin1_with_n)(const char* t, int n);+  FL_EXPORT_C(const char*  , flc_mac_roman_to_local)(const char* t);+  FL_EXPORT_C(const char*  , flc_mac_roman_to_local_with_n)(const char* t, int n);+  FL_EXPORT_C(const char*  , flc_local_to_mac_roman)(const char* t);+  FL_EXPORT_C(const char*  , flc_local_to_mac_roman_with_n)(const char* t, int n);+  FL_EXPORT_C(void         , flc_draw)(const char* str, int x, int y);+  FL_EXPORT_C(void         , flc_draw_with_angle)(int angle, const char* str, int x, int y);+  FL_EXPORT_C(void         , flc_draw_with_n)(const char* str, int n, int x, int y);+  FL_EXPORT_C(void         , flc_draw_with_n_angle)(int angle, const char* str, int n, int x, int y);+  FL_EXPORT_C(void         , flc_rtl_draw)(const char* str, int n, int x, int y);+  FL_EXPORT_C(void         , flc_measure)(const char* str, int* x, int* y);+  FL_EXPORT_C(void         , flc_measure_with_draw_symbols)(const char* str, int* x, int* y,int draw_symbols);+  FL_EXPORT_C(void         , flc_draw_with_img_draw_symbols)(const char* str, int x, int y, int w, int h, Fl_Align align, fl_Image img,int draw_symbols);+  FL_EXPORT_C(void         , flc_draw_with_img)(const char* str, int x, int y, int w, int h, Fl_Align align, fl_Image img);+  FL_EXPORT_C(void         , flc_draw_with_draw_symbols)(const char* str, int x, int y, int w, int h, Fl_Align align,int draw_symbols);+  FL_EXPORT_C(void         , flc_draw_with_align)(const char* str, int x, int y, int w, int h, Fl_Align align);+  FL_EXPORT_C(void         , flc_draw_with_callthis_img_draw_symbols)(const char* str, int x, int y, int w, int h, Fl_Align align,void (*callthis)(const char* ,int,int,int), fl_Image img,int draw_symbols);+  FL_EXPORT_C(void         , flc_draw_with_callthis_img)(const char* str, int x, int y, int w, int h, Fl_Align align,void (*callthis)(const char* ,int,int,int), fl_Image img);+  FL_EXPORT_C(void         , flc_draw_with_callthis_draw_symbols)(const char* str, int x, int y, int w, int h, Fl_Align align,void (*callthis)(const char* ,int,int,int),int draw_symbols);+  FL_EXPORT_C(void         , flc_draw_with_callthis)(const char* str, int x, int y, int w, int h, Fl_Align align, void (*callthis)(const char* ,int,int,int));+  FL_EXPORT_C(void         , flc_frame)(const char* s, int x, int y, int w, int h);+  FL_EXPORT_C(void         , flc_frame2)(const char* s, int x, int y, int w, int h);+  FL_EXPORT_C(void         , flc_draw_box)(Fl_Boxtype boxtype, int x, int y, int w, int h, Fl_Color color);+  FL_EXPORT_C(void         , flc_draw_image_buf_with_d_l)(const uchar* buf, int X,int Y,int W,int H, int D, int L);+  FL_EXPORT_C(void         , flc_draw_image_buf_with_d)(const uchar* buf, int X,int Y,int W,int H, int D);+  FL_EXPORT_C(void         , flc_draw_image_buf_with_l)(const uchar* buf, int X,int Y,int W,int H,int L);+  FL_EXPORT_C(void         , flc_draw_image_buf)(const uchar* buf, int X,int Y,int W,int H);+  FL_EXPORT_C(void         , flc_draw_image_mono_buf_with_d_l)(const uchar* buf, int X,int Y,int W,int H, int D, int L);+  FL_EXPORT_C(void         , flc_draw_box)(Fl_Boxtype boxtype, int x, int y, int w, int h, Fl_Color color);+  FL_EXPORT_C(void         , flc_draw_image_mono_buf_with_d)(const uchar* buf, int X,int Y,int W,int H, int D);+  FL_EXPORT_C(void         , flc_draw_image_mono_buf_with_l)(const uchar* buf, int X,int Y,int W,int H, int L);+  FL_EXPORT_C(void         , flc_draw_image_mono_buf)(const uchar* buf, int X,int Y,int W,int H);+  FL_EXPORT_C(void         , flc_draw_image_cb)(Fl_Draw_Image_Cb cb, void* data, int X,int Y,int W,int H);+  FL_EXPORT_C(void         , flc_draw_image_cb_with_d)(Fl_Draw_Image_Cb cb, void* data, int X,int Y,int W,int H, int D);+  FL_EXPORT_C(void         , flc_draw_image_mono_cb_with_d)(Fl_Draw_Image_Cb cb, void* data, int X,int Y,int W,int H, int D);+  FL_EXPORT_C(void         , flc_draw_image_mono_cb)(Fl_Draw_Image_Cb cb, void* data, int X,int Y,int W,int H);+  FL_EXPORT_C(char         , flc_can_do_alpha_blending)();+  FL_EXPORT_C(uchar*       , flc_read_image_with_alpha)(uchar* p,int X,int Y,int W,int H,int alpha);+  FL_EXPORT_C(uchar*       , flc_read_image)(uchar* p,int X,int Y,int W,int H);+  FL_EXPORT_C(int          , flc_draw_pixmap_with_color)(char* const* data, int x,int y,Fl_Color color);+  FL_EXPORT_C(int          , flc_draw_pixmap)(char* const* data, int x,int y);+  FL_EXPORT_C(int          , flc_draw_pixmap_with_cdata_color)(char* const* cdata, int x,int y,Fl_Color color);+  FL_EXPORT_C(int          , flc_draw_pixmap_with_cdata)(char* const* cdata, int x,int y);+  FL_EXPORT_C(int          , flc_measure_pixmap)(char* const* data, int* w, int* h);+  FL_EXPORT_C(int          , flc_measure_pixmap_with_cdata)(const char* const* cdata, int* w, int* h);+  FL_EXPORT_C(void         , flc_scroll)(int X, int Y, int W, int H, int dx, int dy, void (*draw_area)(void*, int,int,int,int), void* data);+  FL_EXPORT_C(const char*  , flc_shortcut_label)(unsigned int shortcut);+  FL_EXPORT_C(const char*  , flc_shortcut_label_with_eom)(unsigned int shortcut, const char* *eom);+  FL_EXPORT_C(unsigned int , flc_old_shortcut)(const char* s);+  FL_EXPORT_C(void         , flc_overlay_rect)(int x,int y,int w,int h);+  FL_EXPORT_C(void         , flc_overlay_clear)();+  FL_EXPORT_C(void         , flc_cursor_with_fg_bg)(Fl_Cursor cursore, Fl_Color fg, Fl_Color bg);+  FL_EXPORT_C(void         , flc_cursor_with_fg)(Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void         , flc_cursor_with_bg)(Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void         , flc_cursor)(Fl_Cursor cursor);+  FL_EXPORT_C(const char*  , flc_expand_text_with_draw_symbols)(const char* from, char* buf, int maxbuf, double maxw, int* n, double* width, int wrap, int draw_symbols);+  FL_EXPORT_C(const char*  , flc_expand_text)(const char* from, char* buf, int maxbuf, double maxw, int* n, double *width, int wrap);+  FL_EXPORT_C(void         , flc_set_status)(int X, int Y, int W, int H);+  FL_EXPORT_C(void         , flc_set_spot_with_win)(int font, int size, int X, int Y, int W, int H, fl_Window win);+  FL_EXPORT_C(void         , flc_set_spot)(int font, int size, int X, int Y, int W, int H);+  FL_EXPORT_C(void         , flc_reset_spot)();+  FL_EXPORT_C(int          , flc_draw_symbol)(const char* label,int x,int y,int w,int h, Fl_Color color);+  FL_EXPORT_C(int          , flc_add_symbol)(const char* name, void (*drawit)(Fl_Color), int scalable);+#ifdef __cplusplus+}+#endif+#endif /* __FL_DRAW_C__ */
+ c-src/Fl_EnumerationsC.cpp view
@@ -0,0 +1,37 @@+#include <FL/Fl.H>+#include "Fl_ExportMacros.h"+#ifdef __cplusplus+#include "Fl_EnumerationsC.h"+EXPORT {+#endif  +  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_ROUND_UP_BOXC)(){ return fl_define_FL_ROUND_UP_BOX();}+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_SHADOW_BOXC)(){ return fl_define_FL_SHADOW_BOX();}+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_ROUNDED_BOXC)(){ return fl_define_FL_ROUNDED_BOX();}+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_RFLAT_BOXC)(){ return fl_define_FL_RFLAT_BOX();}+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_RSHADOW_BOXC)(){ return fl_define_FL_RSHADOW_BOX();}+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_DIAMOND_BOXC)(){ return fl_define_FL_DIAMOND_BOX();}+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_OVAL_BOXC)(){ return fl_define_FL_OVAL_BOX(); }+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_PLASTIC_UP_BOXC)(){ return fl_define_FL_PLASTIC_UP_BOX();}+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_GTK_UP_BOXC)(){ return fl_define_FL_GTK_UP_BOX();}+  FL_EXPORT_C(Fl_Boxtype, fl_boxC)(Fl_Boxtype b) { return fl_box(b);}+  FL_EXPORT_C(Fl_Boxtype, fl_downC)(Fl_Boxtype b) { return fl_down(b);}+  FL_EXPORT_C(Fl_Boxtype, fl_frameC)(Fl_Boxtype b) { return fl_frame(b);}+  FL_EXPORT_C(Fl_Labeltype, fl_define_FL_SHADOW_LABELC)() { return fl_define_FL_SHADOW_LABEL();}+  FL_EXPORT_C(Fl_Labeltype, fl_define_FL_ENGRAVED_LABELC)() { return fl_define_FL_ENGRAVED_LABEL();}+  FL_EXPORT_C(Fl_Labeltype, fl_define_FL_EMBOSSED_LABELC)() { return fl_define_FL_EMBOSSED_LABEL();}+  FL_EXPORT_C(Fl_Align, FL_ALIGN_TOP_LEFTC)(){ return FL_ALIGN_TOP | FL_ALIGN_LEFT;}+  FL_EXPORT_C(Fl_Align, FL_ALIGN_TOP_RIGHTC)(){ return FL_ALIGN_TOP | FL_ALIGN_RIGHT;}+  FL_EXPORT_C(Fl_Align, FL_ALIGN_BOTTOM_LEFTC)(){ return FL_ALIGN_BOTTOM | FL_ALIGN_LEFT;}+  FL_EXPORT_C(Fl_Align, FL_ALIGN_BOTTOM_RIGHTC)(){ return FL_ALIGN_BOTTOM | FL_ALIGN_RIGHT;}+  FL_EXPORT_C(Fl_Color, fl_inactiveC)(Fl_Color c) { return fl_inactive(c);};+  FL_EXPORT_C(Fl_Color, fl_contrastC)(Fl_Color fg, Fl_Color bg) { return fl_contrast(fg,bg);}+  FL_EXPORT_C(Fl_Color, fl_color_averageC)(Fl_Color c1, Fl_Color c2, float weight){ return fl_color_average(c1,c2,weight);}+  FL_EXPORT_C(Fl_Color, fl_lighterC)(Fl_Color c){return fl_lighter(c);}+  FL_EXPORT_C(Fl_Color, fl_darkerC)(Fl_Color c){return fl_darker(c);}+  FL_EXPORT_C(Fl_Color, fl_rgb_color_with_rgbC)(uchar r, uchar g, uchar b){return fl_rgb_color(r,g,b);}+  FL_EXPORT_C(Fl_Color, fl_rgb_color_with_grayscaleC)(uchar g){return fl_rgb_color(g);}+  FL_EXPORT_C(Fl_Color, fl_gray_rampC)(int i){return fl_gray_ramp(i);}+  FL_EXPORT_C(Fl_Color, fl_color_cubeC)(int r, int g, int b){return fl_color_cube(r,g,b);}+#ifdef __cplusplus+}+#endif
+ c-src/Fl_EnumerationsC.h view
@@ -0,0 +1,462 @@+#ifndef __FL_ENUMERATIONSC__+#define __FL_ENUMERATIONSC__+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#ifdef __cplusplus+#include "FL/Fl.H"+#include "FL/Enumerations.H"+EXPORT {+#endif+#ifndef INTERNAL_LINKAGE+#define FL_MAJOR_VERSION        1+#define FL_MINOR_VERSION        3+#define FL_PATCH_VERSION        0+#define FL_VERSION              ((double)FL_MAJOR_VERSION +             \+                                 (double)FL_MINOR_VERSION * 0.01 +      \+                                 (double)FL_PATCH_VERSION * 0.0001)+  typedef enum Fl_Event {       // events+    FL_NO_EVENT         = 0,+    FL_PUSH             = 1,+    FL_RELEASE          = 2,+    FL_ENTER            = 3,+    FL_LEAVE            = 4,+    FL_DRAG             = 5,+    FL_FOCUS            = 6,+    FL_UNFOCUS          = 7,+    FL_KEYDOWN          = 8,+    FL_KEYBOARD         = 8,+    FL_KEYUP            = 9,+    FL_CLOSE            = 10,+    FL_MOVE             = 11,+    FL_SHORTCUT         = 12,+    FL_DEACTIVATE               = 13,+    FL_ACTIVATE         = 14,+    FL_HIDE             = 15,+    FL_SHOW             = 16,+    FL_PASTE            = 17,+    FL_SELECTIONCLEAR   = 18,+    FL_MOUSEWHEEL               = 19,+    FL_DND_ENTER                = 20,+    FL_DND_DRAG         = 21,+    FL_DND_LEAVE                = 22,+    FL_DND_RELEASE      = 23,+    FL_SCREEN_CONFIGURATION_CHANGED = 24,+    FL_FULLSCREEN         = 25+  } Fl_Event;++  typedef enum Fl_When {+    FL_WHEN_NEVER               = 0,+    FL_WHEN_CHANGED     = 1,+    FL_WHEN_NOT_CHANGED = 2,+    FL_WHEN_RELEASE     = 4,+    FL_WHEN_RELEASE_ALWAYS= 6,+    FL_WHEN_ENTER_KEY   = 8,+    FL_WHEN_ENTER_KEY_ALWAYS=10,+    FL_WHEN_ENTER_KEY_CHANGED=11+  } Fl_When;+  typedef enum  Fl_Tree_Sort{+    FL_TREE_SORT_NONE=0,+    FL_TREE_SORT_ASCENDING=1,+    FL_TREE_SORT_DESCENDING=2+  } Fl_Tree_Sort;+  typedef enum   Fl_Tree_Connector{+    FL_TREE_CONNECTOR_NONE=0,+    FL_TREE_CONNECTOR_DOTTED=1,+    FL_TREE_CONNECTOR_SOLID=2+  } Fl_Tree_Connector;+  typedef enum  Fl_Tree_Select{+    FL_TREE_SELECT_NONE=0,+    FL_TREE_SELECT_SINGLE=1,+    FL_TREE_SELECT_MULTI=2+  }Fl_Tree_Select;+#if FLTK_ABI_VERSION >= 10302+  typedef enum  Fl_Tree_Item_Reselect_Mode{+    FL_TREE_SELECTABLE_ONCE=0,+    FL_TREE_SELECTABLE_ALWAYS,+  }Fl_Tree_Item_Reselect_Mode;+  typedef enum  Fl_Tree_Item_Draw_Mode{+    FL_TREE_ITEM_DRAW_DEFAULT=0,+    FL_TREE_ITEM_DRAW_LABEL_AND_WIDGET=1,+    FL_TREE_ITEM_HEIGHT_FROM_WIDGET=2+  }Fl_Tree_Item_Draw_Mode;+#endif /*FLTK_ABI_VERSION*/+#define FL_Button         0xfee8+#define FL_BackSpace      0xff08+#define FL_Tab            0xff09+#define FL_Iso_Key        0xff0c+#define FL_Enter          0xff0d+#define FL_Pause          0xff13+#define FL_Scroll_Lock    0xff14+#define FL_Escape         0xff1b+#define FL_Kana           0xff2e +#define FL_Eisu           0xff2f+#define FL_Yen            0xff30+#define FL_JIS_Underscore 0xff31+#define FL_Home           0xff50+#define FL_Left           0xff51+#define FL_Up             0xff52+#define FL_Right          0xff53+#define FL_Down           0xff54+#define FL_Page_Up        0xff55+#define FL_Page_Down      0xff56+#define FL_End            0xff57+#define FL_Print          0xff61+#define FL_Insert         0xff63+#define FL_Menu           0xff67+#define FL_Help           0xff68+#define FL_Num_Lock       0xff7f+#define FL_KP             0xff80+#define FL_KP_Enter       0xff8d+#define FL_KP_Last        0xffbd+#define FL_F              0xffbd+#define FL_F_Last         0xffe0+#define FL_Shift_L        0xffe1+#define FL_Shift_R        0xffe2+#define FL_Control_L      0xffe3+#define FL_Control_R      0xffe4+#define FL_Caps_Lock      0xffe5+#define FL_Meta_L         0xffe7+#define FL_Meta_R         0xffe8+#define FL_Alt_L          0xffe9+#define FL_Alt_R          0xffea+#define FL_Delete         0xffff+++#define FL_Volume_Down  0xEF11+#define FL_Volume_Mute  0xEF12+#define FL_Volume_Up    0xEF13+#define FL_Media_Play   0xEF14+#define FL_Media_Stop   0xEF15+#define FL_Media_Prev   0xEF16+#define FL_Media_Next   0xEF17+#define FL_Home_Page    0xEF18+#define FL_Mail         0xEF19+#define FL_Search       0xEF1B+#define FL_Back         0xEF26+#define FL_Forward      0xEF27+#define FL_Stop         0xEF28+#define FL_Refresh      0xEF29+#define FL_Sleep        0xEF2F+#define FL_Favorites    0xEF30++#define FL_LEFT_MOUSE   1+#define FL_MIDDLE_MOUSE 2+#define FL_RIGHT_MOUSE  3++#define FL_SHIFT        0x00010000+#define FL_CAPS_LOCK    0x00020000+#define FL_CTRL         0x00040000+#define FL_ALT          0x00080000+#define FL_NUM_LOCK     0x00100000++#define FL_META         0x00400000++#define FL_SCROLL_LOCK  0x00800000++#define FL_BUTTON1      0x01000000+#define FL_BUTTON2      0x02000000+#define FL_BUTTON3      0x04000000+#define FL_BUTTONS      0x7f000000+#define FL_BUTTON(n)    (0x00800000<<(n))++#define FL_KEY_MASK 0x0000ffff+++#ifdef __APPLE__+#  define FL_COMMAND    FL_META+#  define FL_CONTROL    FL_CTRL+#else+#  define FL_COMMAND    FL_CTRL+#  define FL_CONTROL    FL_META+#endif+  typedef enum Fl_Boxtype {+    FL_NO_BOX = 0,+    FL_FLAT_BOX,+    FL_UP_BOX,+    FL_DOWN_BOX,+    FL_UP_FRAME,+    FL_DOWN_FRAME,+    FL_THIN_UP_BOX,+    FL_THIN_DOWN_BOX,+    FL_THIN_UP_FRAME,+    FL_THIN_DOWN_FRAME,+    FL_ENGRAVED_BOX,+    FL_EMBOSSED_BOX,+    FL_ENGRAVED_FRAME,+    FL_EMBOSSED_FRAME,+    FL_BORDER_BOX,+    _FL_SHADOW_BOX,+    FL_BORDER_FRAME,+    _FL_SHADOW_FRAME,+    _FL_ROUNDED_BOX,+    _FL_RSHADOW_BOX,+    _FL_ROUNDED_FRAME,+    _FL_RFLAT_BOX,+    _FL_ROUND_UP_BOX,+    _FL_ROUND_DOWN_BOX,+    _FL_DIAMOND_UP_BOX,+    _FL_DIAMOND_DOWN_BOX,+    _FL_OVAL_BOX,+    _FL_OSHADOW_BOX,+    _FL_OVAL_FRAME,+    _FL_OFLAT_BOX,+    _FL_PLASTIC_UP_BOX,+    _FL_PLASTIC_DOWN_BOX,+    _FL_PLASTIC_UP_FRAME,+    _FL_PLASTIC_DOWN_FRAME,+    _FL_PLASTIC_THIN_UP_BOX,+    _FL_PLASTIC_THIN_DOWN_BOX,+    _FL_PLASTIC_ROUND_UP_BOX,+    _FL_PLASTIC_ROUND_DOWN_BOX,+    _FL_GTK_UP_BOX,+    _FL_GTK_DOWN_BOX,+    _FL_GTK_UP_FRAME,+    _FL_GTK_DOWN_FRAME,+    _FL_GTK_THIN_UP_BOX,+    _FL_GTK_THIN_DOWN_BOX,+    _FL_GTK_THIN_UP_FRAME,+    _FL_GTK_THIN_DOWN_FRAME,+    _FL_GTK_ROUND_UP_BOX,+    _FL_GTK_ROUND_DOWN_BOX,+    FL_FREE_BOXTYPE+  } Fl_Boxtype;++#define FL_ROUND_UP_BOX fl_define_FL_ROUND_UP_BOXC()+#define FL_ROUND_DOWN_BOX (Fl_Boxtype)(fl_define_FL_ROUND_UP_BOXC()+1)+#define FL_SHADOW_BOX fl_define_FL_SHADOW_BOXC()+#define FL_SHADOW_FRAME (Fl_Boxtype)(fl_define_FL_SHADOW_BOXC()+2)+#define FL_ROUNDED_BOX fl_define_FL_ROUNDED_BOXC()+#define FL_ROUNDED_FRAME (Fl_Boxtype)(fl_define_FL_ROUNDED_BOXC()+2)+#define FL_RFLAT_BOX fl_define_FL_RFLAT_BOXC()+#define FL_RSHADOW_BOX fl_define_FL_RSHADOW_BOXC()+#define FL_DIAMOND_UP_BOX fl_define_FL_DIAMOND_BOXC()+#define FL_DIAMOND_DOWN_BOX (Fl_Boxtype)(fl_define_FL_DIAMOND_BOXC()+1)+#define FL_OVAL_BOX fl_define_FL_OVAL_BOXC()+#define FL_OSHADOW_BOX (Fl_Boxtype)(fl_define_FL_OVAL_BOXC()+1)+#define FL_OVAL_FRAME (Fl_Boxtype)(fl_define_FL_OVAL_BOXC()+2)+#define FL_OFLAT_BOX (Fl_Boxtype)(fl_define_FL_OVAL_BOXC()+3)+#define FL_PLASTIC_UP_BOX fl_define_FL_PLASTIC_UP_BOXC()+#define FL_PLASTIC_DOWN_BOX (Fl_Boxtype)(fl_define_FL_PLASTIC_UP_BOXC()+1)+#define FL_PLASTIC_UP_FRAME (Fl_Boxtype)(fl_define_FL_PLASTIC_UP_BOXC()+2)+#define FL_PLASTIC_DOWN_FRAME (Fl_Boxtype)(fl_define_FL_PLASTIC_UP_BOXC()+3)+#define FL_PLASTIC_THIN_UP_BOX (Fl_Boxtype)(fl_define_FL_PLASTIC_UP_BOXC()+4)+#define FL_PLASTIC_THIN_DOWN_BOX (Fl_Boxtype)(fl_define_FL_PLASTIC_UP_BOXC()+5)+#define FL_PLASTIC_ROUND_UP_BOX (Fl_Boxtype)(fl_define_FL_PLASTIC_UP_BOXC()+6)+#define FL_PLASTIC_ROUND_DOWN_BOX (Fl_Boxtype)(fl_define_FL_PLASTIC_UP_BOXC()+7)+#define FL_GTK_UP_BOX fl_define_FL_GTK_UP_BOXC()+#define FL_GTK_DOWN_BOX (Fl_Boxtype)(fl_define_FL_GTK_UP_BOXC()+1)+#define FL_GTK_UP_FRAME (Fl_Boxtype)(fl_define_FL_GTK_UP_BOXC()+2)+#define FL_GTK_DOWN_FRAME (Fl_Boxtype)(fl_define_FL_GTK_UP_BOXC()+3)+#define FL_GTK_THIN_UP_BOX (Fl_Boxtype)(fl_define_FL_GTK_UP_BOXC()+4)+#define FL_GTK_THIN_DOWN_BOX (Fl_Boxtype)(fl_define_FL_GTK_UP_BOXC()+5)+#define FL_GTK_THIN_UP_FRAME (Fl_Boxtype)(fl_define_FL_GTK_UP_BOXC()+6)+#define FL_GTK_THIN_DOWN_FRAME (Fl_Boxtype)(fl_define_FL_GTK_UP_BOXC()+7)+#define FL_GTK_ROUND_UP_BOX (Fl_Boxtype)(fl_define_FL_GTK_UP_BOXC()+8)+#define FL_GTK_ROUND_DOWN_BOX (Fl_Boxtype)(fl_define_FL_GTK_UP_BOXC()+9)+#define FL_FRAME FL_ENGRAVED_FRAME+#define FL_FRAME_BOX FL_ENGRAVED_BOX+#define FL_CIRCLE_BOX FL_ROUND_DOWN_BOX+#define FL_DIAMOND_BOX FL_DIAMOND_DOWN_BOX+  typedef enum Fl_Labeltype {+    FL_NORMAL_LABEL     = 0,+    FL_NO_LABEL,+    _FL_SHADOW_LABEL,+    _FL_ENGRAVED_LABEL,+    _FL_EMBOSSED_LABEL,+    _FL_MULTI_LABEL,+    _FL_ICON_LABEL,+    _FL_IMAGE_LABEL,++    FL_FREE_LABELTYPE+  } Fl_Labeltype;++#define FL_SYMBOL_LABEL FL_NORMAL_LABEL+#define FL_SHADOW_LABEL fl_define_FL_SHADOW_LABELC()+#define FL_ENGRAVED_LABEL fl_define_FL_ENGRAVED_LABELC()+#define FL_EMBOSSED_LABEL fl_define_FL_EMBOSSED_LABELC()++  typedef unsigned Fl_Align;+  Fl_Align FL_ALIGN_CENTER             = (Fl_Align)0;+  Fl_Align FL_ALIGN_TOP                = (Fl_Align)1;+  Fl_Align FL_ALIGN_BOTTOM             = (Fl_Align)2;+  Fl_Align FL_ALIGN_LEFT               = (Fl_Align)4;+  Fl_Align FL_ALIGN_RIGHT              = (Fl_Align)8;+  Fl_Align FL_ALIGN_INSIDE             = (Fl_Align)16;+  Fl_Align FL_ALIGN_TEXT_OVER_IMAGE    = (Fl_Align)0x0020;+  Fl_Align FL_ALIGN_IMAGE_OVER_TEXT    = (Fl_Align)0x0000;+  Fl_Align FL_ALIGN_CLIP               = (Fl_Align)64;+  Fl_Align FL_ALIGN_WRAP               = (Fl_Align)128;+  Fl_Align FL_ALIGN_IMAGE_NEXT_TO_TEXT = (Fl_Align)0x0100;+  Fl_Align FL_ALIGN_TEXT_NEXT_TO_IMAGE = (Fl_Align)0x0120;+  Fl_Align FL_ALIGN_IMAGE_BACKDROP     = (Fl_Align)0x0200;+  Fl_Align FL_ALIGN_LEFT_TOP           = 0x0007;+  Fl_Align FL_ALIGN_RIGHT_TOP          = 0x000b;+  Fl_Align FL_ALIGN_LEFT_BOTTOM        = 0x000d;+  Fl_Align FL_ALIGN_RIGHT_BOTTOM       = 0x000e;+  Fl_Align FL_ALIGN_NOWRAP             = (Fl_Align)0;+  Fl_Align FL_ALIGN_POSITION_MASK      = 0x000f;+  Fl_Align FL_ALIGN_IMAGE_MASK         = 0x0320;++  typedef int Fl_Font;+  Fl_Font FL_HELVETICA              = 0;+  Fl_Font FL_HELVETICA_BOLD         = 1;+  Fl_Font FL_HELVETICA_ITALIC       = 2;+  Fl_Font FL_HELVETICA_BOLD_ITALIC  = 3;+  Fl_Font FL_COURIER                = 4;+  Fl_Font FL_COURIER_BOLD           = 5;+  Fl_Font FL_COURIER_ITALIC         = 6;+  Fl_Font FL_COURIER_BOLD_ITALIC    = 7;+  Fl_Font FL_TIMES                  = 8;+  Fl_Font FL_TIMES_BOLD             = 9;+  Fl_Font FL_TIMES_ITALIC           = 10;+  Fl_Font FL_TIMES_BOLD_ITALIC      = 11;+  Fl_Font FL_SYMBOL                 = 12;+  Fl_Font FL_SCREEN                 = 13;+  Fl_Font FL_SCREEN_BOLD            = 14;+  Fl_Font FL_ZAPF_DINGBATS          = 15;++  Fl_Font FL_FREE_FONT              = 16;+  Fl_Font FL_BOLD                   = 1;+  Fl_Font FL_ITALIC                 = 2;+  Fl_Font FL_BOLD_ITALIC            = 3;++  typedef int Fl_Fontsize;++  Fl_Fontsize FL_NORMAL_SIZE;+  typedef unsigned int Fl_Color;+  Fl_Color FL_FOREGROUND_COLOR  = 0;+  Fl_Color FL_BACKGROUND2_COLOR = 7;+  Fl_Color FL_INACTIVE_COLOR    = 8;+  Fl_Color FL_SELECTION_COLOR   = 15;+  Fl_Color FL_GRAY0   = 32;+  Fl_Color FL_DARK3   = 39;+  Fl_Color FL_DARK2   = 45;+  Fl_Color FL_DARK1   = 47;+  Fl_Color FL_BACKGROUND_COLOR  = 49;+  Fl_Color FL_LIGHT1  = 50;+  Fl_Color FL_LIGHT2  = 52;+  Fl_Color FL_LIGHT3  = 54;++  Fl_Color FL_BLACK   = 56;+  Fl_Color FL_RED     = 88;+  Fl_Color FL_GREEN   = 63;+  Fl_Color FL_YELLOW  = 95;+  Fl_Color FL_BLUE    = 216;+  Fl_Color FL_MAGENTA = 248;+  Fl_Color FL_CYAN    = 223;+  Fl_Color FL_DARK_RED = 72;++  Fl_Color FL_DARK_GREEN    = 60;+  Fl_Color FL_DARK_YELLOW   = 76;+  Fl_Color FL_DARK_BLUE     = 136;+  Fl_Color FL_DARK_MAGENTA  = 152;+  Fl_Color FL_DARK_CYAN     = 140;++  Fl_Color FL_WHITE         = 255;++#define FL_FREE_COLOR     (Fl_Color)16+#define FL_NUM_FREE_COLOR 16+#define FL_GRAY_RAMP      (Fl_Color)32+#define FL_NUM_GRAY       24+#define FL_GRAY           FL_BACKGROUND_COLOR+#define FL_COLOR_CUBE     (Fl_Color)56+#define FL_NUM_RED        5+#define FL_NUM_GREEN      8+#define FL_NUM_BLUE       5++  typedef enum Fl_Cursor {+    FL_CURSOR_DEFAULT   =  0,+    FL_CURSOR_ARROW     = 35,+    FL_CURSOR_CROSS     = 66,+    FL_CURSOR_WAIT      = 76,+    FL_CURSOR_INSERT    = 77,+    FL_CURSOR_HAND      = 31,+    FL_CURSOR_HELP      = 47,+    FL_CURSOR_MOVE      = 27,+    FL_CURSOR_NS        = 78,+    FL_CURSOR_WE        = 79,+    FL_CURSOR_NWSE      = 80,+    FL_CURSOR_NESW      = 81,+    FL_CURSOR_NONE      = 255,+    FL_CURSOR_N         = 70,+    FL_CURSOR_NE        = 69,+    FL_CURSOR_E         = 49,+    FL_CURSOR_SE        =  8,+    FL_CURSOR_S         =  9,+    FL_CURSOR_SW        =  7,+    FL_CURSOR_W         = 36,+    FL_CURSOR_NW        = 68+  } Fl_Cursor;++  enum {+    FL_READ   = 1,+    FL_WRITE  = 4,+    FL_EXCEPT = 8+  };++  typedef enum Fl_Mode {+    FL_RGB              = 0,+    FL_INDEX            = 1,+    FL_SINGLE           = 0,+    FL_DOUBLE           = 2,+    FL_ACCUM            = 4,+    FL_ALPHA            = 8,+    FL_DEPTH            = 16,+    FL_STENCIL          = 32,+    FL_RGB8             = 64,+    FL_MULTISAMPLE      = 128,+    FL_STEREO           = 256,+    FL_FAKE_SINGLE      = 512+  } Fl_Mode;+#define FL_IMAGE_WITH_ALPHA 0x40000000++  typedef enum Fl_Damage {+    FL_DAMAGE_CHILD    = 0x01,+    FL_DAMAGE_EXPOSE   = 0x02,+    FL_DAMAGE_SCROLL   = 0x04,+    FL_DAMAGE_OVERLAY  = 0x08,+    FL_DAMAGE_USER1    = 0x10,+    FL_DAMAGE_USER2    = 0x20,+    FL_DAMAGE_ALL      = 0x80+  } Fl_Damage;++  // FLTK 1.0.x compatibility definitions...+#  ifdef FLTK_1_0_COMPAT+#    define contrast    fl_contrast+#    define down        fl_down+#    define frame       fl_frame+#    define inactive    fl_inactive+#  endif // FLTK_1_0_COMPAT+#endif+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_ROUND_UP_BOXC)();+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_SHADOW_BOXC)();+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_ROUNDED_BOXC)();+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_RFLAT_BOXC)();+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_RSHADOW_BOXC)();+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_DIAMOND_BOXC)();+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_OVAL_BOXC)();+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_PLASTIC_UP_BOXC)();+  FL_EXPORT_C(Fl_Boxtype, fl_define_FL_GTK_UP_BOXC)();+  FL_EXPORT_C(Fl_Boxtype, fl_boxC)(Fl_Boxtype b) ;+  FL_EXPORT_C(Fl_Boxtype, fl_downC)(Fl_Boxtype b) ;+  FL_EXPORT_C(Fl_Boxtype, fl_frameC)(Fl_Boxtype b) ;+  FL_EXPORT_C(Fl_Labeltype, fl_define_FL_SHADOW_LABELC)() ;+  FL_EXPORT_C(Fl_Labeltype, fl_define_FL_ENGRAVED_LABELC)() ;+  FL_EXPORT_C(Fl_Labeltype, fl_define_FL_EMBOSSED_LABELC)() ;+  FL_EXPORT_C(Fl_Align, FL_ALIGN_TOP_LEFTC)();+  FL_EXPORT_C(Fl_Align, FL_ALIGN_TOP_RIGHTC)();+  FL_EXPORT_C(Fl_Align, FL_ALIGN_BOTTOM_LEFTC)();+  FL_EXPORT_C(Fl_Align, FL_ALIGN_BOTTOM_RIGHTC)();+  FL_EXPORT_C(Fl_Color, fl_inactiveC)(Fl_Color c) ;+  FL_EXPORT_C(Fl_Color, fl_contrastC)(Fl_Color fg, Fl_Color bg) ;+  FL_EXPORT_C(Fl_Color, fl_color_averageC)(Fl_Color c1, Fl_Color c2, float weight);+  FL_EXPORT_C(Fl_Color, fl_lighterC)(Fl_Color c);+  FL_EXPORT_C(Fl_Color, fl_darkerC)(Fl_Color c);+  FL_EXPORT_C(Fl_Color, fl_rgb_color_with_rgbC)(uchar r, uchar g, uchar b);+  FL_EXPORT_C(Fl_Color, fl_rgb_color_with_grayscaleC)(uchar g);+  FL_EXPORT_C(Fl_Color, fl_gray_rampC)(int i);+  FL_EXPORT_C(Fl_Color, fl_color_cubeC)(int r, int g, int b);+#ifdef __cplusplus+}+#endif+#endif /*__FL_ENUMERATIONSC__ */
+ c-src/Fl_ExportMacros.h view
@@ -0,0 +1,24 @@+#ifndef __FL_EXPORT_H+#define __FL_EXPORT_H++#ifdef EXPORT+#undef EXPORT+#endif+#define EXPORT extern "C"++#ifdef __WATCOMC__+  #include <windows.h>+  #define FL_EXPORT_C(TYPE,FUNC_NAME) extern TYPE __export __cdecl FUNC_NAME+#else+  #ifdef _WIN32+    #define FL_EXPORT_C(TYPE,FUNC_NAME) extern __declspec(dllexport) TYPE __cdecl FUNC_NAME+    #undef EXPORT+    #define EXPORT extern "C" __declspec(dllexport) +  #else+    #define FL_EXPORT_C(TYPE,FUNC_NAME) extern TYPE FUNC_NAME+  #endif+  #ifndef _cdecl+    #define _cdecl+  #endif+#endif+#endif /* #ifndef __FL_EXPORT_H */
+ c-src/Fl_File_BrowserC.cpp view
@@ -0,0 +1,522 @@+#include "Fl_File_BrowserC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_File_Browser_handle)(fl_File_Browser self, int event){+    return (static_cast<Fl_File_Browser*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_File_Browser_parent)(fl_File_Browser file_browser){+    return (fl_Group) (static_cast<Fl_File_Browser*>(file_browser))->parent();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_parent)(fl_File_Browser file_browser,fl_Group grp){+    (static_cast<Fl_File_Browser*>(file_browser))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_File_Browser_type)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->type();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_type)(fl_File_Browser file_browser,uchar t){+    (static_cast<Fl_File_Browser*>(file_browser))->type(t);+  }++  FL_EXPORT_C(int,Fl_File_Browser_x)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->x();+  }+  FL_EXPORT_C(int,Fl_File_Browser_y)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->y();+  }+  FL_EXPORT_C(int,Fl_File_Browser_w)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->w();+  }+  FL_EXPORT_C(int,Fl_File_Browser_h)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->h();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_align)(fl_File_Browser file_browser, Fl_Align alignment){+    (static_cast<Fl_File_Browser*>(file_browser))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_File_Browser_align)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_File_Browser_box)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->box();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_box)(fl_File_Browser file_browser,Fl_Boxtype new_box){+    (static_cast<Fl_File_Browser*>(file_browser))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_File_Browser_color)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->color();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_color)(fl_File_Browser file_browser,Fl_Color bg){+    (static_cast<Fl_File_Browser*>(file_browser))->color(bg);+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_color_with_bg_sel)(fl_File_Browser file_browser,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_File_Browser*>(file_browser))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_File_Browser_selection_color)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->selection_color();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_selection_color)(fl_File_Browser file_browser,Fl_Color a){+    (static_cast<Fl_File_Browser*>(file_browser))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_File_Browser_label)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->label();+  }+  FL_EXPORT_C(void,Fl_File_Browser_copy_label)(fl_File_Browser file_browser,const char* new_label){+    (static_cast<Fl_File_Browser*>(file_browser))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_label)(fl_File_Browser file_browser,const char* text){+    (static_cast<Fl_File_Browser*>(file_browser))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_File_Browser_labeltype)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->labeltype();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_labeltype)(fl_File_Browser file_browser,Fl_Labeltype a){+    (static_cast<Fl_File_Browser*>(file_browser))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_labelcolor)(fl_File_Browser file_browser,Fl_Color c){+    (static_cast<Fl_File_Browser*>(file_browser))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_File_Browser_labelcolor)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_File_Browser_labelfont)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->labelfont();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_labelfont)(fl_File_Browser file_browser,Fl_Font c){+    (static_cast<Fl_File_Browser*>(file_browser))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_File_Browser_labelsize)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->labelsize();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_labelsize)(fl_File_Browser file_browser,Fl_Fontsize pix){+    (static_cast<Fl_File_Browser*>(file_browser))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_File_Browser_image)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->image();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_image)(fl_File_Browser file_browser,fl_Image pix){+    (static_cast<Fl_File_Browser*>(file_browser))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_File_Browser_deimage)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->deimage();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_deimage)(fl_File_Browser file_browser,fl_Image pix){+    (static_cast<Fl_File_Browser*>(file_browser))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_File_Browser_tooltip)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->tooltip();+  }+  FL_EXPORT_C(void,Fl_File_Browser_copy_tooltip)(fl_File_Browser file_browser,const char* text){+    (static_cast<Fl_File_Browser*>(file_browser))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_tooltip)(fl_File_Browser file_browser,const char* text){+    (static_cast<Fl_File_Browser*>(file_browser))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_callback_with_user_data)(fl_File_Browser file_browser,fl_Callback* cb,void* p){+    Fl_File_Browser* castedWindow = (static_cast<Fl_File_Browser*>(file_browser));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_callback)(fl_File_Browser file_browser,fl_Callback* cb){+    Fl_File_Browser* castedWindow = (static_cast<Fl_File_Browser*>(file_browser));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_File_Browser_user_data)(fl_File_Browser file_browser){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_File_Browser*>(file_browser))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_File_Browser*>(file_browser))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_user_data)(fl_File_Browser file_browser,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_File_Browser*>(file_browser))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_File_Browser*>(file_browser))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_File_Browser*>(file_browser))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_File_Browser_argument)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->argument();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_argument)(fl_File_Browser file_browser,long v){+    (static_cast<Fl_File_Browser*>(file_browser))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_File_Browser_when)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->when();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_when)(fl_File_Browser file_browser,uchar i){+    (static_cast<Fl_File_Browser*>(file_browser))->when(i);+  }+  FL_EXPORT_C(int,Fl_File_Browser_visible_r)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->visible_r();+  }+  FL_EXPORT_C(void,Fl_File_Browser_show_super)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->show();+  }+  FL_EXPORT_C(void,Fl_File_Browser_hide_super)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->hide();+  }+  FL_EXPORT_C(void,Fl_File_Browser_clear_visible)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_File_Browser_active)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->active();+  }+  FL_EXPORT_C(int,Fl_File_Browser_active_r)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->active_r();+  }+  FL_EXPORT_C(void,Fl_File_Browser_activate)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->activate();+  }+  FL_EXPORT_C(void,Fl_File_Browser_deactivate)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_File_Browser_output)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->output();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_output)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->output();+  }+  FL_EXPORT_C(void,Fl_File_Browser_clear_output)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_File_Browser_takesevents)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->takesevents();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_changed)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->changed();+  }+  FL_EXPORT_C(void,Fl_File_Browser_clear_changed)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_File_Browser_take_focus)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->take_focus();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_visible_focus)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_File_Browser_clear_visible_focus)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_File_Browser_modify_visible_focus)(fl_File_Browser file_browser,int v){+    (static_cast<Fl_File_Browser*>(file_browser))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_File_Browser_visible_focus)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_File_Browser_contains)(fl_File_Browser file_browser,fl_Widget w){+    return (static_cast<Fl_File_Browser*>(file_browser))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_File_Browser_inside)(fl_File_Browser file_browser,fl_Widget w){+    return (static_cast<Fl_File_Browser*>(file_browser))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_File_Browser_redraw)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->redraw();+  }+  FL_EXPORT_C(void,Fl_File_Browser_redraw_label)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_File_Browser_damage)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->damage();+  }+  FL_EXPORT_C(void,Fl_File_Browser_clear_damage_with_bitmask)(fl_File_Browser file_browser,uchar c){+    (static_cast<Fl_File_Browser*>(file_browser))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_File_Browser_clear_damage)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_File_Browser_damage_with_text)(fl_File_Browser file_browser,uchar c){+    (static_cast<Fl_File_Browser*>(file_browser))->damage(c);+  }+  FL_EXPORT_C(void,Fl_File_Browser_damage_inside_widget)(fl_File_Browser file_browser,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_File_Browser*>(file_browser))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_File_Browser_draw_label_with_xywh_alignment)(fl_File_Browser file_browser,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_File_Browser*>(file_browser))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_File_Browser_measure_label)(fl_File_Browser file_browser,int* ww,int* hh){+    (static_cast<Fl_File_Browser*>(file_browser))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_File_Browser_window)(fl_File_Browser file_browser){+    return (fl_Window) (static_cast<Fl_File_Browser*>(file_browser))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_File_Browser_top_window)(fl_File_Browser file_browser){+    return (fl_Window) (static_cast<Fl_File_Browser*>(file_browser))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_File_Browser_top_window_offset)(fl_File_Browser file_browser, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_File_Browser*>(file_browser))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_File_Browser_as_group_super)(fl_File_Browser file_browser){+    return (fl_Group) (static_cast<Fl_File_Browser*>(file_browser))->as_group();+  }+  FL_EXPORT_C(fl_Group,Fl_File_Browser_as_group)(fl_File_Browser file_browser){+    return (fl_Group) (static_cast<Fl_File_Browser*>(file_browser))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_File_Browser_as_gl_window_super)(fl_File_Browser file_browser){+    return (fl_Gl_Window) (static_cast<Fl_File_Browser*>(file_browser))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_File_Browser_as_gl_window)(fl_File_Browser file_browser){+    return (fl_Gl_Window) (static_cast<Fl_File_Browser*>(file_browser))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_resizable_by_reference)(fl_File_Browser file_browser,fl_Widget o){+    (static_cast<Fl_File_Browser*>(file_browser))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_resizable)(fl_File_Browser file_browser,fl_Widget o){+    (static_cast<Fl_File_Browser*>(file_browser))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_File_Browser_resizable)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->resizable();+  }+  FL_EXPORT_C(void,Fl_File_Browser_add_resizable)(fl_File_Browser file_browser,fl_Widget o){+    return (static_cast<Fl_File_Browser*>(file_browser))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_clip_children)(fl_File_Browser file_browser,int c){+    return (static_cast<Fl_File_Browser*>(file_browser))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_File_Browser_clip_children)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->clip_children();+  }+  FL_EXPORT_C(void,Fl_File_Browser_focus)(fl_File_Browser file_browser, fl_Widget W){+    return (static_cast<Fl_File_Browser*>(file_browser))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_File_Browser__ddfdesign_kludge)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->_ddfdesign_kludge();+  }+  // FL_EXPORT_C(void,Fl_File_Browser_forms_end)(fl_File_Browser self){+  //   (static_cast<Fl_File_Browser*>(self))->forms_end();+  // }++  FL_EXPORT_C(fl_File_Browser, Fl_File_Browser_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_File_Browser* file_browser = new Fl_File_Browser(x,y,w,h,label);+    return (static_cast<fl_File_Browser>(file_browser));+  }+  FL_EXPORT_C(fl_File_Browser, Fl_File_Browser_New)(int x, int y, int w, int h) {+    Fl_File_Browser* file_browser = new Fl_File_Browser(x,y,w,h,0);+    return (fl_File_Browser)file_browser;+  }+  FL_EXPORT_C(void,Fl_File_Browser_Destroy)(fl_File_Browser file_browser){+    delete (static_cast<Fl_File_Browser*>(file_browser));+  }+  FL_EXPORT_C(void,Fl_File_Browser_remove)(fl_File_Browser file_browser,int line){+    return (static_cast<Fl_File_Browser*>(file_browser))->remove(line);+  }+  FL_EXPORT_C(void,Fl_File_Browser_add)(fl_File_Browser file_browser,const char* newtext){+    return (static_cast<Fl_File_Browser*>(file_browser))->add(newtext);+  }+  FL_EXPORT_C(void,Fl_File_Browser_add_with_d)(fl_File_Browser file_browser,const char* newtext,void* d){+    return (static_cast<Fl_File_Browser*>(file_browser))->add(newtext,d);+  }+  FL_EXPORT_C(void,Fl_File_Browser_insert)(fl_File_Browser file_browser,int line,const char* newtext){+    return (static_cast<Fl_File_Browser*>(file_browser))->insert(line,newtext);+  }+  FL_EXPORT_C(void,Fl_File_Browser_insert_with_d)(fl_File_Browser file_browser,int line,const char* newtext,void* d){+    return (static_cast<Fl_File_Browser*>(file_browser))->insert(line,newtext,d);+  }+  FL_EXPORT_C(void,Fl_File_Browser_move)(fl_File_Browser file_browser,int to,int from){+    return (static_cast<Fl_File_Browser*>(file_browser))->move(to,from);+  }+  FL_EXPORT_C(void,Fl_File_Browser_clear)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->clear();+  }+  FL_EXPORT_C(int,Fl_File_Browser_size)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->size();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_size)(fl_File_Browser file_browser,int W,int H){+    return (static_cast<Fl_File_Browser*>(file_browser))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_File_Browser_topline)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->topline();+  }+  FL_EXPORT_C(void,Fl_File_Browser_lineposition)(fl_File_Browser file_browser,int line,Fl_Line_Position pos){+    Fl_File_Browser::Fl_Line_Position p = (Fl_File_Browser::Fl_Line_Position)-1;+    switch(p){+    case TOP :    {p = Fl_File_Browser::TOP; break;}+    case BOTTOM : {p = Fl_File_Browser::BOTTOM; break;}+    case MIDDLE : {p = Fl_File_Browser::MIDDLE; break;}+    default:      {p = (Fl_File_Browser::Fl_Line_Position)-1; break;}+    }+    return (static_cast<Fl_File_Browser*>(file_browser))->lineposition(line,p);+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_topline)(fl_File_Browser file_browser,int line){+    return (static_cast<Fl_File_Browser*>(file_browser))->topline(line);+  }+  FL_EXPORT_C(void,Fl_File_Browser_bottomline)(fl_File_Browser file_browser,int line){+    return (static_cast<Fl_File_Browser*>(file_browser))->bottomline(line);+  }+  FL_EXPORT_C(void,Fl_File_Browser_middleline)(fl_File_Browser file_browser,int line){+    return (static_cast<Fl_File_Browser*>(file_browser))->middleline(line);+  }+  FL_EXPORT_C(int,Fl_File_Browser_select)(fl_File_Browser file_browser,int line){+    return (static_cast<Fl_File_Browser*>(file_browser))->select(line);+  }+  FL_EXPORT_C(int,Fl_File_Browser_select_with_val)(fl_File_Browser file_browser,int line,int val){+    return (static_cast<Fl_File_Browser*>(file_browser))->select(line,val);+  }+  FL_EXPORT_C(int,Fl_File_Browser_selected)(fl_File_Browser file_browser,int line){+    return (static_cast<Fl_File_Browser*>(file_browser))->selected(line);+  }+  FL_EXPORT_C(void,Fl_File_Browser_show_with_line)(fl_File_Browser file_browser,int line){+    (static_cast<Fl_File_Browser*>(file_browser))->show(line);+  }+  FL_EXPORT_C(void,Fl_File_Browser_show)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->show();+  }+  FL_EXPORT_C(void,Fl_File_Browser_hide_with_line)(fl_File_Browser file_browser,int line){+    (static_cast<Fl_File_Browser*>(file_browser))->hide(line);+  }+  FL_EXPORT_C(void,Fl_File_Browser_hide)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->hide();+  }+  FL_EXPORT_C(int,Fl_File_Browser_visible)(fl_File_Browser file_browser,int line){+    return (static_cast<Fl_File_Browser*>(file_browser))->visible(line);+  }+  FL_EXPORT_C(int,Fl_File_Browser_value)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->value();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_value)(fl_File_Browser file_browser,int line){+    (static_cast<Fl_File_Browser*>(file_browser))->value(line);+  }+  FL_EXPORT_C(const char*,Fl_File_Browser_text)(fl_File_Browser file_browser,int line){+    return (static_cast<Fl_File_Browser*>(file_browser))->text(line);+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_text)(fl_File_Browser file_browser,int line,const char* newtext){+    (static_cast<Fl_File_Browser*>(file_browser))->text(line,newtext);+  }+  FL_EXPORT_C(void*,Fl_File_Browser_data)(fl_File_Browser file_browser,int line){+    return (static_cast<Fl_File_Browser*>(file_browser))->data(line);+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_data)(fl_File_Browser file_browser,int line,void* d){+    (static_cast<Fl_File_Browser*>(file_browser))->data(line,d);+  }+  FL_EXPORT_C(char,Fl_File_Browser_format_char)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->format_char();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_format_char)(fl_File_Browser file_browser,char c){+    (static_cast<Fl_File_Browser*>(file_browser))->format_char(c);+  }+  FL_EXPORT_C(char,Fl_File_Browser_column_char)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->column_char();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_column_char)(fl_File_Browser file_browser,char c){+    (static_cast<Fl_File_Browser*>(file_browser))->column_char(c);+  }+  FL_EXPORT_C(const int*,Fl_File_Browser_column_widths)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->column_widths();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_column_widths)(fl_File_Browser file_browser,const int* arr){+    (static_cast<Fl_File_Browser*>(file_browser))->column_widths(arr);+  }+  FL_EXPORT_C(int,Fl_File_Browser_displayed)(fl_File_Browser file_browser,int line){+    return (static_cast<Fl_File_Browser*>(file_browser))->displayed(line);+  }+  FL_EXPORT_C(void,Fl_File_Browser_make_visible)(fl_File_Browser file_browser,int line){+    (static_cast<Fl_File_Browser*>(file_browser))->make_visible(line);+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_icon)(fl_File_Browser file_browser,int line,fl_Image icon){+    (static_cast<Fl_File_Browser*>(file_browser))->icon(line,(static_cast<Fl_Image*>(icon)));+  }+  FL_EXPORT_C(fl_Image,Fl_File_Browser_icon)(fl_File_Browser file_browser,int line){+    return (fl_Image)(static_cast<Fl_File_Browser*>(file_browser))->icon(line);+  }+  FL_EXPORT_C(void,Fl_File_Browser_remove_icon)(fl_File_Browser file_browser,int line){+    (static_cast<Fl_File_Browser*>(file_browser))->remove_icon(line);+  }+  FL_EXPORT_C(int,Fl_File_Browser_select_only)(fl_File_Browser file_browser,void *item){+    return (static_cast<Fl_File_Browser*>(file_browser))->select_only(item);+  }+  FL_EXPORT_C(int,Fl_File_Browser_select_only_with_docallbacks)(fl_File_Browser file_browser,void *item,int docallbacks){+    return (static_cast<Fl_File_Browser*>(file_browser))->select_only(item,docallbacks);+  }+  FL_EXPORT_C(int,Fl_File_Browser_deselect)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->deselect();+  }+  FL_EXPORT_C(int,Fl_File_Browser_deselect_with_docallbacks)(fl_File_Browser file_browser,int docallbacks){+    return (static_cast<Fl_File_Browser*>(file_browser))->deselect(docallbacks);+  }+  FL_EXPORT_C(int,Fl_File_Browser_position)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->position();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_position)(fl_File_Browser file_browser,int pos){+    (static_cast<Fl_File_Browser*>(file_browser))->position(pos);+  }+  FL_EXPORT_C(int,Fl_File_Browser_hposition)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->hposition();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_hposition)(fl_File_Browser file_browser,int ){+    (static_cast<Fl_File_Browser*>(file_browser))->hposition();+  }+  FL_EXPORT_C(uchar,Fl_File_Browser_has_scrollbar)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->has_scrollbar();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_has_scrollbar)(fl_File_Browser file_browser,uchar mode){+    (static_cast<Fl_File_Browser*>(file_browser))->has_scrollbar(mode);+  }+  FL_EXPORT_C(Fl_Font,Fl_File_Browser_textfont)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->textfont();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_textfont)(fl_File_Browser file_browser,Fl_Font font){+    (static_cast<Fl_File_Browser*>(file_browser))->textfont(font);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_File_Browser_textsize)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->textsize();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_textsize)(fl_File_Browser file_browser,Fl_Fontsize newSize){+    (static_cast<Fl_File_Browser*>(file_browser))->textsize(newSize);+  }+  FL_EXPORT_C(Fl_Color,Fl_File_Browser_textcolor)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->textcolor();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_textcolor)(fl_File_Browser file_browser,Fl_Color col){+    (static_cast<Fl_File_Browser*>(file_browser))->textcolor(col);+  }+  FL_EXPORT_C(int,Fl_File_Browser_scrollbar_size)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->scrollbar_size();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_scrollbar_size)(fl_File_Browser file_browser,int newSize){+    (static_cast<Fl_File_Browser*>(file_browser))->scrollbar_size(newSize);+  }+  FL_EXPORT_C(int,Fl_File_Browser_scrollbar_width)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->scrollbar_width();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_scrollbar_width)(fl_File_Browser file_browser,int width){+    (static_cast<Fl_File_Browser*>(file_browser))->scrollbar_width(width);+  }+  FL_EXPORT_C(void,Fl_File_Browser_scrollbar_right)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->scrollbar_right();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_scrollbar_left)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->scrollbar_left();+  }+  FL_EXPORT_C(void,Fl_File_Browser_sort)(fl_File_Browser file_browser){+    (static_cast<Fl_File_Browser*>(file_browser))->sort();+  }+  FL_EXPORT_C(void,Fl_File_Browser_sort_with_flags)(fl_File_Browser file_browser,int flags){+    (static_cast<Fl_File_Browser*>(file_browser))->sort(flags);+  }+  FL_EXPORT_C(uchar,Fl_File_Browser_iconsize)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->iconsize();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_iconsize)(fl_File_Browser file_browser,uchar s){+    (static_cast<Fl_File_Browser*>(file_browser))->iconsize(s);+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_filter)(fl_File_Browser file_browser,const char* pattern){+    (static_cast<Fl_File_Browser*>(file_browser))->filter(pattern);+  }+  FL_EXPORT_C(const char*,Fl_File_Browser_filter)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->filter();+  }+  FL_EXPORT_C(int,Fl_File_Browser_load)(fl_File_Browser file_browser,const char* directory,Fl_File_Sort_F* sort){+    return (static_cast<Fl_File_Browser*>(file_browser))->load(directory,sort);+  }+  FL_EXPORT_C(int,Fl_File_Browser_filetype)(fl_File_Browser file_browser){+    return (static_cast<Fl_File_Browser*>(file_browser))->filetype();+  }+  FL_EXPORT_C(void,Fl_File_Browser_set_filetype)(fl_File_Browser file_browser,int t){+    (static_cast<Fl_File_Browser*>(file_browser))->filetype(t);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_File_BrowserC.h view
@@ -0,0 +1,207 @@+#ifndef __FL_FILE_BROWSER_C__+#define __FL_FILE_BROWSER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+#include "filenameC.h"++  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int ,         Fl_File_Browser_handle_super)(fl_File_Browser file_browser,int event);+  FL_EXPORT_C(int ,         Fl_File_Browser_handle )(fl_File_Browser file_browser,int event);+  FL_EXPORT_C(void,         Fl_File_Browser_resize_super)(fl_File_Browser file_browser,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_File_Browser_resize )(fl_File_Browser file_browser,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_File_Browser_show_super)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_show )(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_hide_super)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_hide )(fl_File_Browser file_browser);+  FL_EXPORT_C(fl_Window,    Fl_File_Browser_as_window_super)(fl_File_Browser file_browser);+  FL_EXPORT_C(fl_Window,    Fl_File_Browser_as_window )(fl_File_Browser file_browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_File_Browser_as_gl_window_super)(fl_File_Browser file_browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_File_Browser_as_gl_window)(fl_File_Browser file_browser);+  FL_EXPORT_C(fl_Group,     Fl_File_Browser_parent)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_parent)(fl_File_Browser file_browser, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_File_Browser_type)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_type)(fl_File_Browser file_browser, uchar t);++  FL_EXPORT_C(int,          Fl_File_Browser_x)(fl_File_Browser file_browser);+  FL_EXPORT_C(int,          Fl_File_Browser_y)(fl_File_Browser file_browser);+  FL_EXPORT_C(int,          Fl_File_Browser_w)(fl_File_Browser file_browser);+  FL_EXPORT_C(int,          Fl_File_Browser_h)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_align)(fl_File_Browser file_browser, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_File_Browser_align)(fl_File_Browser file_browser);+  FL_EXPORT_C(Fl_Boxtype,   Fl_File_Browser_box)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_box)(fl_File_Browser file_browser, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_File_Browser_color)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_color)(fl_File_Browser file_browser, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_File_Browser_set_color_with_bg_sel)(fl_File_Browser file_browser,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_File_Browser_selection_color)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_selection_color)(fl_File_Browser file_browser, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_File_Browser_label)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_copy_label)(fl_File_Browser file_browser, const char* new_label);+  FL_EXPORT_C(void,         Fl_File_Browser_set_label)(fl_File_Browser file_browser, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_File_Browser_labeltype)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_labeltype)(fl_File_Browser file_browser, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_File_Browser_labelcolor)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_labelcolor)(fl_File_Browser file_browser, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_File_Browser_labelfont)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_labelfont)(fl_File_Browser file_browser, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_File_Browser_labelsize)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_labelsize)(fl_File_Browser file_browser, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_File_Browser_image)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_image)(fl_File_Browser file_browser, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_File_Browser_deimage)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_deimage)(fl_File_Browser file_browser, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_File_Browser_tooltip)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_copy_tooltip)(fl_File_Browser file_browser, const char* text);+  FL_EXPORT_C(void,         Fl_File_Browser_set_tooltip)(fl_File_Browser file_browser, const char* text);+  FL_EXPORT_C(void,         Fl_File_Browser_set_callback_with_user_data)(fl_File_Browser file_browser, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_File_Browser_set_callback)(fl_File_Browser file_browser, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_File_Browser_user_data)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_user_data)(fl_File_Browser file_browser, void* v);+  FL_EXPORT_C(long,         Fl_File_Browser_argument)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_argument)(fl_File_Browser file_browser, long v);+  FL_EXPORT_C(Fl_When,      Fl_File_Browser_when)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_when)(fl_File_Browser file_browser, uchar i);+  FL_EXPORT_C(int,          Fl_File_Browser_visible_r)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_visible)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_clear_visible)(fl_File_Browser file_browser);+  FL_EXPORT_C(unsigned int, Fl_File_Browser_active)(fl_File_Browser file_browser);+  FL_EXPORT_C(int,          Fl_File_Browser_active_r)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_activate)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_deactivate)(fl_File_Browser file_browser);+  FL_EXPORT_C(unsigned int, Fl_File_Browser_output)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_output)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_clear_output)(fl_File_Browser file_browser);+  FL_EXPORT_C(unsigned int, Fl_File_Browser_takesevents)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_changed)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_clear_changed)(fl_File_Browser file_browser);+  FL_EXPORT_C(int,          Fl_File_Browser_take_focus)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_set_visible_focus)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_clear_visible_focus)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_modify_visible_focus)(fl_File_Browser file_browser, int v);+  FL_EXPORT_C(unsigned int, Fl_File_Browser_visible_focus)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_do_callback)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_do_callback_with_widget_and_user_data)(fl_File_Browser file_browser, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_File_Browser_do_callback_with_widget_and_default_user_data)(fl_File_Browser file_browser, fl_Widget w);+  FL_EXPORT_C(int,          Fl_File_Browser_contains)(fl_File_Browser file_browser, fl_Widget w);+  FL_EXPORT_C(int,          Fl_File_Browser_inside)(fl_File_Browser file_browser, fl_Widget w);+  FL_EXPORT_C(void,         Fl_File_Browser_redraw)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_redraw_label)(fl_File_Browser file_browser);+  FL_EXPORT_C(uchar,        Fl_File_Browser_damage)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_clear_damage_with_bitmask)(fl_File_Browser file_browser, uchar c);+  FL_EXPORT_C(void,         Fl_File_Browser_clear_damage)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,         Fl_File_Browser_damage_with_text)(fl_File_Browser file_browser, uchar c);+  FL_EXPORT_C(void,         Fl_File_Browser_damage_inside_widget)(fl_File_Browser file_browser, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_File_Browser_draw_label_with_xywh_alignment)(fl_File_Browser file_browser, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_File_Browser_measure_label)(fl_File_Browser file_browser, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_File_Browser_window)(fl_File_Browser file_browser);+  FL_EXPORT_C(fl_Window,    Fl_File_Browser_top_window)(fl_File_Browser file_browser);+  FL_EXPORT_C(fl_Window ,   Fl_File_Browser_top_window_offset)(fl_File_Browser file_browser, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_File_Browser_as_group)(fl_File_Browser file_browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_File_Browser_as_gl_window)(fl_File_Browser file_browser);+  /* Inherited from Fl_Group */+  FL_EXPORT_C(void,         Fl_File_Browser_begin)(fl_File_Browser self);+  FL_EXPORT_C(void,         Fl_File_Browser_end)(fl_File_Browser self);+  FL_EXPORT_C(int,          Fl_File_Browser_find)(fl_File_Browser self, fl_Widget w);+  FL_EXPORT_C(void,         Fl_File_Browser_remove_index)(fl_File_Browser self, int index);+  FL_EXPORT_C(void,         Fl_File_Browser_remove_widget)(fl_File_Browser self, fl_Widget w);+  FL_EXPORT_C(void,         Fl_File_Browser_clear)(fl_File_Browser self);+  FL_EXPORT_C(void,         Fl_File_Browser_set_resizable_by_reference)(fl_File_Browser self,fl_Widget o);+  FL_EXPORT_C(void,         Fl_File_Browser_set_resizable)(fl_File_Browser self,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_File_Browser_resizable)(fl_File_Browser self);+  FL_EXPORT_C(void,         Fl_File_Browser_add_resizable)(fl_File_Browser self,fl_Widget o);+  FL_EXPORT_C(void,         Fl_File_Browser_init_sizes)(fl_File_Browser self);+  FL_EXPORT_C(int,          Fl_File_Browser_children)(fl_File_Browser self);+  FL_EXPORT_C(void,         Fl_File_Browser_set_clip_children)(fl_File_Browser self,int c);+  FL_EXPORT_C(unsigned int, Fl_File_Browser_clip_children)(fl_File_Browser self);+  FL_EXPORT_C(void,         Fl_File_Browser_focus)(fl_File_Browser self,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_File_Browser__ddfdesign_kludge)(fl_File_Browser self);+  FL_EXPORT_C(void,         Fl_File_Browser_insert_with_before)(fl_File_Browser self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_File_Browser_array)(fl_File_Browser self);+  FL_EXPORT_C(fl_Widget,    Fl_File_Browser_child)(fl_File_Browser self, int n);+  FL_EXPORT_C(void,         Fl_File_Browser_forms_end)(fl_File_Browser self);++  /* Fl_File_Browser specific functions */+  FL_EXPORT_C(fl_File_Browser, Fl_File_Browser_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_File_Browser, Fl_File_Browser_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,Fl_File_Browser_Destroy)(fl_File_Browser file_browser);+  FL_EXPORT_C(void,Fl_File_Browser_remove)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(void, Fl_File_Browser_add)(fl_File_Browser file_browser, const char* newtext);+  FL_EXPORT_C(void, Fl_File_Browser_add_with_d)(fl_File_Browser file_browser, const char* newtext, void* d);+  FL_EXPORT_C(void, Fl_File_Browser_insert)(fl_File_Browser file_browser, int line, const char* newtext);+  FL_EXPORT_C(void, Fl_File_Browser_insert_with_d)(fl_File_Browser file_browser, int line, const char* newtext, void* d);+  FL_EXPORT_C(void, Fl_File_Browser_move)(fl_File_Browser file_browser, int to, int from);+  FL_EXPORT_C(void, Fl_File_Browser_swap)(fl_File_Browser file_browser, int a, int b);+  FL_EXPORT_C(void, Fl_File_Browser_clear)(fl_File_Browser file_browser);+  FL_EXPORT_C(int, Fl_File_Browser_size)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_size)(fl_File_Browser file_browser, int W, int H);+  FL_EXPORT_C(int, Fl_File_Browser_topline)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_lineposition)(fl_File_Browser file_browser, int line, Fl_Line_Position pos);+  FL_EXPORT_C(void, Fl_File_Browser_set_topline)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(void, Fl_File_Browser_bottomline)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(void, Fl_File_Browser_middleline)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(int, Fl_File_Browser_select)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(int, Fl_File_Browser_select_with_val)(fl_File_Browser file_browser, int line, int val);+  FL_EXPORT_C(int, Fl_File_Browser_selected)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(void, Fl_File_Browser_show_with_line)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(void, Fl_File_Browser_show)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_hide_with_line)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(void, Fl_File_Browser_hide)(fl_File_Browser file_browser);+  FL_EXPORT_C(int, Fl_File_Browser_visible)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(int, Fl_File_Browser_value)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_value)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(const char*, Fl_File_Browser_text)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(void, Fl_File_Browser_set_text)(fl_File_Browser file_browser, int line, const char* newtext);+  FL_EXPORT_C(void*, Fl_File_Browser_data)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(void, Fl_File_Browser_set_data)(fl_File_Browser file_browser, int line, void* d);+  FL_EXPORT_C(char, Fl_File_Browser_format_char)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_format_char)(fl_File_Browser file_browser, char c);+  FL_EXPORT_C(char, Fl_File_Browser_column_char)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_column_char)(fl_File_Browser file_browser, char c);+  FL_EXPORT_C(const int*, Fl_File_Browser_column_widths)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_column_widths)(fl_File_Browser file_browser, const int* arr);+  FL_EXPORT_C(int, Fl_File_Browser_displayed)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(void, Fl_File_Browser_make_visible)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(void, Fl_File_Browser_set_icon)(fl_File_Browser file_browser, int line, fl_Image icon);+  FL_EXPORT_C(fl_Image, Fl_File_Browser_icon)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(void, Fl_File_Browser_remove_icon)(fl_File_Browser file_browser, int line);+  FL_EXPORT_C(int, Fl_File_Browser_select_only)(fl_File_Browser file_browser,void *item);+  FL_EXPORT_C(int, Fl_File_Browser_select_only_with_docallbacks)(fl_File_Browser file_browser,void *item,int docallbacks);+  FL_EXPORT_C(int, Fl_File_Browser_deselect)(fl_File_Browser file_browser);+  FL_EXPORT_C(int, Fl_File_Browser_deselect_with_docallbacks)(fl_File_Browser file_browser,int docallbacks);+  FL_EXPORT_C(int, Fl_File_Browser_position)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_position)(fl_File_Browser file_browser,int pos); // scroll to here+  FL_EXPORT_C(int, Fl_File_Browser_hposition)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_hposition)(fl_File_Browser file_browser,int); // pan to here+  FL_EXPORT_C(uchar, Fl_File_Browser_has_scrollbar)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_has_scrollbar)(fl_File_Browser file_browser,uchar mode);+  FL_EXPORT_C(Fl_Font, Fl_File_Browser_textfont)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_textfont)(fl_File_Browser file_browser,Fl_Font font);+  FL_EXPORT_C(Fl_Fontsize, Fl_File_Browser_textsize)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_textsize)(fl_File_Browser file_browser,Fl_Fontsize newSize);+  FL_EXPORT_C(Fl_Color, Fl_File_Browser_textcolor)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_textcolor)(fl_File_Browser file_browser,Fl_Color col);+  FL_EXPORT_C(int, Fl_File_Browser_scrollbar_size)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_scrollbar_size)(fl_File_Browser file_browser,int newSize);+  FL_EXPORT_C(int, Fl_File_Browser_scrollbar_width)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_scrollbar_width)(fl_File_Browser file_browser,int width);+  FL_EXPORT_C(void, Fl_File_Browser_scrollbar_right)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_scrollbar_left)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_sort)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_sort_with_flags)(fl_File_Browser file_browser,int flags);+  FL_EXPORT_C(uchar,	Fl_File_Browser_iconsize)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_iconsize)(fl_File_Browser file_browser,uchar s);+  FL_EXPORT_C(void, Fl_File_Browser_set_filter)(fl_File_Browser file_browser,const char* pattern);+  FL_EXPORT_C(const char*, Fl_File_Browser_filter)(fl_File_Browser file_browser);+  FL_EXPORT_C(int, Fl_File_Browser_load)(fl_File_Browser file_browser,const char *directory, Fl_File_Sort_F* sort);+  FL_EXPORT_C(int, Fl_File_Browser_filetype)(fl_File_Browser file_browser);+  FL_EXPORT_C(void, Fl_File_Browser_set_filetype)(fl_File_Browser file_browser,int t);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_FILE_BROWSER_C__*/
+ c-src/Fl_File_ChooserC.cpp view
@@ -0,0 +1,250 @@+#include "Fl_File_ChooserC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(fl_File_Chooser, Fl_File_Chooser_New)(const char *d, const char *p, int t, const char *title){+    Fl_File_Chooser* c= new Fl_File_Chooser(d,p,t,title);+    return (fl_File_Chooser)c;+  }+  FL_EXPORT_C(void, Fl_File_Chooser_Destroy)(fl_File_Chooser file_chooser){+    delete (static_cast<Fl_File_Chooser*>(file_chooser));+  }+  FL_EXPORT_C(void, Fl_File_Chooser_callback)(fl_File_Chooser file_chooser, void (*cb)(fl_File_Chooser, void* )){++  C_to_Fl_Callback* c = new C_to_Fl_Callback(cb);+  c->set_callback(static_cast<Fl_File_Chooser*>(file_chooser));+  +  }+  FL_EXPORT_C(void, Fl_File_Chooser_callback_with_user_data)(fl_File_Chooser file_chooser, void (*cb)(fl_File_Chooser, void* ), void* user_data){+  C_to_Fl_Callback* c = new C_to_Fl_Callback(cb,user_data);+  c->set_callback(static_cast<Fl_File_Chooser*>(file_chooser));+  }+FL_EXPORT_C(void,Fl_File_Chooser_set_color)(fl_File_Chooser file_chooser,Fl_Color c){+  (static_cast<Fl_File_Chooser*>(file_chooser))->color(c);+}+FL_EXPORT_C(Fl_Color,Fl_File_Chooser_color)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->color();+}+FL_EXPORT_C(int,Fl_File_Chooser_count)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->count();+}+FL_EXPORT_C(void,Fl_File_Chooser_filter_value)(fl_File_Chooser file_chooser,int f){+  (static_cast<Fl_File_Chooser*>(file_chooser))->filter_value(f);+}+FL_EXPORT_C(void,Fl_File_Chooser_set_directory)(fl_File_Chooser file_chooser,const char* d){+  (static_cast<Fl_File_Chooser*>(file_chooser))->directory(d);+}+FL_EXPORT_C(char*,Fl_File_Chooser_directory)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->directory();+}+FL_EXPORT_C(void,Fl_File_Chooser_set_filter)(fl_File_Chooser file_chooser,const char* p){+  (static_cast<Fl_File_Chooser*>(file_chooser))->filter(p);+}+FL_EXPORT_C(const char*,Fl_File_Chooser_filter)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->filter();+}+FL_EXPORT_C(int,Fl_File_Chooser_set_filter_value)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->filter_value();+}+FL_EXPORT_C(void,Fl_File_Chooser_hide)(fl_File_Chooser file_chooser){+  (static_cast<Fl_File_Chooser*>(file_chooser))->hide();+}+FL_EXPORT_C(void,Fl_File_Chooser_set_iconsize)(fl_File_Chooser file_chooser,uchar s){+  (static_cast<Fl_File_Chooser*>(file_chooser))->iconsize(s);+}+FL_EXPORT_C(uchar,Fl_File_Chooser_iconsize)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->iconsize();+}+FL_EXPORT_C(void,Fl_File_Chooser_set_label)(fl_File_Chooser file_chooser,const char* l){+  (static_cast<Fl_File_Chooser*>(file_chooser))->label(l);+}+FL_EXPORT_C(const char*,Fl_File_Chooser_label)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->label();+}+FL_EXPORT_C(void,Fl_File_Chooser_set_ok_label)(fl_File_Chooser file_chooser,const char* l){+  (static_cast<Fl_File_Chooser*>(file_chooser))->ok_label(l);+}+FL_EXPORT_C(const char*,Fl_File_Chooser_ok_label)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->ok_label();+}+FL_EXPORT_C(void,Fl_File_Chooser_set_preview)(fl_File_Chooser file_chooser,int e){+  (static_cast<Fl_File_Chooser*>(file_chooser))->preview(e);+}+FL_EXPORT_C(int,Fl_File_Chooser_preview)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->preview();+}+FL_EXPORT_C(void,Fl_File_Chooser_rescan)(fl_File_Chooser file_chooser){+  (static_cast<Fl_File_Chooser*>(file_chooser))->rescan();+}+FL_EXPORT_C(void,Fl_File_Chooser_rescan_keep_filename)(fl_File_Chooser file_chooser){+  (static_cast<Fl_File_Chooser*>(file_chooser))->rescan_keep_filename();+}+FL_EXPORT_C(void,Fl_File_Chooser_show)(fl_File_Chooser file_chooser){+  (static_cast<Fl_File_Chooser*>(file_chooser))->show();+}+FL_EXPORT_C(int,Fl_File_Chooser_shown)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->shown();+}+FL_EXPORT_C(void,Fl_File_Chooser_set_textcolor)(fl_File_Chooser file_chooser,Fl_Color c){+  (static_cast<Fl_File_Chooser*>(file_chooser))->textcolor(c);+}+FL_EXPORT_C(Fl_Color,Fl_File_Chooser_textcolor)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->textcolor();+}+FL_EXPORT_C(void,Fl_File_Chooser_set_textfont)(fl_File_Chooser file_chooser,Fl_Font f){+  (static_cast<Fl_File_Chooser*>(file_chooser))->textfont(f);+}+FL_EXPORT_C(Fl_Font,Fl_File_Chooser_textfont)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->textfont();+}+FL_EXPORT_C(void,Fl_File_Chooser_set_textsize)(fl_File_Chooser file_chooser,Fl_Fontsize s){+  (static_cast<Fl_File_Chooser*>(file_chooser))->textsize(s);+}+FL_EXPORT_C(Fl_Fontsize,Fl_File_Chooser_textsize)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->textsize();+}+FL_EXPORT_C(void,Fl_File_Chooser_set_type)(fl_File_Chooser file_chooser,int t){+  (static_cast<Fl_File_Chooser*>(file_chooser))->type(t);+}+FL_EXPORT_C(int,Fl_File_Chooser_type)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->type();+}+ FL_EXPORT_C(void,Fl_File_Chooser_set_user_data)(fl_File_Chooser file_chooser, void* v){+  C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_File_Chooser*>(file_chooser))->user_data()));+  if (stored_cb) {+    stored_cb->set_user_data(v);+    (static_cast<Fl_File_Chooser*>(file_chooser))->user_data(stored_cb);+  }+  else {+    (static_cast<Fl_File_Chooser*>(file_chooser))->user_data(v);+  }+}+FL_EXPORT_C(void*,Fl_File_Chooser_user_data)(fl_File_Chooser file_chooser){+  C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_File_Chooser*>(file_chooser))->user_data()));+  if(stored_cb){+    return stored_cb->get_user_data();+  }+  else {+    return (static_cast<Fl_File_Chooser*>(file_chooser))->user_data();+  }+}+FL_EXPORT_C(const char*,Fl_File_Chooser_value)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->value();+}+FL_EXPORT_C(const char*,Fl_File_Chooser_value_with_f)(fl_File_Chooser file_chooser,int f){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->value(f);+}+FL_EXPORT_C(void,Fl_File_Chooser_set_value)(fl_File_Chooser file_chooser,const char* filename){+  (static_cast<Fl_File_Chooser*>(file_chooser))->value(filename);+}+FL_EXPORT_C(int,Fl_File_Chooser_visible)(fl_File_Chooser file_chooser){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->visible();+}+ FL_EXPORT_C(fl_Widget,Fl_File_Chooser_add_extra)(fl_File_Chooser file_chooser,fl_Widget gr){+ return (static_cast<Fl_File_Chooser*>(file_chooser))->add_extra((static_cast<Fl_Widget*>(gr)));+}+FL_EXPORT_C(const char*,Fl_File_Chooser_add_favorites_label)( ){+ return Fl_File_Chooser::add_favorites_label;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_add_favorites_label)( const char* value){+ Fl_File_Chooser::add_favorites_label = value;+}+FL_EXPORT_C(const char*,Fl_File_Chooser_all_files_label)( ){+ return Fl_File_Chooser::all_files_label;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_all_files_label)( const char* value){+ Fl_File_Chooser::all_files_label = value;+}+FL_EXPORT_C(const char*,Fl_File_Chooser_custom_filter_label)( ){+ return Fl_File_Chooser::custom_filter_label;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_custom_filter_label)( const char* value){+ Fl_File_Chooser::custom_filter_label = value;+}+FL_EXPORT_C(const char*,Fl_File_Chooser_existing_file_label)( ){+ return Fl_File_Chooser::existing_file_label;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_existing_file_label)( const char* value){+ Fl_File_Chooser::existing_file_label = value;+}+FL_EXPORT_C(const char*,Fl_File_Chooser_favorites_label)( ){+ return Fl_File_Chooser::favorites_label;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_favorites_label)( const char* value){+ Fl_File_Chooser::favorites_label = value;+}+FL_EXPORT_C(const char*,Fl_File_Chooser_filename_label)( ){+ return Fl_File_Chooser::filename_label;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_filename_label)( const char* value){+ Fl_File_Chooser::filename_label = value;+}+FL_EXPORT_C(const char*,Fl_File_Chooser_filesystems_label)( ){+ return Fl_File_Chooser::filesystems_label;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_filesystems_label)( const char* value){+ Fl_File_Chooser::filesystems_label = value;+}+FL_EXPORT_C(const char*,Fl_File_Chooser_manage_favorites_label)( ){+ return Fl_File_Chooser::manage_favorites_label;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_manage_favorites_label)( const char* value){+ Fl_File_Chooser::manage_favorites_label = value;+}+FL_EXPORT_C(const char*,Fl_File_Chooser_new_directory_label)( ){+ return Fl_File_Chooser::new_directory_label;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_new_directory_label)( const char* value){+ Fl_File_Chooser::new_directory_label = value;+}+FL_EXPORT_C(const char*,Fl_File_Chooser_new_directory_tooltip)( ){+ return Fl_File_Chooser::new_directory_tooltip;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_new_directory_tooltip)( const char* value){+ Fl_File_Chooser::new_directory_tooltip = value;+}+FL_EXPORT_C(const char*,Fl_File_Chooser_preview_label)( ){+ return Fl_File_Chooser::preview_label;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_preview_label)( const char* value){+ Fl_File_Chooser::preview_label = value;+}+FL_EXPORT_C(const char*,Fl_File_Chooser_save_label)( ){+ return Fl_File_Chooser::save_label;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_save_label)( const char* value){+ Fl_File_Chooser::save_label = value;+}+FL_EXPORT_C(const char*,Fl_File_Chooser_show_label)( ){+ return Fl_File_Chooser::show_label;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_show_label)(const char* value){+ Fl_File_Chooser::show_label = value;+}+FL_EXPORT_C(Fl_File_Sort_F*,Fl_File_Chooser_sort)( ){+ return Fl_File_Chooser::sort;+}+FL_EXPORT_C(void,Fl_File_Chooser_set_sort)(Fl_File_Sort_F* cb){+ Fl_File_Chooser::sort = cb;+}+FL_EXPORT_C(char*,flc_dir_chooser)(const char* message,const char* fname){+ return fl_dir_chooser(message,fname);+}+FL_EXPORT_C(char*,flc_dir_chooser_with_relative)(const char* message,const char* fname,int relative){+ return fl_dir_chooser(message,fname,relative);+}+FL_EXPORT_C(char*,flc_file_chooser)(const char* message,const char* pat,const char* fname){+ return fl_file_chooser(message,pat,fname);+}+FL_EXPORT_C(char*,flc_file_chooser_with_relative)(const char* message,const char* pat,const char* fname,int relative){+ return fl_file_chooser(message,pat,fname,relative);+}+  FL_EXPORT_C(void, flc_file_chooser_callback)(void (*cb)(const char*)){+    fl_file_chooser_callback(cb);+  };+FL_EXPORT_C(void,flc_file_chooser_ok_label)(const char* l){+  fl_file_chooser_ok_label(l);+}+#ifdef __cplusplus+}+#endif
+ c-src/Fl_File_ChooserC.h view
@@ -0,0 +1,93 @@+#ifndef __FL_FILE_CHOOSER_C__+#define __FL_FILE_CHOOSER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_File_Chooser.H"+#include "FL/filename.H"+#include "Fl_CallbackC.h"+EXPORT {+#else+#include "FL/filename.H"  +#endif+  FL_EXPORT_C(fl_File_Chooser, Fl_File_Chooser_New)(const char *d, const char *p, int t, const char *title);+  FL_EXPORT_C(void, Fl_File_Chooser_Destroy)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_callback)(fl_File_Chooser file_chooser, void (*cb)(fl_File_Chooser, void* ));+  FL_EXPORT_C(void, Fl_File_Chooser_callback_with_user_data)(fl_File_Chooser file_chooser, void (*cb)(fl_File_Chooser, void* ), void* d);+  FL_EXPORT_C(void, Fl_File_Chooser_set_color)(fl_File_Chooser file_chooser, Fl_Color c);+  FL_EXPORT_C(Fl_Color, Fl_File_Chooser_color)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(int, Fl_File_Chooser_count)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_set_directory)(fl_File_Chooser file_chooser, const char* d);+  FL_EXPORT_C(char* , Fl_File_Chooser_directory)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_set_filter)(fl_File_Chooser file_chooser, const char* p);+  FL_EXPORT_C(const char* , Fl_File_Chooser_filter)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(int, Fl_File_Chooser_set_filter_value)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_filter_value)(fl_File_Chooser file_chooser, int f);+  FL_EXPORT_C(void, Fl_File_Chooser_hide)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_set_iconsize)(fl_File_Chooser file_chooser, uchar s);+  FL_EXPORT_C(uchar, Fl_File_Chooser_iconsize)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_set_label)(fl_File_Chooser file_chooser, const char* l);+  FL_EXPORT_C(const char* , Fl_File_Chooser_label)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_set_ok_label)(fl_File_Chooser file_chooser, const char* l);+  FL_EXPORT_C(const char* , Fl_File_Chooser_ok_label)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_set_preview)(fl_File_Chooser file_chooser, int e);+  FL_EXPORT_C(int, Fl_File_Chooser_preview)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_rescan)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_rescan_keep_filename)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_show)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(int, Fl_File_Chooser_shown)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_set_textcolor)(fl_File_Chooser file_chooser, Fl_Color c);+  FL_EXPORT_C(Fl_Color, Fl_File_Chooser_textcolor)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_set_textfont)(fl_File_Chooser file_chooser, Fl_Font f);+  FL_EXPORT_C(Fl_Font, Fl_File_Chooser_textfont)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_set_textsize)(fl_File_Chooser file_chooser, Fl_Fontsize s);+  FL_EXPORT_C(Fl_Fontsize, Fl_File_Chooser_textsize)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_set_type)(fl_File_Chooser file_chooser, int t);+  FL_EXPORT_C(int, Fl_File_Chooser_type)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void*, Fl_File_Chooser_user_data)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(void, Fl_File_Chooser_set_user_data)(fl_File_Chooser file_chooser, void* d);+  FL_EXPORT_C(const char*, Fl_File_Chooser_value)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(const char*, Fl_File_Chooser_value_with_f)(fl_File_Chooser file_chooser, int f);+  FL_EXPORT_C(void, Fl_File_Chooser_set_value)(fl_File_Chooser file_chooser, const char* filename);+  FL_EXPORT_C(int, Fl_File_Chooser_visible)(fl_File_Chooser file_chooser);+  FL_EXPORT_C(fl_Widget, Fl_File_Chooser_add_extra)(fl_File_Chooser file_chooser,fl_Widget gr);+  FL_EXPORT_C(const char*, Fl_File_Chooser_add_favorites_label)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_add_favorites_label)(const char* value);+  FL_EXPORT_C(const char*, Fl_File_Chooser_all_files_label)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_all_files_label)(const char* value);+  FL_EXPORT_C(const char*, Fl_File_Chooser_custom_filter_label)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_custom_filter_label)(const char* value);+  FL_EXPORT_C(const char*, Fl_File_Chooser_existing_file_label)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_existing_file_label)(const char* value);+  FL_EXPORT_C(const char*, Fl_File_Chooser_favorites_label)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_favorites_label)(const char* value);+  FL_EXPORT_C(const char*, Fl_File_Chooser_filename_label)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_filename_label)(const char* value);+  FL_EXPORT_C(const char*, Fl_File_Chooser_filesystems_label)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_filesystems_label)(const char* value);+  FL_EXPORT_C(const char*, Fl_File_Chooser_manage_favorites_label)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_manage_favorites_label)(const char* value);+  FL_EXPORT_C(const char*, Fl_File_Chooser_new_directory_label)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_new_directory_label)(const char* value);+  FL_EXPORT_C(const char*, Fl_File_Chooser_new_directory_tooltip)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_new_directory_tooltip)(const char* value);+  FL_EXPORT_C(const char*, Fl_File_Chooser_preview_label)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_preview_label)(const char* value);+  FL_EXPORT_C(const char*, Fl_File_Chooser_save_label)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_save_label)(const char* value);+  FL_EXPORT_C(const char*, Fl_File_Chooser_show_label)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_show_label)(const char* value);+  FL_EXPORT_C(Fl_File_Sort_F*, Fl_File_Chooser_sort)();+  FL_EXPORT_C(void, Fl_File_Chooser_set_sort)(Fl_File_Sort_F* cb);+  FL_EXPORT_C(char*, flc_dir_chooser)(const char* message,const char* fname);+  FL_EXPORT_C(char*, flc_dir_chooser_with_relative)(const char* message,const char* fname,int relative);+  FL_EXPORT_C(char*, flc_file_chooser)(const char* message,const char* pat,const char* fname);+  FL_EXPORT_C(char*, flc_file_chooser_with_relative)(const char* message,const char* pat,const char* fname,int relative);+  FL_EXPORT_C(void, flc_file_chooser_callback)(void (*cb)(const char*));+  FL_EXPORT_C(void, flc_file_chooser_ok_label)(const char*l);+#ifdef __cplusplus+}+#endif+#endif /* __FL_FILE_CHOOSER_C__ */
+ c-src/Fl_File_IconC.cpp view
@@ -0,0 +1,75 @@+#include "Fl_File_IconC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(fl_File_Icon, Fl_File_Icon_New)(const char* p, int t, int nd, short* d){+    Fl_File_Icon* i = new Fl_File_Icon(p,t,nd,d);+    return (fl_File_Icon)i;+  }+  FL_EXPORT_C(void, Fl_File_Icon_Destroy)(fl_File_Icon file_icon){+    delete (static_cast<Fl_File_Icon*>(file_icon));+  }++  FL_EXPORT_C(short*,Fl_File_Icon_add)(fl_File_Icon file_icon,short d){+    return (static_cast<Fl_File_Icon*>(file_icon))->add(d);+  }+  FL_EXPORT_C(short*,Fl_File_Icon_add_color)(fl_File_Icon file_icon,Fl_Color c){+    return (static_cast<Fl_File_Icon*>(file_icon))->add_color(c);+  }+  FL_EXPORT_C(short*,Fl_File_Icon_add_vertex)(fl_File_Icon file_icon,float x,float y){+    return (static_cast<Fl_File_Icon*>(file_icon))->add_vertex(x,y);+  }+  FL_EXPORT_C(void,Fl_File_Icon_clear)(fl_File_Icon file_icon){+    (static_cast<Fl_File_Icon*>(file_icon))->clear();+  }+  FL_EXPORT_C(void,Fl_File_Icon_draw)(fl_File_Icon file_icon,int x,int y,int w,int h,Fl_Color ic){+    (static_cast<Fl_File_Icon*>(file_icon))->draw(x,y,w,h,ic);+  }+  FL_EXPORT_C(void,Fl_File_Icon_draw_with_active)(fl_File_Icon file_icon,int x,int y,int w,int h,Fl_Color ic,int active){+    (static_cast<Fl_File_Icon*>(file_icon))->draw(x,y,w,h,ic,active);+  }+  FL_EXPORT_C(void,Fl_File_Icon_label)(fl_File_Icon file_icon,fl_Widget w){+    (static_cast<Fl_File_Icon*>(file_icon))->label((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_File_Icon_load)(fl_File_Icon file_icon,const char* f){+    (static_cast<Fl_File_Icon*>(file_icon))->load(f);+  }+  FL_EXPORT_C(int,Fl_File_Icon_load_fti)(fl_File_Icon file_icon,const char* fti){+    return (static_cast<Fl_File_Icon*>(file_icon))->load_fti(fti);+  }+  FL_EXPORT_C(int,Fl_File_Icon_load_image)(fl_File_Icon file_icon,const char* i){+    return (static_cast<Fl_File_Icon*>(file_icon))->load_image(i);+  }+  FL_EXPORT_C(fl_File_Icon,Fl_File_Icon_next)(fl_File_Icon file_icon){+    return (fl_File_Icon)(static_cast<Fl_File_Icon*>(file_icon))->next();+  }+  FL_EXPORT_C(const char*,Fl_File_Icon_pattern)(fl_File_Icon file_icon){+    return (static_cast<Fl_File_Icon*>(file_icon))->pattern();+  }+  FL_EXPORT_C(int,Fl_File_Icon_size)(fl_File_Icon file_icon){+    return (static_cast<Fl_File_Icon*>(file_icon))->size();+  }+  FL_EXPORT_C(int,Fl_File_Icon_type)(fl_File_Icon file_icon){+    return (static_cast<Fl_File_Icon*>(file_icon))->type();+  }+  FL_EXPORT_C(short*,Fl_File_Icon_value)(fl_File_Icon file_icon){+    return (static_cast<Fl_File_Icon*>(file_icon))->value();+  }+  FL_EXPORT_C(void,Fl_File_Icon_labeltype)(fl_Label o,int x,int y,int w,int h,Fl_Align a){+    Fl_File_Icon::labeltype((static_cast<Fl_Label*>(o)),x,y,w,h,a);+  }+  FL_EXPORT_C(fl_File_Icon,Fl_File_Icon_find)(const char* filename,int filetype){+    return (fl_File_Icon)Fl_File_Icon::find(filename);+  }+  FL_EXPORT_C(fl_File_Icon,Fl_File_Icon_find_with_filetype)(const char* filename,int filetype){+    return (fl_File_Icon)Fl_File_Icon::find(filename, filetype);+  }+  FL_EXPORT_C(fl_File_Icon,Fl_File_Icon_first)( ){+    return (fl_File_Icon)Fl_File_Icon::first();+  }+  FL_EXPORT_C(void,Fl_File_Icon_load_system_icons)( ){+    Fl_File_Icon::load_system_icons();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_File_IconC.h view
@@ -0,0 +1,37 @@+#ifndef __FL_FILE_ICON_C__+#define __FL_FILE_ICON_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_File_Icon.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_File_Icon, Fl_File_Icon_New)(const char* p, int t, int nd, short* d);+  FL_EXPORT_C(void        , Fl_File_Icon_Destroy)(fl_File_Icon file_icon);+  FL_EXPORT_C(short*, Fl_File_Icon_add)(fl_File_Icon file_icon, short d);+  FL_EXPORT_C(short*, Fl_File_Icon_add_color)(fl_File_Icon file_icon, Fl_Color c);+  FL_EXPORT_C(short*, Fl_File_Icon_add_vertex)(fl_File_Icon file_icon, float x, float y);+  FL_EXPORT_C(void, Fl_File_Icon_clear)(fl_File_Icon file_icon);+  FL_EXPORT_C(void, Fl_File_Icon_draw)(fl_File_Icon file_icon, int x, int y, int w, int h, Fl_Color ic);+  FL_EXPORT_C(void, Fl_File_Icon_draw_with_active)(fl_File_Icon file_icon, int x, int y, int w, int h, Fl_Color ic, int active);+  FL_EXPORT_C(void, Fl_File_Icon_label)(fl_File_Icon file_icon, fl_Widget w);+  FL_EXPORT_C(void, Fl_File_Icon_load)(fl_File_Icon file_icon, const char* f);+  FL_EXPORT_C(int, Fl_File_Icon_load_fti)(fl_File_Icon file_icon, const char* fti);+  FL_EXPORT_C(int, Fl_File_Icon_load_image)(fl_File_Icon file_icon, const char* i);+  FL_EXPORT_C(fl_File_Icon, Fl_File_Icon_next)(fl_File_Icon file_icon);+  FL_EXPORT_C(const char*, Fl_File_Icon_pattern)(fl_File_Icon file_icon);+  FL_EXPORT_C(int, Fl_File_Icon_size)(fl_File_Icon file_icon);+  FL_EXPORT_C(int, Fl_File_Icon_type)(fl_File_Icon file_icon);+  FL_EXPORT_C(short*, Fl_File_Icon_value)(fl_File_Icon file_icon);+  FL_EXPORT_C(void, Fl_File_Icon_labeltype)(fl_Label o, int x, int y, int w, int h, Fl_Align a);+  FL_EXPORT_C(fl_File_Icon, Fl_File_Icon_find)(const char* filename, int filetype);+  FL_EXPORT_C(fl_File_Icon, Fl_File_Icon_find_with_filetype)(const char* filename, int filetype);+  FL_EXPORT_C(fl_File_Icon, Fl_File_Icon_first)();+  FL_EXPORT_C(void, Fl_File_Icon_load_system_icons)();+#ifdef __cplusplus+}+#endif+#endif /* __FL_FILE_ICON_C__ */
+ c-src/Fl_File_InputC.cpp view
@@ -0,0 +1,427 @@+#include "Fl_File_InputC.h"++#ifdef __cplusplus+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_File_Input_handle)(fl_File_Input self, int event){+    return (static_cast<Fl_File_Input*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_File_Input_parent)(fl_File_Input file_input){+    return (fl_Group) (static_cast<Fl_File_Input*>(file_input))->parent();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_parent)(fl_File_Input file_input,fl_Group grp){+    (static_cast<Fl_File_Input*>(file_input))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_File_Input_type)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->type();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_type)(fl_File_Input file_input,uchar t){+    (static_cast<Fl_File_Input*>(file_input))->type(t);+  }++  FL_EXPORT_C(int,Fl_File_Input_x)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->x();+  }+  FL_EXPORT_C(int,Fl_File_Input_y)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->y();+  }+  FL_EXPORT_C(int,Fl_File_Input_w)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->w();+  }+  FL_EXPORT_C(int,Fl_File_Input_h)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->h();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_align)(fl_File_Input file_input, Fl_Align alignment){+    (static_cast<Fl_File_Input*>(file_input))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_File_Input_align)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_File_Input_box)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->box();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_box)(fl_File_Input file_input,Fl_Boxtype new_box){+    (static_cast<Fl_File_Input*>(file_input))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_File_Input_color)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->color();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_color)(fl_File_Input file_input,Fl_Color bg){+    (static_cast<Fl_File_Input*>(file_input))->color(bg);+  }+  FL_EXPORT_C(void,Fl_File_Input_set_color_with_bg_sel)(fl_File_Input file_input,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_File_Input*>(file_input))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_File_Input_selection_color)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->selection_color();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_selection_color)(fl_File_Input file_input,Fl_Color a){+    (static_cast<Fl_File_Input*>(file_input))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_File_Input_label)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->label();+  }+  FL_EXPORT_C(void,Fl_File_Input_copy_label)(fl_File_Input file_input,const char* new_label){+    (static_cast<Fl_File_Input*>(file_input))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_File_Input_set_label)(fl_File_Input file_input,const char* text){+    (static_cast<Fl_File_Input*>(file_input))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_File_Input_labeltype)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->labeltype();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_labeltype)(fl_File_Input file_input,Fl_Labeltype a){+    (static_cast<Fl_File_Input*>(file_input))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_File_Input_set_labelcolor)(fl_File_Input file_input,Fl_Color c){+    (static_cast<Fl_File_Input*>(file_input))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_File_Input_labelcolor)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_File_Input_labelfont)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->labelfont();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_labelfont)(fl_File_Input file_input,Fl_Font c){+    (static_cast<Fl_File_Input*>(file_input))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_File_Input_labelsize)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->labelsize();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_labelsize)(fl_File_Input file_input,Fl_Fontsize pix){+    (static_cast<Fl_File_Input*>(file_input))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_File_Input_image)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->image();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_image)(fl_File_Input file_input,fl_Image pix){+    (static_cast<Fl_File_Input*>(file_input))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_File_Input_deimage)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->deimage();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_deimage)(fl_File_Input file_input,fl_Image pix){+    (static_cast<Fl_File_Input*>(file_input))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_File_Input_tooltip)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->tooltip();+  }+  FL_EXPORT_C(void,Fl_File_Input_copy_tooltip)(fl_File_Input file_input,const char* text){+    (static_cast<Fl_File_Input*>(file_input))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_File_Input_set_tooltip)(fl_File_Input file_input,const char* text){+    (static_cast<Fl_File_Input*>(file_input))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_File_Input_set_callback_with_user_data)(fl_File_Input file_input,fl_Callback* cb,void* p){+    Fl_File_Input* castedInput_dow = (static_cast<Fl_File_Input*>(file_input));+    new C_to_Fl_Callback(castedInput_dow, cb, p);+  }+  FL_EXPORT_C(void,Fl_File_Input_set_callback)(fl_File_Input file_input,fl_Callback* cb){+    Fl_File_Input* castedInput_dow = (static_cast<Fl_File_Input*>(file_input));+    new C_to_Fl_Callback(castedInput_dow, cb);+  }+  FL_EXPORT_C(void*,Fl_File_Input_user_data)(fl_File_Input file_input){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_File_Input*>(file_input))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_File_Input*>(file_input))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_File_Input_set_user_data)(fl_File_Input file_input,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_File_Input*>(file_input))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_File_Input*>(file_input))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_File_Input*>(file_input))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_File_Input_argument)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->argument();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_argument)(fl_File_Input file_input,long v){+    (static_cast<Fl_File_Input*>(file_input))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_File_Input_when)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->when();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_when)(fl_File_Input file_input,uchar i){+    (static_cast<Fl_File_Input*>(file_input))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_File_Input_visible)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->visible();+  }+  FL_EXPORT_C(int,Fl_File_Input_visible_r)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->visible_r();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_visible)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->visible();+  }+  FL_EXPORT_C(void,Fl_File_Input_clear_visible)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_File_Input_active)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->active();+  }+  FL_EXPORT_C(int,Fl_File_Input_active_r)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->active_r();+  }+  FL_EXPORT_C(void,Fl_File_Input_activate)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->activate();+  }+  FL_EXPORT_C(void,Fl_File_Input_deactivate)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_File_Input_output)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->output();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_output)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->output();+  }+  FL_EXPORT_C(void,Fl_File_Input_clear_output)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_File_Input_takesevents)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->takesevents();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_changed)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->changed();+  }+  FL_EXPORT_C(void,Fl_File_Input_clear_changed)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_File_Input_take_focus)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->take_focus();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_visible_focus)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_File_Input_clear_visible_focus)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_File_Input_modify_visible_focus)(fl_File_Input file_input,int v){+    (static_cast<Fl_File_Input*>(file_input))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_File_Input_visible_focus)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_File_Input_do_callback)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->do_callback();+  }+  FL_EXPORT_C(void,Fl_File_Input_do_callback_with_widget_and_user_data)(fl_File_Input file_input,fl_Widget w,long arg){+    (static_cast<Fl_File_Input*>(file_input))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_File_Input_do_callback_with_widget_and_default_user_data)(fl_File_Input file_input,fl_Widget w){+    (static_cast<Fl_File_Input*>(file_input))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_File_Input_contains)(fl_File_Input file_input,fl_Widget w){+    return (static_cast<Fl_File_Input*>(file_input))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_File_Input_inside)(fl_File_Input file_input,fl_Widget w){+    return (static_cast<Fl_File_Input*>(file_input))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_File_Input_redraw)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->redraw();+  }+  FL_EXPORT_C(void,Fl_File_Input_redraw_label)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_File_Input_damage)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->damage();+  }+  FL_EXPORT_C(void,Fl_File_Input_clear_damage_with_bitmask)(fl_File_Input file_input,uchar c){+    (static_cast<Fl_File_Input*>(file_input))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_File_Input_clear_damage)(fl_File_Input file_input){+    (static_cast<Fl_File_Input*>(file_input))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_File_Input_damage_with_text)(fl_File_Input file_input,uchar c){+    (static_cast<Fl_File_Input*>(file_input))->damage(c);+  }+  FL_EXPORT_C(void,Fl_File_Input_damage_inside_widget)(fl_File_Input file_input,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_File_Input*>(file_input))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_File_Input_draw_label_with_xywh_alignment)(fl_File_Input file_input,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_File_Input*>(file_input))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_File_Input_measure_label)(fl_File_Input file_input,int* ww,int* hh){+    (static_cast<Fl_File_Input*>(file_input))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_File_Input_window)(fl_File_Input file_input){+    return (fl_Window) (static_cast<Fl_File_Input*>(file_input))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_File_Input_top_window)(fl_File_Input file_input){+    return (fl_Window) (static_cast<Fl_File_Input*>(file_input))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_File_Input_top_window_offset)(fl_File_Input file_input, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_File_Input*>(file_input))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_File_Input_as_group)(fl_File_Input file_input){+    return (fl_Group) (static_cast<Fl_File_Input*>(file_input))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_File_Input_as_gl_window)(fl_File_Input file_input){+    return (fl_Gl_Window) (static_cast<Fl_File_Input*>(file_input))->as_gl_window();+  }+  /* Fl_File_Input specific functions */+  FL_EXPORT_C(fl_File_Input, Fl_File_Input_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_File_Input* file_input = new Fl_File_Input(x,y,w,h,label);+    return (static_cast<fl_File_Input>(file_input));+  }+  FL_EXPORT_C(fl_File_Input, Fl_File_Input_New)(int x, int y, int w, int h) {+    Fl_File_Input* file_input = new Fl_File_Input(x,y,w,h,0);+    return (static_cast<fl_File_Input>(file_input));+  }+  FL_EXPORT_C(void,Fl_File_Input_Destroy)(fl_File_Input file_input){+    delete (static_cast<Fl_File_Input*>(file_input));+  }+  FL_EXPORT_C(void,Fl_File_Input_resize)(fl_File_Input file_input,int X,int Y,int W,int H){+    (static_cast<Fl_File_Input*>(file_input))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(int,Fl_File_Input_static_value)(fl_File_Input file_input,const char* text){+    return (static_cast<Fl_File_Input*>(file_input))->static_value(text);+  }+  FL_EXPORT_C(int,Fl_File_Input_static_value_with_length)(fl_File_Input file_input,const char* text,int length){+    return (static_cast<Fl_File_Input*>(file_input))->static_value(text,length);+  }+  FL_EXPORT_C(Fl_Char,Fl_File_Input_index)(fl_File_Input file_input,int i){+    return (static_cast<Fl_File_Input*>(file_input))->index(i);+  }+  FL_EXPORT_C(int,Fl_File_Input_size)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->size();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_size)(fl_File_Input file_input,int W,int H){+    (static_cast<Fl_File_Input*>(file_input))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_File_Input_maximum_size)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->maximum_size();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_maximum_size)(fl_File_Input file_input,int m){+    (static_cast<Fl_File_Input*>(file_input))->maximum_size(m);+  }+  FL_EXPORT_C(int,Fl_File_Input_position)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->position();+  }+  FL_EXPORT_C(int,Fl_File_Input_mark)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->mark();+  }+  FL_EXPORT_C(int,Fl_File_Input_set_position_with_cursor_mark)(fl_File_Input file_input,int p,int m){+    return (static_cast<Fl_File_Input*>(file_input))->position(p,m);+  }+  FL_EXPORT_C(int,Fl_File_Input_set_position_n_n)(fl_File_Input file_input,int p){+    return (static_cast<Fl_File_Input*>(file_input))->position(p);+  }+  FL_EXPORT_C(int,Fl_File_Input_set_mark)(fl_File_Input file_input,int m){+    return (static_cast<Fl_File_Input*>(file_input))->mark(m);+  }+  FL_EXPORT_C(int,Fl_File_Input_replace)(fl_File_Input file_input,int b,int e,const char* text){+    return (static_cast<Fl_File_Input*>(file_input))->replace(b,e,text);+  }+  FL_EXPORT_C(int,Fl_File_Input_replace_with_ilen)(fl_File_Input file_input,int b,int e,const char* text,int ilen){+    return (static_cast<Fl_File_Input*>(file_input))->replace(b,e,text,ilen);+  }+  FL_EXPORT_C(int,Fl_File_Input_cut)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->cut();+  }+  FL_EXPORT_C(int,Fl_File_Input_cut_bytes)(fl_File_Input file_input,int n){+    return (static_cast<Fl_File_Input*>(file_input))->cut(n);+  }+  FL_EXPORT_C(int,Fl_File_Input_cut_range)(fl_File_Input file_input,int a,int b){+    return (static_cast<Fl_File_Input*>(file_input))->cut(a,b);+  }+  FL_EXPORT_C(int,Fl_File_Input_insert)(fl_File_Input file_input,const char* t){+    return (static_cast<Fl_File_Input*>(file_input))->insert(t);+  }+  FL_EXPORT_C(int,Fl_File_Input_insert_with_length)(fl_File_Input file_input,const char* t,int l){+    return (static_cast<Fl_File_Input*>(file_input))->insert(t,l);+  }+  FL_EXPORT_C(int,Fl_File_Input_copy)(fl_File_Input file_input,int clipboard){+    return (static_cast<Fl_File_Input*>(file_input))->copy(clipboard);+  }+  FL_EXPORT_C(int,Fl_File_Input_undo)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->undo();+  }+  FL_EXPORT_C(int,Fl_File_Input_copy_cuts)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->copy_cuts();+  }+  FL_EXPORT_C(int,Fl_File_Input_shortcut)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->shortcut();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_shortcut)(fl_File_Input file_input,int s){+    (static_cast<Fl_File_Input*>(file_input))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Font,Fl_File_Input_textfont)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->textfont();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_textfont)(fl_File_Input file_input,Fl_Font s){+    (static_cast<Fl_File_Input*>(file_input))->textfont(s);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_File_Input_textsize)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->textsize();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_textsize)(fl_File_Input file_input,Fl_Fontsize s){+    (static_cast<Fl_File_Input*>(file_input))->textsize(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_File_Input_textcolor)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->textcolor();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_textcolor)(fl_File_Input file_input,Fl_Color n){+    (static_cast<Fl_File_Input*>(file_input))->textcolor(n);+  }+  FL_EXPORT_C(Fl_Color,Fl_File_Input_cursor_color)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->cursor_color();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_cursor_color)(fl_File_Input file_input,Fl_Color n){+    (static_cast<Fl_File_Input*>(file_input))->cursor_color(n);+  }+  FL_EXPORT_C(int,Fl_File_Input_input_type)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->input_type();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_input_type)(fl_File_Input file_input,int t){+    (static_cast<Fl_File_Input*>(file_input))->input_type(t);+  }+  FL_EXPORT_C(int,Fl_File_Input_readonly)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->readonly();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_readonly)(fl_File_Input file_input,int b){+    (static_cast<Fl_File_Input*>(file_input))->readonly(b);+  }+  FL_EXPORT_C(int,Fl_File_Input_wrap)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->wrap();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_wrap)(fl_File_Input file_input,int b){+    (static_cast<Fl_File_Input*>(file_input))->wrap(b);+  }+  FL_EXPORT_C(void,Fl_File_Input_tab_nav)(fl_File_Input file_input,int val){+    (static_cast<Fl_File_Input*>(file_input))->tab_nav(val);+  }+  FL_EXPORT_C(int,Fl_File_Input_set_tab_nav)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->tab_nav();+  }+  FL_EXPORT_C(int,Fl_File_Input_set_value)(fl_File_Input file_input,const char* text){+    return (static_cast<Fl_File_Input*>(file_input))->value(text);+  }+  FL_EXPORT_C(int,Fl_File_Input_set_value_with_length)(fl_File_Input file_input,const char* text,int length){+    return (static_cast<Fl_File_Input*>(file_input))->value(text,length);+  }+  FL_EXPORT_C(const char*,Fl_File_Input_value)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->value();+  }+  FL_EXPORT_C(Fl_Color,Fl_File_Input_errorcolor)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->errorcolor();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_errorcolor)(fl_File_Input file_input,Fl_Color color){+    (static_cast<Fl_File_Input*>(file_input))->errorcolor(color);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_File_Input_down_box)(fl_File_Input file_input){+    return (static_cast<Fl_File_Input*>(file_input))->down_box();+  }+  FL_EXPORT_C(void,Fl_File_Input_set_down_box)(fl_File_Input file_input,Fl_Boxtype color){+    (static_cast<Fl_File_Input*>(file_input))->down_box(color);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_File_InputC.h view
@@ -0,0 +1,154 @@+#ifndef __FL_FILE_INPUT_C__+#define __FL_FILE_INPUT_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_File_Input.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_File_Input_handle)(fl_File_Input self, int event);+  FL_EXPORT_C(fl_Group,     Fl_File_Input_parent)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_parent)(fl_File_Input file_input, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_File_Input_type)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_type)(fl_File_Input file_input, uchar t);++  FL_EXPORT_C(int,          Fl_File_Input_x)(fl_File_Input file_input);+  FL_EXPORT_C(int,          Fl_File_Input_y)(fl_File_Input file_input);+  FL_EXPORT_C(int,          Fl_File_Input_w)(fl_File_Input file_input);+  FL_EXPORT_C(int,          Fl_File_Input_h)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_align)(fl_File_Input file_input, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_File_Input_align)(fl_File_Input file_input);+  FL_EXPORT_C(Fl_Boxtype,   Fl_File_Input_box)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_box)(fl_File_Input file_input, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_File_Input_color)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_color)(fl_File_Input file_input, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_File_Input_set_color_with_bg_sel)(fl_File_Input file_input,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_File_Input_selection_color)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_selection_color)(fl_File_Input file_input, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_File_Input_label)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_copy_label)(fl_File_Input file_input, const char* new_label);+  FL_EXPORT_C(void,         Fl_File_Input_set_label)(fl_File_Input file_input, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_File_Input_labeltype)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_labeltype)(fl_File_Input file_input, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_File_Input_labelcolor)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_labelcolor)(fl_File_Input file_input, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_File_Input_labelfont)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_labelfont)(fl_File_Input file_input, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_File_Input_labelsize)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_labelsize)(fl_File_Input file_input, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_File_Input_image)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_image)(fl_File_Input file_input, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_File_Input_deimage)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_deimage)(fl_File_Input file_input, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_File_Input_tooltip)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_copy_tooltip)(fl_File_Input file_input, const char* text);+  FL_EXPORT_C(void,         Fl_File_Input_set_tooltip)(fl_File_Input file_input, const char* text);+  FL_EXPORT_C(void,         Fl_File_Input_set_callback_with_user_data)(fl_File_Input file_input, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_File_Input_set_callback)(fl_File_Input file_input, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_File_Input_user_data)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_user_data)(fl_File_Input file_input, void* v);+  FL_EXPORT_C(long,         Fl_File_Input_argument)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_argument)(fl_File_Input file_input, long v);+  FL_EXPORT_C(Fl_When,      Fl_File_Input_when)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_when)(fl_File_Input file_input, uchar i);+  FL_EXPORT_C(unsigned int, Fl_File_Input_visible)(fl_File_Input file_input);+  FL_EXPORT_C(int,          Fl_File_Input_visible_r)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_visible)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_clear_visible)(fl_File_Input file_input);+  FL_EXPORT_C(unsigned int, Fl_File_Input_active)(fl_File_Input file_input);+  FL_EXPORT_C(int,          Fl_File_Input_active_r)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_activate)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_deactivate)(fl_File_Input file_input);+  FL_EXPORT_C(unsigned int, Fl_File_Input_output)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_output)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_clear_output)(fl_File_Input file_input);+  FL_EXPORT_C(unsigned int, Fl_File_Input_takesevents)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_changed)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_clear_changed)(fl_File_Input file_input);+  FL_EXPORT_C(int,          Fl_File_Input_take_focus)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_visible_focus)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_clear_visible_focus)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_modify_visible_focus)(fl_File_Input file_input, int v);+  FL_EXPORT_C(unsigned int, Fl_File_Input_visible_focus)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_do_callback)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_do_callback_with_widget_and_user_data)(fl_File_Input file_input, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_File_Input_do_callback_with_widget_and_default_user_data)(fl_File_Input file_input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_File_Input_contains)(fl_File_Input file_input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_File_Input_inside)(fl_File_Input file_input, fl_Widget w);+  FL_EXPORT_C(void,         Fl_File_Input_redraw)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_redraw_label)(fl_File_Input file_input);+  FL_EXPORT_C(uchar,        Fl_File_Input_damage)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_clear_damage_with_bitmask)(fl_File_Input file_input, uchar c);+  FL_EXPORT_C(void,         Fl_File_Input_clear_damage)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_damage_with_text)(fl_File_Input file_input, uchar c);+  FL_EXPORT_C(void,         Fl_File_Input_damage_inside_widget)(fl_File_Input file_input, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_File_Input_draw_label_with_xywh_alignment)(fl_File_Input file_input, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_File_Input_measure_label)(fl_File_Input file_input, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_File_Input_window)(fl_File_Input file_input);+  FL_EXPORT_C(fl_Window,    Fl_File_Input_top_window)(fl_File_Input file_input);+  FL_EXPORT_C(fl_Window ,   Fl_File_Input_top_window_offset)(fl_File_Input file_input, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_File_Input_as_group)(fl_File_Input file_input);+  FL_EXPORT_C(fl_Gl_Window, Fl_File_Input_as_gl_window)(fl_File_Input file_input);+  /* Inherited from Fl_Input */+  FL_EXPORT_C(int,           Fl_File_Input_handle)(fl_File_Input file_input, int event);+  FL_EXPORT_C(void,        Fl_File_Input_resize)(fl_File_Input file_input, int X, int Y, int W, int H);+  FL_EXPORT_C(int,         Fl_File_Input_static_value)(fl_File_Input file_input, const char* text);+  FL_EXPORT_C(int,         Fl_File_Input_static_value_with_length)(fl_File_Input file_input, const char* text, int length);+  FL_EXPORT_C(Fl_Char,     Fl_File_Input_index)(fl_File_Input file_input, int i);+  FL_EXPORT_C(int,         Fl_File_Input_size)(fl_File_Input file_input);+  FL_EXPORT_C(void,        Fl_File_Input_set_size)(fl_File_Input file_input, int W, int H);+  FL_EXPORT_C(int,         Fl_File_Input_maximum_size)(fl_File_Input file_input);+  FL_EXPORT_C(void,        Fl_File_Input_set_maximum_size)(fl_File_Input file_input, int m);+  FL_EXPORT_C(int,         Fl_File_Input_position)(fl_File_Input file_input);+  FL_EXPORT_C(int,         Fl_File_Input_mark)(fl_File_Input file_input);+  FL_EXPORT_C(int,         Fl_File_Input_set_position_with_cursor_mark)(fl_File_Input file_input,int p, int m);+  FL_EXPORT_C(int,         Fl_File_Input_set_position_n_n)(fl_File_Input file_input,int p);+  FL_EXPORT_C(int,         Fl_File_Input_set_mark)(fl_File_Input file_input,int m);+  FL_EXPORT_C(int,         Fl_File_Input_replace)(fl_File_Input file_input,int b, int e, const char *text);+  FL_EXPORT_C(int,         Fl_File_Input_replace_with_ilen)(fl_File_Input file_input,int b, int e, const char *text, int ilen);+  FL_EXPORT_C(int,         Fl_File_Input_cut)(fl_File_Input file_input);+  FL_EXPORT_C(int,         Fl_File_Input_cut_bytes)(fl_File_Input file_input,int n);+  FL_EXPORT_C(int,         Fl_File_Input_cut_range)(fl_File_Input file_input,int a, int b);+  FL_EXPORT_C(int,         Fl_File_Input_insert)(fl_File_Input file_input,const char* t);+  FL_EXPORT_C(int,         Fl_File_Input_insert_with_length)(fl_File_Input file_input,const char* t, int l);+  FL_EXPORT_C(int,         Fl_File_Input_copy)(fl_File_Input file_input,int clipboard);+  FL_EXPORT_C(int,         Fl_File_Input_undo)(fl_File_Input file_input);+  FL_EXPORT_C(int,         Fl_File_Input_copy_cuts)(fl_File_Input file_input);+  FL_EXPORT_C(int,         Fl_File_Input_shortcut)(fl_File_Input file_input);+  FL_EXPORT_C(void,        Fl_File_Input_set_shortcut)(fl_File_Input file_input,int s);+  FL_EXPORT_C(Fl_Font,     Fl_File_Input_textfont)(fl_File_Input file_input);+  FL_EXPORT_C(void,        Fl_File_Input_set_textfont)(fl_File_Input file_input,Fl_Font s);+  FL_EXPORT_C(Fl_Fontsize, Fl_File_Input_textsize)(fl_File_Input file_input);+  FL_EXPORT_C(void,        Fl_File_Input_set_textsize)(fl_File_Input file_input,Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color,    Fl_File_Input_textcolor)(fl_File_Input file_input);+  FL_EXPORT_C(void,        Fl_File_Input_set_textcolor)(fl_File_Input file_input,Fl_Color n);+  FL_EXPORT_C(Fl_Color,    Fl_File_Input_cursor_color)(fl_File_Input file_input);+  FL_EXPORT_C(void,        Fl_File_Input_set_cursor_color)(fl_File_Input file_input,Fl_Color n);+  FL_EXPORT_C(int,         Fl_File_Input_input_type)(fl_File_Input file_input);+  FL_EXPORT_C(void,        Fl_File_Input_set_input_type)(fl_File_Input file_input,int t);+  FL_EXPORT_C(int,         Fl_File_Input_readonly)(fl_File_Input file_input);+  FL_EXPORT_C(void,        Fl_File_Input_set_readonly)(fl_File_Input file_input,int b);+  FL_EXPORT_C(int,         Fl_File_Input_wrap)(fl_File_Input file_input);+  FL_EXPORT_C(void,        Fl_File_Input_set_wrap)(fl_File_Input file_input,int b);+  FL_EXPORT_C(void,        Fl_File_Input_tab_nav)(fl_File_Input file_input,int val);+  FL_EXPORT_C(int,         Fl_File_Input_set_tab_nav)(fl_File_Input file_input);++  /* Fl_File_Input specific functions */+  FL_EXPORT_C(fl_File_Input, Fl_File_Input_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_File_Input, Fl_File_Input_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,          Fl_File_Input_Destroy)(fl_File_Input file_input);+  FL_EXPORT_C(int,         Fl_File_Input_set_value)(fl_File_Input file_input, const char*);+  FL_EXPORT_C(int,         Fl_File_Input_set_value_with_length)(fl_File_Input file_input, const char* text, int length);+  FL_EXPORT_C(const char*, Fl_File_Input_value)(fl_File_Input file_input);+  FL_EXPORT_C(Fl_Color,    Fl_File_Input_errorcolor)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_errorcolor)(fl_File_Input file_input, Fl_Color color);+  FL_EXPORT_C(Fl_Boxtype,  Fl_File_Input_down_box)(fl_File_Input file_input);+  FL_EXPORT_C(void,         Fl_File_Input_set_down_box)(fl_File_Input file_input, Fl_Boxtype color);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_FILE_INPUT_C__*/
+ c-src/Fl_Float_InputC.cpp view
@@ -0,0 +1,413 @@+#include "Fl_Float_InputC.h"++#ifdef __cplusplus+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Float_Input_handle)(fl_Float_Input self, int event){+    return (static_cast<Fl_Float_Input*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Float_Input_parent)(fl_Float_Input float_input){+    return (fl_Group) (static_cast<Fl_Float_Input*>(float_input))->parent();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_parent)(fl_Float_Input float_input,fl_Group grp){+    (static_cast<Fl_Float_Input*>(float_input))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Float_Input_type)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->type();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_type)(fl_Float_Input float_input,uchar t){+    (static_cast<Fl_Float_Input*>(float_input))->type(t);+  }++  FL_EXPORT_C(int,Fl_Float_Input_x)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->x();+  }+  FL_EXPORT_C(int,Fl_Float_Input_y)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->y();+  }+  FL_EXPORT_C(int,Fl_Float_Input_w)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->w();+  }+  FL_EXPORT_C(int,Fl_Float_Input_h)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->h();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_align)(fl_Float_Input float_input, Fl_Align alignment){+    (static_cast<Fl_Float_Input*>(float_input))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Float_Input_align)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Float_Input_box)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->box();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_box)(fl_Float_Input float_input,Fl_Boxtype new_box){+    (static_cast<Fl_Float_Input*>(float_input))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Float_Input_color)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->color();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_color)(fl_Float_Input float_input,Fl_Color bg){+    (static_cast<Fl_Float_Input*>(float_input))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_color_with_bg_sel)(fl_Float_Input float_input,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Float_Input*>(float_input))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Float_Input_selection_color)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_selection_color)(fl_Float_Input float_input,Fl_Color a){+    (static_cast<Fl_Float_Input*>(float_input))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Float_Input_label)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->label();+  }+  FL_EXPORT_C(void,Fl_Float_Input_copy_label)(fl_Float_Input float_input,const char* new_label){+    (static_cast<Fl_Float_Input*>(float_input))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_label)(fl_Float_Input float_input,const char* text){+    (static_cast<Fl_Float_Input*>(float_input))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Float_Input_labeltype)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_labeltype)(fl_Float_Input float_input,Fl_Labeltype a){+    (static_cast<Fl_Float_Input*>(float_input))->labeltype(a);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Float_Input_labelcolor)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Float_Input_labelfont)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_labelfont)(fl_Float_Input float_input,Fl_Font c){+    (static_cast<Fl_Float_Input*>(float_input))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Float_Input_labelsize)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_labelsize)(fl_Float_Input float_input,Fl_Fontsize pix){+    (static_cast<Fl_Float_Input*>(float_input))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Float_Input_image)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->image();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_image)(fl_Float_Input float_input,fl_Image pix){+    (static_cast<Fl_Float_Input*>(float_input))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Float_Input_deimage)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->deimage();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_deimage)(fl_Float_Input float_input,fl_Image pix){+    (static_cast<Fl_Float_Input*>(float_input))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Float_Input_tooltip)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Float_Input_copy_tooltip)(fl_Float_Input float_input,const char* text){+    (static_cast<Fl_Float_Input*>(float_input))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_tooltip)(fl_Float_Input float_input,const char* text){+    (static_cast<Fl_Float_Input*>(float_input))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_callback_with_user_data)(fl_Float_Input float_input,fl_Callback* cb,void* p){+    Fl_Float_Input* castedInput_dow = (static_cast<Fl_Float_Input*>(float_input));+    new C_to_Fl_Callback(castedInput_dow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_callback)(fl_Float_Input float_input,fl_Callback* cb){+    Fl_Float_Input* castedInput_dow = (static_cast<Fl_Float_Input*>(float_input));+    new C_to_Fl_Callback(castedInput_dow, cb);+  }+  FL_EXPORT_C(void*,Fl_Float_Input_user_data)(fl_Float_Input float_input){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Float_Input*>(float_input))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Float_Input*>(float_input))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_user_data)(fl_Float_Input float_input,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Float_Input*>(float_input))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Float_Input*>(float_input))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Float_Input*>(float_input))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Float_Input_argument)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->argument();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_argument)(fl_Float_Input float_input,long v){+    (static_cast<Fl_Float_Input*>(float_input))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Float_Input_when)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->when();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_when)(fl_Float_Input float_input,uchar i){+    (static_cast<Fl_Float_Input*>(float_input))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Float_Input_visible)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->visible();+  }+  FL_EXPORT_C(int,Fl_Float_Input_visible_r)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_visible)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->visible();+  }+  FL_EXPORT_C(void,Fl_Float_Input_clear_visible)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Float_Input_active)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->active();+  }+  FL_EXPORT_C(int,Fl_Float_Input_active_r)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->active_r();+  }+  FL_EXPORT_C(void,Fl_Float_Input_activate)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->activate();+  }+  FL_EXPORT_C(void,Fl_Float_Input_deactivate)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Float_Input_output)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->output();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_output)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->output();+  }+  FL_EXPORT_C(void,Fl_Float_Input_clear_output)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Float_Input_takesevents)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_changed)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->changed();+  }+  FL_EXPORT_C(void,Fl_Float_Input_clear_changed)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Float_Input_take_focus)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_visible_focus)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Float_Input_clear_visible_focus)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Float_Input_modify_visible_focus)(fl_Float_Input float_input,int v){+    (static_cast<Fl_Float_Input*>(float_input))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Float_Input_visible_focus)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Float_Input_do_callback)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Float_Input_do_callback_with_widget_and_user_data)(fl_Float_Input float_input,fl_Widget w,long arg){+    (static_cast<Fl_Float_Input*>(float_input))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Float_Input_do_callback_with_widget_and_default_user_data)(fl_Float_Input float_input,fl_Widget w){+    (static_cast<Fl_Float_Input*>(float_input))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Float_Input_contains)(fl_Float_Input float_input,fl_Widget w){+    return (static_cast<Fl_Float_Input*>(float_input))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Float_Input_inside)(fl_Float_Input float_input,fl_Widget w){+    return (static_cast<Fl_Float_Input*>(float_input))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Float_Input_redraw)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->redraw();+  }+  FL_EXPORT_C(void,Fl_Float_Input_redraw_label)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Float_Input_damage)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->damage();+  }+  FL_EXPORT_C(void,Fl_Float_Input_clear_damage_with_bitmask)(fl_Float_Input float_input,uchar c){+    (static_cast<Fl_Float_Input*>(float_input))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Float_Input_clear_damage)(fl_Float_Input float_input){+    (static_cast<Fl_Float_Input*>(float_input))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Float_Input_damage_with_text)(fl_Float_Input float_input,uchar c){+    (static_cast<Fl_Float_Input*>(float_input))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Float_Input_damage_inside_widget)(fl_Float_Input float_input,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Float_Input*>(float_input))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Float_Input_draw_label_with_xywh_alignment)(fl_Float_Input float_input,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Float_Input*>(float_input))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Float_Input_measure_label)(fl_Float_Input float_input,int* ww,int* hh){+    (static_cast<Fl_Float_Input*>(float_input))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Float_Input_window)(fl_Float_Input float_input){+    return (fl_Window) (static_cast<Fl_Float_Input*>(float_input))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Float_Input_top_window)(fl_Float_Input float_input){+    return (fl_Window) (static_cast<Fl_Float_Input*>(float_input))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Float_Input_top_window_offset)(fl_Float_Input float_input, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Float_Input*>(float_input))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Float_Input_as_group)(fl_Float_Input float_input){+    return (fl_Group) (static_cast<Fl_Float_Input*>(float_input))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Float_Input_as_gl_window)(fl_Float_Input float_input){+    return (fl_Gl_Window) (static_cast<Fl_Float_Input*>(float_input))->as_gl_window();+  }++  /* Fl_Float_Input specific functions */+  FL_EXPORT_C(fl_Input, Fl_Float_Input_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Float_Input* float_input = new Fl_Float_Input(x,y,w,h,label);+    return (static_cast<fl_Input>(float_input));+  }+  FL_EXPORT_C(fl_Input, Fl_Float_Input_New)(int x, int y, int w, int h) {+    Fl_Float_Input* float_input = new Fl_Float_Input(x,y,w,h,0);+    return (static_cast<fl_Input>(float_input));+  }+  FL_EXPORT_C(void,Fl_Float_Input_Destroy)(fl_Float_Input float_input){+    delete (static_cast<Fl_Float_Input*>(float_input));+  }+  FL_EXPORT_C(void,Fl_Float_Input_resize)(fl_Float_Input float_input,int X,int Y,int W,int H){+    (static_cast<Fl_Float_Input*>(float_input))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(int,Fl_Float_Input_set_value)(fl_Float_Input float_input,const char* text){+    return (static_cast<Fl_Float_Input*>(float_input))->value(text);+  }+  FL_EXPORT_C(int,Fl_Float_Input_set_value_with_length)(fl_Float_Input float_input,const char* text,int length){+    return (static_cast<Fl_Float_Input*>(float_input))->value(text,length);+  }+  FL_EXPORT_C(int,Fl_Float_Input_static_value)(fl_Float_Input float_input,const char* text){+    return (static_cast<Fl_Float_Input*>(float_input))->static_value(text);+  }+  FL_EXPORT_C(int,Fl_Float_Input_static_value_with_length)(fl_Float_Input float_input,const char* text,int length){+    return (static_cast<Fl_Float_Input*>(float_input))->static_value(text,length);+  }+  FL_EXPORT_C(const char*,Fl_Float_Input_value)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->value();+  }+  FL_EXPORT_C(Fl_Char,Fl_Float_Input_index)(fl_Float_Input float_input,int i){+    return (static_cast<Fl_Float_Input*>(float_input))->index(i);+  }+  FL_EXPORT_C(int,Fl_Float_Input_size)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->size();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_size)(fl_Float_Input float_input,int W,int H){+    (static_cast<Fl_Float_Input*>(float_input))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_Float_Input_maximum_size)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->maximum_size();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_maximum_size)(fl_Float_Input float_input,int m){+    (static_cast<Fl_Float_Input*>(float_input))->maximum_size(m);+  }+  FL_EXPORT_C(int,Fl_Float_Input_position)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->position();+  }+  FL_EXPORT_C(int,Fl_Float_Input_mark)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->mark();+  }+  FL_EXPORT_C(int,Fl_Float_Input_set_position_with_cursor_mark)(fl_Float_Input float_input,int p,int m){+    return (static_cast<Fl_Float_Input*>(float_input))->position(p,m);+  }+  FL_EXPORT_C(int,Fl_Float_Input_set_position_n_n)(fl_Float_Input float_input,int p){+    return (static_cast<Fl_Float_Input*>(float_input))->position(p);+  }+  FL_EXPORT_C(int,Fl_Float_Input_set_mark)(fl_Float_Input float_input,int m){+    return (static_cast<Fl_Float_Input*>(float_input))->mark(m);+  }+  FL_EXPORT_C(int,Fl_Float_Input_replace)(fl_Float_Input float_input,int b,int e,const char* text){+    return (static_cast<Fl_Float_Input*>(float_input))->replace(b,e,text);+  }+  FL_EXPORT_C(int,Fl_Float_Input_replace_with_ilen)(fl_Float_Input float_input,int b,int e,const char* text,int ilen){+    return (static_cast<Fl_Float_Input*>(float_input))->replace(b,e,text,ilen);+  }+  FL_EXPORT_C(int,Fl_Float_Input_cut)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->cut();+  }+  FL_EXPORT_C(int,Fl_Float_Input_cut_bytes)(fl_Float_Input float_input,int n){+    return (static_cast<Fl_Float_Input*>(float_input))->cut(n);+  }+  FL_EXPORT_C(int,Fl_Float_Input_cut_range)(fl_Float_Input float_input,int a,int b){+    return (static_cast<Fl_Float_Input*>(float_input))->cut(a,b);+  }+  FL_EXPORT_C(int,Fl_Float_Input_insert)(fl_Float_Input float_input,const char* t){+    return (static_cast<Fl_Float_Input*>(float_input))->insert(t);+  }+  FL_EXPORT_C(int,Fl_Float_Input_insert_with_length)(fl_Float_Input float_input,const char* t,int l){+    return (static_cast<Fl_Float_Input*>(float_input))->insert(t,l);+  }+  FL_EXPORT_C(int,Fl_Float_Input_copy)(fl_Float_Input float_input,int clipboard){+    return (static_cast<Fl_Float_Input*>(float_input))->copy(clipboard);+  }+  FL_EXPORT_C(int,Fl_Float_Input_undo)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->undo();+  }+  FL_EXPORT_C(int,Fl_Float_Input_copy_cuts)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->copy_cuts();+  }+  FL_EXPORT_C(int,Fl_Float_Input_shortcut)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_shortcut)(fl_Float_Input float_input,int s){+    (static_cast<Fl_Float_Input*>(float_input))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Font,Fl_Float_Input_textfont)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->textfont();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_textfont)(fl_Float_Input float_input,Fl_Font s){+    (static_cast<Fl_Float_Input*>(float_input))->textfont(s);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Float_Input_textsize)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->textsize();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_textsize)(fl_Float_Input float_input,Fl_Fontsize s){+    (static_cast<Fl_Float_Input*>(float_input))->textsize(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_Float_Input_textcolor)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_textcolor)(fl_Float_Input float_input,Fl_Color n){+    (static_cast<Fl_Float_Input*>(float_input))->textcolor(n);+  }+  FL_EXPORT_C(Fl_Color,Fl_Float_Input_cursor_color)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->cursor_color();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_cursor_color)(fl_Float_Input float_input,Fl_Color n){+    (static_cast<Fl_Float_Input*>(float_input))->cursor_color(n);+  }+  FL_EXPORT_C(int,Fl_Float_Input_input_type)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->input_type();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_input_type)(fl_Float_Input float_input,int t){+    (static_cast<Fl_Float_Input*>(float_input))->input_type(t);+  }+  FL_EXPORT_C(int,Fl_Float_Input_readonly)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->readonly();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_readonly)(fl_Float_Input float_input,int b){+    (static_cast<Fl_Float_Input*>(float_input))->readonly(b);+  }+  FL_EXPORT_C(int,Fl_Float_Input_wrap)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->wrap();+  }+  FL_EXPORT_C(void,Fl_Float_Input_set_wrap)(fl_Float_Input float_input,int b){+    (static_cast<Fl_Float_Input*>(float_input))->wrap(b);+  }+  FL_EXPORT_C(void,Fl_Float_Input_tab_nav)(fl_Float_Input float_input,int val){+    (static_cast<Fl_Float_Input*>(float_input))->tab_nav(val);+  }+  FL_EXPORT_C(int,Fl_Float_Input_set_tab_nav)(fl_Float_Input float_input){+    return (static_cast<Fl_Float_Input*>(float_input))->tab_nav();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Float_InputC.h view
@@ -0,0 +1,149 @@+#ifndef __FL_FLOAT_INPUT_C__+#define __FL_FLOAT_INPUT_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Float_Input.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Float_Input_handle)(fl_Float_Input self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Float_Input_parent)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_parent)(fl_Float_Input float_input, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Float_Input_type)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_type)(fl_Float_Input float_input, uchar t);++  FL_EXPORT_C(int,          Fl_Float_Input_x)(fl_Float_Input float_input);+  FL_EXPORT_C(int,          Fl_Float_Input_y)(fl_Float_Input float_input);+  FL_EXPORT_C(int,          Fl_Float_Input_w)(fl_Float_Input float_input);+  FL_EXPORT_C(int,          Fl_Float_Input_h)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_align)(fl_Float_Input float_input, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,         Fl_Float_Input_align)(fl_Float_Input float_input);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Float_Input_box)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_box)(fl_Float_Input float_input, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Float_Input_color)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_color)(fl_Float_Input float_input, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Float_Input_set_color_with_bg_sel)(fl_Float_Input float_input,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Float_Input_selection_color)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_selection_color)(fl_Float_Input float_input, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Float_Input_label)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_copy_label)(fl_Float_Input float_input, const char* new_label);+  FL_EXPORT_C(void,         Fl_Float_Input_set_label)(fl_Float_Input float_input, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Float_Input_labeltype)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_labeltype)(fl_Float_Input float_input, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Float_Input_labelcolor)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_labelcolor)(fl_Float_Input float_input, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Float_Input_labelfont)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_labelfont)(fl_Float_Input float_input, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Float_Input_labelsize)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_labelsize)(fl_Float_Input float_input, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Float_Input_image)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_image)(fl_Float_Input float_input, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Float_Input_deimage)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_deimage)(fl_Float_Input float_input, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Float_Input_tooltip)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_copy_tooltip)(fl_Float_Input float_input, const char* text);+  FL_EXPORT_C(void,         Fl_Float_Input_set_tooltip)(fl_Float_Input float_input, const char* text);+  FL_EXPORT_C(void,         Fl_Float_Input_set_callback_with_user_data)(fl_Float_Input float_input, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Float_Input_set_callback)(fl_Float_Input float_input, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Float_Input_user_data)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_user_data)(fl_Float_Input float_input, void* v);+  FL_EXPORT_C(long,         Fl_Float_Input_argument)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_argument)(fl_Float_Input float_input, long v);+  FL_EXPORT_C(Fl_When,      Fl_Float_Input_when)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_when)(fl_Float_Input float_input, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Float_Input_visible)(fl_Float_Input float_input);+  FL_EXPORT_C(int,          Fl_Float_Input_visible_r)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_visible)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_clear_visible)(fl_Float_Input float_input);+  FL_EXPORT_C(unsigned int, Fl_Float_Input_active)(fl_Float_Input float_input);+  FL_EXPORT_C(int,          Fl_Float_Input_active_r)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_activate)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_deactivate)(fl_Float_Input float_input);+  FL_EXPORT_C(unsigned int, Fl_Float_Input_output)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_output)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_clear_output)(fl_Float_Input float_input);+  FL_EXPORT_C(unsigned int, Fl_Float_Input_takesevents)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_changed)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_clear_changed)(fl_Float_Input float_input);+  FL_EXPORT_C(int,          Fl_Float_Input_take_focus)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_visible_focus)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_clear_visible_focus)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_modify_visible_focus)(fl_Float_Input float_input, int v);+  FL_EXPORT_C(unsigned int, Fl_Float_Input_visible_focus)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_do_callback)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_do_callback_with_widget_and_user_data)(fl_Float_Input float_input, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Float_Input_do_callback_with_widget_and_default_user_data)(fl_Float_Input float_input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Float_Input_contains)(fl_Float_Input float_input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Float_Input_inside)(fl_Float_Input float_input, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Float_Input_redraw)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_redraw_label)(fl_Float_Input float_input);+  FL_EXPORT_C(uchar,        Fl_Float_Input_damage)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_clear_damage_with_bitmask)(fl_Float_Input float_input, uchar c);+  FL_EXPORT_C(void,         Fl_Float_Input_clear_damage)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_damage_with_text)(fl_Float_Input float_input, uchar c);+  FL_EXPORT_C(void,         Fl_Float_Input_damage_inside_widget)(fl_Float_Input float_input, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Float_Input_draw_label_with_xywh_alignment)(fl_Float_Input float_input, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Float_Input_measure_label)(fl_Float_Input float_input, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Float_Input_window)(fl_Float_Input float_input);+  FL_EXPORT_C(fl_Window,    Fl_Float_Input_top_window)(fl_Float_Input float_input);+  FL_EXPORT_C(fl_Window ,   Fl_Float_Input_top_window_offset)(fl_Float_Input float_input, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Float_Input_as_group)(fl_Float_Input float_input);+  FL_EXPORT_C(fl_Gl_Window, Fl_Float_Input_as_gl_window)(fl_Float_Input float_input);+  /* Fl_Float_Input specific functions */+  FL_EXPORT_C(int,      Fl_Float_Input_handle)(fl_Float_Input float_input, int event);+  FL_EXPORT_C(fl_Float_Input, Fl_Float_Input_New_WithLabel)(int x, int y, int w, int h, const char* label); +  FL_EXPORT_C(fl_Float_Input, Fl_Float_Input_New)(int x, int y, int w, int h); +  FL_EXPORT_C(void,     Fl_Float_Input_Destroy)(fl_Float_Input float_input);+  +  FL_EXPORT_C(void,         Fl_Float_Input_resize)(fl_Float_Input float_input, int X, int Y, int W, int H);+  FL_EXPORT_C(int,          Fl_Float_Input_set_value)(fl_Float_Input float_input, const char*);+  FL_EXPORT_C(int,          Fl_Float_Input_set_value_with_length)(fl_Float_Input float_input, const char* text, int length);+  FL_EXPORT_C(int,          Fl_Float_Input_static_value)(fl_Float_Input float_input, const char* text);+  FL_EXPORT_C(int,          Fl_Float_Input_static_value_with_length)(fl_Float_Input float_input, const char* text, int length);+  FL_EXPORT_C(const char*,  Fl_Float_Input_value)(fl_Float_Input float_input);+  FL_EXPORT_C(Fl_Char,      Fl_Float_Input_index)(fl_Float_Input float_input, int i);+  FL_EXPORT_C(int,          Fl_Float_Input_size)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_size)(fl_Float_Input float_input, int W, int H);+  FL_EXPORT_C(int,          Fl_Float_Input_maximum_size)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_maximum_size)(fl_Float_Input float_input, int m);+  FL_EXPORT_C(int,          Fl_Float_Input_position)(fl_Float_Input float_input);+  FL_EXPORT_C(int,          Fl_Float_Input_mark)(fl_Float_Input float_input);+  FL_EXPORT_C(int,          Fl_Float_Input_set_position_with_cursor_mark)(fl_Float_Input float_input,int p, int m);+  FL_EXPORT_C(int,          Fl_Float_Input_set_position_n_n)(fl_Float_Input float_input,int p);+  FL_EXPORT_C(int,          Fl_Float_Input_set_mark)(fl_Float_Input float_input,int m);+  FL_EXPORT_C(int,          Fl_Float_Input_replace)(fl_Float_Input float_input,int b, int e, const char *text);+  FL_EXPORT_C(int,          Fl_Float_Input_replace_with_ilen)(fl_Float_Input float_input,int b, int e, const char *text, int ilen);+  FL_EXPORT_C(int,          Fl_Float_Input_cut)(fl_Float_Input float_input);+  FL_EXPORT_C(int,          Fl_Float_Input_cut_bytes)(fl_Float_Input float_input,int n);+  FL_EXPORT_C(int,          Fl_Float_Input_cut_range)(fl_Float_Input float_input,int a, int b);+  FL_EXPORT_C(int,          Fl_Float_Input_insert)(fl_Float_Input float_input,const char* t);+  FL_EXPORT_C(int,          Fl_Float_Input_insert_with_length)(fl_Float_Input float_input,const char* t, int l);+  FL_EXPORT_C(int,          Fl_Float_Input_copy)(fl_Float_Input float_input,int clipboard);+  FL_EXPORT_C(int,          Fl_Float_Input_undo)(fl_Float_Input float_input);+  FL_EXPORT_C(int,          Fl_Float_Input_copy_cuts)(fl_Float_Input float_input);+  FL_EXPORT_C(int,          Fl_Float_Input_shortcut)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_shortcut)(fl_Float_Input float_input,int s);+  FL_EXPORT_C(Fl_Font,      Fl_Float_Input_textfont)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_textfont)(fl_Float_Input float_input,Fl_Font s);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Float_Input_textsize)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_textsize)(fl_Float_Input float_input,Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color,     Fl_Float_Input_textcolor)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_textcolor)(fl_Float_Input float_input,Fl_Color n);+  FL_EXPORT_C(Fl_Color,     Fl_Float_Input_cursor_color)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_cursor_color)(fl_Float_Input float_input,Fl_Color n);+  FL_EXPORT_C(int,          Fl_Float_Input_input_type)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_input_type)(fl_Float_Input float_input,int t);+  FL_EXPORT_C(int,          Fl_Float_Input_readonly)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_readonly)(fl_Float_Input float_input,int b);+  FL_EXPORT_C(int,          Fl_Float_Input_wrap)(fl_Float_Input float_input);+  FL_EXPORT_C(void,         Fl_Float_Input_set_wrap)(fl_Float_Input float_input,int b);+  FL_EXPORT_C(void,         Fl_Float_Input_tab_nav)(fl_Float_Input float_input,int val);+  FL_EXPORT_C(int,          Fl_Float_Input_set_tab_nav)(fl_Float_Input float_input);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_FLOAT_INPUT_C__*/
+ c-src/Fl_Gl_WindowC.cpp view
@@ -0,0 +1,839 @@+#include "Fl_Gl_WindowC.h"++#ifdef __cplusplus+Fl_DerivedGl_Window::Fl_DerivedGl_Window(int X, int Y, int W, int H, const char *l, fl_Gl_Window_Virtual_Funcs* funcs) : Fl_Gl_Window(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = 0;+ }+Fl_DerivedGl_Window::Fl_DerivedGl_Window(int X, int Y, int W, int H, fl_Gl_Window_Virtual_Funcs* funcs):Fl_Gl_Window(X,Y,W,H,0){+    overriddenFuncs = funcs;+    other_data = 0;+  }+Fl_DerivedGl_Window::Fl_DerivedGl_Window(int W, int H, const char *l, fl_Gl_Window_Virtual_Funcs* funcs) : Fl_Gl_Window(W,H,l){+    overriddenFuncs = funcs;+    other_data = 0;+ }+Fl_DerivedGl_Window::Fl_DerivedGl_Window(int W, int H, fl_Gl_Window_Virtual_Funcs* funcs):Fl_Gl_Window(W,H,0){+    overriddenFuncs = funcs;+    other_data = 0;+  }+Fl_DerivedGl_Window::~Fl_DerivedGl_Window(){+  destroy_data();+  free(overriddenFuncs);+}+void* Fl_DerivedGl_Window::get_other_data(){+  return this->other_data;+}+void Fl_DerivedGl_Window::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedGl_Window::destroy_data(){+  if (this->overriddenFuncs->destroy_data != NULL){+    this->overriddenFuncs->destroy_data((fl_Gl_Window) this);+  }+}+void Fl_DerivedGl_Window::draw_box(){+  Fl_Gl_Window::draw_box();+}+void Fl_DerivedGl_Window::draw_box(Fl_Boxtype t, Fl_Color c){+  Fl_Gl_Window::draw_box(t,c);+}+void Fl_DerivedGl_Window::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+  Fl_Gl_Window::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedGl_Window::draw_backdrop(){+  Fl_Gl_Window::draw_backdrop();+}+void Fl_DerivedGl_Window::draw_focus(){+  Fl_Gl_Window::draw_focus();+}+void Fl_DerivedGl_Window::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+  Fl_Gl_Window::draw_focus(t,x,y,w,h);+}+void Fl_DerivedGl_Window::draw_label(){+  Fl_Gl_Window::draw_label();+}+void Fl_DerivedGl_Window::draw_label(int x,int y,int w,int h,Fl_Align alignment){+  Fl_Gl_Window::draw_label(x,y,w,h,alignment);+}+int Fl_DerivedGl_Window::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Gl_Window) this,event);+  }+  else {+    i = Fl_Gl_Window::handle(event);+  }+  return i;+}+void Fl_DerivedGl_Window::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Gl_Window) this,x,y,w,h);+  }+  else {+    Fl_Gl_Window::resize(x,y,w,h);+  }+}+void Fl_DerivedGl_Window::resize_super(int x, int y, int w, int h){+  Fl_Gl_Window::resize(x,y,w,h);+}++void Fl_DerivedGl_Window::flush(){+  if (this->overriddenFuncs->flush != NULL) {+    this->overriddenFuncs->flush((fl_Gl_Window) this);+  }+  else {+    Fl_Gl_Window::flush();+  }+}+void Fl_DerivedGl_Window::flush_super(){+  Fl_Gl_Window::flush();+}++void Fl_DerivedGl_Window::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Gl_Window) this);+  }+  else {+    Fl_Gl_Window::show();+  }+}+void Fl_DerivedGl_Window::show_super(){+  Fl_Gl_Window::show();+}+void Fl_DerivedGl_Window::show(int argc, char** argv){+  Fl_Gl_Window::show(argc,argv);+}+void Fl_DerivedGl_Window::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Gl_Window) this);+  }+  else {+    Fl_Gl_Window::hide();+  }+}+void Fl_DerivedGl_Window::hide_super(){+  Fl_Gl_Window::hide();+}+void Fl_DerivedGl_Window::draw(){+  if (this->overriddenFuncs->draw != NULL) {+    this->overriddenFuncs->draw((fl_Gl_Window) this);+  }+  else {+    Fl_Gl_Window::draw();+  }+}+void Fl_DerivedGl_Window::draw_super(){+  Fl_Gl_Window::draw();+}+Fl_Group* Fl_DerivedGl_Window::as_group(){+  Fl_Group* grp;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    grp = (static_cast<Fl_Group*>(this->overriddenFuncs->as_group((fl_Gl_Window) this)));+  }+  else {+    grp = Fl_Gl_Window::as_group();+  }+  return grp;+}+Fl_Group* Fl_DerivedGl_Window::as_group_super(){+  return  Fl_Gl_Window::as_group();+}+Fl_Window* Fl_DerivedGl_Window::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Gl_Window) this)));+  }+  else {+    win = Fl_Gl_Window::as_window();+  }+  return win;+}+Fl_Window* Fl_DerivedGl_Window::as_window_super(){+  return Fl_Gl_Window::as_window();+}+Fl_Gl_Window* Fl_DerivedGl_Window::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Gl_Window) this)));+  }+  else {+    win = Fl_Gl_Window::as_gl_window();+  }+  return win;+}+Fl_Gl_Window* Fl_DerivedGl_Window::as_gl_window_super(){+  return Fl_Gl_Window::as_gl_window();+}+EXPORT {+#endif+  FL_EXPORT_C(fl_Gl_Window_Virtual_Funcs*, Fl_Gl_Window_default_virtual_funcs)(){+    fl_Gl_Window_Virtual_Funcs* ptr = (fl_Gl_Window_Virtual_Funcs*)malloc(sizeof(fl_Gl_Window_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->hide = NULL;+    ptr->as_gl_window = NULL;+    ptr->as_window = NULL;+    ptr->flush = NULL;+    ptr->destroy_data = NULL;+    return ptr;+  }+  FL_EXPORT_C(int,Fl_Gl_Window_handle)(fl_Gl_Window self, int event){+    return (static_cast<Fl_DerivedGl_Window*>(self))->handle(event);+  }+  FL_EXPORT_C(int,Fl_Gl_Window_handle_super)(fl_Gl_Window self, int event){+    return (static_cast<Fl_DerivedGl_Window*>(self))->Fl_Gl_Window::handle(event);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_draw_super)(fl_Gl_Window self){+    (static_cast<Fl_DerivedGl_Window*>(self))->draw_super();+  }+  FL_EXPORT_C(fl_Group,Fl_Gl_Window_parent)(fl_Gl_Window win){+    return (fl_Group) (static_cast<Fl_DerivedGl_Window*>(win))->parent();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_parent)(fl_Gl_Window win,fl_Group grp){+    (static_cast<Fl_DerivedGl_Window*>(win))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Gl_Window_type)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->type();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_type)(fl_Gl_Window win,uchar t){+    (static_cast<Fl_DerivedGl_Window*>(win))->type(t);+  }++FL_EXPORT_C(void, Fl_Gl_Window_draw_box)(fl_Gl_Window Gl_Window){+ (static_cast<Fl_DerivedGl_Window*>(Gl_Window))->draw_box();+}+FL_EXPORT_C(void, Fl_Gl_Window_draw_box_with_tc)(fl_Gl_Window Gl_Window,Fl_Boxtype t, Fl_Color c){+ (static_cast<Fl_DerivedGl_Window*>(Gl_Window))->draw_box(t,c);+}+FL_EXPORT_C(void, Fl_Gl_Window_draw_box_with_txywhc)(fl_Gl_Window Gl_Window,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+ (static_cast<Fl_DerivedGl_Window*>(Gl_Window))->draw_box(t,x,y,w,h,c);+}+FL_EXPORT_C(void, Fl_Gl_Window_draw_backdrop)(fl_Gl_Window Gl_Window){+ (static_cast<Fl_DerivedGl_Window*>(Gl_Window))->draw_backdrop();+}+FL_EXPORT_C(void, Fl_Gl_Window_draw_focus)(fl_Gl_Window Gl_Window){+ (static_cast<Fl_DerivedGl_Window*>(Gl_Window))->draw_focus();+}+FL_EXPORT_C(void, Fl_Gl_Window_draw_focus_with_txywh)(fl_Gl_Window Gl_Window,Fl_Boxtype t, int x,int y,int w,int h){+ (static_cast<Fl_DerivedGl_Window*>(Gl_Window))->draw_focus(t,x,y,w,h);+}+FL_EXPORT_C(void, Fl_Gl_Window_draw_label)(fl_Gl_Window Gl_Window){+ (static_cast<Fl_DerivedGl_Window*>(Gl_Window))->draw_label();+}+  FL_EXPORT_C(int,Fl_Gl_Window_x)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->x();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_y)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->y();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_w)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->w();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_h)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->h();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_align)(fl_Gl_Window gl_window, Fl_Align alignment){+    (static_cast<Fl_DerivedGl_Window*>(gl_window))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Gl_Window_align)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Gl_Window_box)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->box();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_box)(fl_Gl_Window win,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedGl_Window*>(win))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Gl_Window_color)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->color();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_color)(fl_Gl_Window win,Fl_Color bg){+    (static_cast<Fl_DerivedGl_Window*>(win))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_color_with_bg_sel)(fl_Gl_Window win,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedGl_Window*>(win))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Gl_Window_selection_color)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_selection_color)(fl_Gl_Window win,Fl_Color a){+    (static_cast<Fl_DerivedGl_Window*>(win))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Gl_Window_label)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->label();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_copy_label)(fl_Gl_Window win,const char* new_label){+    (static_cast<Fl_DerivedGl_Window*>(win))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_label)(fl_Gl_Window win,const char* text){+    (static_cast<Fl_DerivedGl_Window*>(win))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Gl_Window_labeltype)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_labeltype)(fl_Gl_Window win,Fl_Labeltype a){+    (static_cast<Fl_DerivedGl_Window*>(win))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_labelcolor)(fl_Gl_Window win,Fl_Color c){+    (static_cast<Fl_DerivedGl_Window*>(win))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Gl_Window_labelcolor)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Gl_Window_labelfont)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_labelfont)(fl_Gl_Window win,Fl_Font c){+    (static_cast<Fl_DerivedGl_Window*>(win))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Gl_Window_labelsize)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_labelsize)(fl_Gl_Window win,Fl_Fontsize pix){+    (static_cast<Fl_DerivedGl_Window*>(win))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Gl_Window_image)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->image();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_image)(fl_Gl_Window win,fl_Image pix){+    (static_cast<Fl_DerivedGl_Window*>(win))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Gl_Window_deimage)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->deimage();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_deimage)(fl_Gl_Window win,fl_Image pix){+    (static_cast<Fl_DerivedGl_Window*>(win))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Gl_Window_tooltip)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_copy_tooltip)(fl_Gl_Window win,const char* text){+    (static_cast<Fl_DerivedGl_Window*>(win))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_tooltip)(fl_Gl_Window win,const char* text){+    (static_cast<Fl_DerivedGl_Window*>(win))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_callback_with_user_data)(fl_Gl_Window win,fl_Callback* cb,void* p){+    Fl_DerivedGl_Window* castedGl_Window = (static_cast<Fl_DerivedGl_Window*>(win));+    new C_to_Fl_Callback(castedGl_Window, cb, p);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_callback)(fl_Gl_Window win,fl_Callback* cb){+    Fl_DerivedGl_Window* castedGl_Window = (static_cast<Fl_DerivedGl_Window*>(win));+    new C_to_Fl_Callback(castedGl_Window, cb);+  }+  FL_EXPORT_C(void*,Fl_Gl_Window_user_data)(fl_Gl_Window win){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedGl_Window*>(win))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedGl_Window*>(win))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_user_data)(fl_Gl_Window win,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Gl_Window*>(win))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Gl_Window*>(win))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Gl_Window*>(win))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Gl_Window_argument)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->argument();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_argument)(fl_Gl_Window win,long v){+    (static_cast<Fl_DerivedGl_Window*>(win))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Gl_Window_when)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->when();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_when)(fl_Gl_Window win,uchar i){+    (static_cast<Fl_DerivedGl_Window*>(win))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_visible)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->visible();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_visible_r)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_visible)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->visible();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_clear_visible)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_active)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->active();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_active_r)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->active_r();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_activate)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->activate();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_deactivate)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_output)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_output)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_clear_output)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_takesevents)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_changed)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->changed();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_clear_changed)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_take_focus)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_visible_focus)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_clear_visible_focus)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_modify_visible_focus)(fl_Gl_Window win,int v){+    (static_cast<Fl_DerivedGl_Window*>(win))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_visible_focus)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_do_callback)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_do_callback_with_widget_and_user_data)(fl_Gl_Window win,fl_Widget w,long arg){+    (static_cast<Fl_DerivedGl_Window*>(win))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_do_callback_with_widget_and_default_user_data)(fl_Gl_Window win,fl_Widget w){+    (static_cast<Fl_DerivedGl_Window*>(win))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Gl_Window_contains)(fl_Gl_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedGl_Window*>(win))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Gl_Window_inside)(fl_Gl_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedGl_Window*>(win))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Gl_Window_redraw)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->redraw();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_redraw_label)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Gl_Window_damage)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->damage();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_clear_damage_with_bitmask)(fl_Gl_Window win,uchar c){+    (static_cast<Fl_DerivedGl_Window*>(win))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_clear_damage)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_damage_with_text)(fl_Gl_Window win,uchar c){+    (static_cast<Fl_DerivedGl_Window*>(win))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_damage_inside_widget)(fl_Gl_Window win,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedGl_Window*>(win))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_draw_label_with_xywh_alignment)(fl_Gl_Window win,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedGl_Window*>(win))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_measure_label)(fl_Gl_Window win,int* ww,int* hh){+    (static_cast<Fl_DerivedGl_Window*>(win))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Group,Fl_Gl_Window_as_group)(fl_Gl_Window win){+    return (fl_Group) (static_cast<Fl_DerivedGl_Window*>(win))->as_group();+  }+  FL_EXPORT_C(fl_Group,Fl_Gl_Window_as_group_super)(fl_Gl_Window win){+    return (fl_Group) (static_cast<Fl_DerivedGl_Window*>(win))->as_group_super();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Gl_Window_as_window)(fl_Gl_Window win){+    return (fl_Gl_Window) (static_cast<Fl_DerivedGl_Window*>(win))->as_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Gl_Window_as_window_super)(fl_Gl_Window win){+    return (fl_Gl_Window) (static_cast<Fl_DerivedGl_Window*>(win))->as_window_super();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Gl_Window_as_gl_window)(fl_Gl_Window win){+    return (fl_Gl_Window) (static_cast<Fl_DerivedGl_Window*>(win))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Gl_Window_as_gl_window_super)(fl_Gl_Window win){+    return (fl_Gl_Window) (static_cast<Fl_DerivedGl_Window*>(win))->as_gl_window_super();+  }+  FL_EXPORT_C(fl_Gl_Window,    Fl_Gl_Window_window)(fl_Gl_Window gl_window){+    return (fl_Gl_Window) (static_cast<Fl_DerivedGl_Window*>(gl_window))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Gl_Window_top_window)(fl_Gl_Window gl_window){+    return (fl_Window) (static_cast<Fl_DerivedGl_Window*>(gl_window))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Gl_Window_top_window_offset)(fl_Gl_Window gl_window, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedGl_Window*>(gl_window))->top_window_offset(*xoff,*yoff);+  }++  FL_EXPORT_C(void,Fl_Gl_Window_begin)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->begin();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_end)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->end();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_find)(fl_Gl_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedGl_Window*>(win))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Gl_Window_add)(fl_Gl_Window win,fl_Widget w){+    (static_cast<Fl_DerivedGl_Window*>(win))->add((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Gl_Window_insert)(fl_Gl_Window win,fl_Widget w,int i){+    (static_cast<Fl_DerivedGl_Window*>(win))->insert(*(static_cast<Fl_Widget*>(w)),i);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_remove_index)(fl_Gl_Window win,int index){+    (static_cast<Fl_DerivedGl_Window*>(win))->remove(index);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_remove_widget)(fl_Gl_Window win,fl_Widget w){+    (static_cast<Fl_DerivedGl_Window*>(win))->remove((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Gl_Window_clear)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->clear();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_resizable_by_reference)(fl_Gl_Window win,fl_Widget o){+    (static_cast<Fl_DerivedGl_Window*>(win))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_resizable)(fl_Gl_Window win,fl_Widget o){+    (static_cast<Fl_DerivedGl_Window*>(win))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Gl_Window_resizable)(fl_Gl_Window win){+    return (fl_Widget)(static_cast<Fl_DerivedGl_Window*>(win))->resizable();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_add_resizable)(fl_Gl_Window win,fl_Widget o){+    return (static_cast<Fl_DerivedGl_Window*>(win))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Gl_Window_init_sizes)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->init_sizes();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_children)(fl_Gl_Window self){+    return (static_cast<Fl_DerivedGl_Window*>(self))->children();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_clip_children)(fl_Gl_Window win,int c){+    return (static_cast<Fl_DerivedGl_Window*>(win))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_clip_children)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_focus)(fl_Gl_Window win, fl_Widget W){+    return (static_cast<Fl_DerivedGl_Window*>(win))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Gl_Window__ddfdesign_kludge)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(void, Fl_Gl_Window_insert_with_before)(fl_Gl_Window self, fl_Widget w, fl_Widget before){+    (static_cast<Fl_DerivedGl_Window*>(self))->insert(*(static_cast<Fl_Widget*>(w)),(static_cast<Fl_Widget*>(before)));+  }+  FL_EXPORT_C(fl_Widget*, Fl_Gl_Window_array)(fl_Gl_Window self){+    return (fl_Widget*)(static_cast<Fl_DerivedGl_Window*>(self))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Gl_Window_child)(fl_Gl_Window self, int n){+    return (fl_Widget)(static_cast<Fl_DerivedGl_Window*>(self))->child(n);+  }+  // FL_EXPORT_C(void,Fl_Gl_Window_forms_end)(fl_Gl_Window win){+  //   return (static_cast<Fl_DerivedGl_Window*>(win))->forms_end();+  // }+  FL_EXPORT_C(void*, Fl_Gl_Window_other_data)(fl_Gl_Window gl_window){+    return (static_cast<Fl_DerivedGl_Window*>(gl_window))->get_other_data();+  }+  FL_EXPORT_C(void, Fl_Gl_Window_set_other_data)(fl_Gl_Window gl_window, void* v){+    (static_cast<Fl_DerivedGl_Window*>(gl_window))->set_other_data(v);+  }+  FL_EXPORT_C(fl_Gl_Window, Fl_Gl_Window_New_WithLabel)(int w, int h, const char* title) {+    fl_Gl_Window_Virtual_Funcs* funcs = Fl_Gl_Window_default_virtual_funcs();+    Fl_DerivedGl_Window* gl_window = new Fl_DerivedGl_Window(w,h,title,funcs);+    return (static_cast<fl_Gl_Window>(gl_window));+  }+  FL_EXPORT_C(fl_Gl_Window, Fl_OverriddenGl_Window_New_WithLabel)(int w, int h, const char* title, fl_Gl_Window_Virtual_Funcs* funcs) {+    Fl_DerivedGl_Window* gl_window = new Fl_DerivedGl_Window(w,h,title,funcs);+    return (static_cast<fl_Gl_Window>(gl_window));+  }+  FL_EXPORT_C(fl_Gl_Window, Fl_Gl_Window_New)(int w, int h) {+    fl_Gl_Window_Virtual_Funcs* funcs = Fl_Gl_Window_default_virtual_funcs();+    Fl_DerivedGl_Window* gl_window = new Fl_DerivedGl_Window(w,h,0,funcs);+    return (fl_Gl_Window)gl_window;+  }+  FL_EXPORT_C(fl_Gl_Window, Fl_OverriddenGl_Window_New)(int w, int h,fl_Gl_Window_Virtual_Funcs* funcs) {+    Fl_DerivedGl_Window* gl_window = new Fl_DerivedGl_Window(w,h,0,funcs);+    return (fl_Gl_Window)gl_window;+  }+FL_EXPORT_C(fl_Gl_Window, Fl_Gl_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title) {+    fl_Gl_Window_Virtual_Funcs* funcs = Fl_Gl_Window_default_virtual_funcs();+    Fl_DerivedGl_Window* gl_window = new Fl_DerivedGl_Window(x,y,w,h,title,funcs);+    return (fl_Gl_Window)gl_window;+  }+FL_EXPORT_C(fl_Gl_Window, Fl_OverriddenGl_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title,fl_Gl_Window_Virtual_Funcs* funcs) {+    Fl_DerivedGl_Window* gl_window = new Fl_DerivedGl_Window(x,y,w,h,title,funcs);+    return (fl_Gl_Window)gl_window;+  }+  FL_EXPORT_C(fl_Gl_Window, Fl_Gl_Window_NewXY)(int x, int y, int w, int h) {+    fl_Gl_Window_Virtual_Funcs* funcs = Fl_Gl_Window_default_virtual_funcs();+    Fl_DerivedGl_Window* gl_window = new Fl_DerivedGl_Window(x,y,w,h,0,funcs);+    return (fl_Gl_Window)gl_window;+  }+  FL_EXPORT_C(fl_Gl_Window, Fl_OverriddenGl_Window_NewXY)(int x, int y, int w, int h,fl_Gl_Window_Virtual_Funcs* funcs) {+    Fl_DerivedGl_Window* gl_window = new Fl_DerivedGl_Window(x,y,w,h,0,funcs);+    return (fl_Gl_Window)gl_window;+  }+  FL_EXPORT_C(void, Fl_Gl_Window_Destroy)(fl_Gl_Window gl_window){+    delete (static_cast<Fl_DerivedGl_Window*>(gl_window));+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_changed)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->changed();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_fullscreen)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->fullscreen();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_fullscreen_off)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->fullscreen_off();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_fullscreen_off_with_resize)(fl_Gl_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedGl_Window*>(win))->fullscreen_off(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_hide)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->hide();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_hide_super)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->hide_super();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_flush)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->flush();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_flush_super)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->flush_super();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_show)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->show();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_show_super)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->show_super();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_show_with_args)(fl_Gl_Window win,int argc,char** argv){+    (static_cast<Fl_DerivedGl_Window*>(win))->show(argc,argv);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_resize)(fl_Gl_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedGl_Window*>(win))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_resize_super)(fl_Gl_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedGl_Window*>(win))->resize_super(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_iconize)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->iconize();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_border)(fl_Gl_Window win,int b){+    (static_cast<Fl_DerivedGl_Window*>(win))->border(b);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_clear_border)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->clear_border();+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_border)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->border();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_override)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->set_override();+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_override)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->override();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_modal)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->set_modal();+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_modal)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->modal();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_non_modal)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->set_non_modal();+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_non_modal)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->non_modal();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_menu_window)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->set_menu_window();+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_menu_window)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->menu_window();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_tooltip_window)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->set_tooltip_window();+  }+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_tooltip_window)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->tooltip_window();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_hotspot_with_x_y)(fl_Gl_Window win,int x,int y){+    (static_cast<Fl_DerivedGl_Window*>(win))->hotspot(x,y,0);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_hotspot_with_x_y_with_offscreen)(fl_Gl_Window win,int x,int y,int offscreen){+    (static_cast<Fl_DerivedGl_Window*>(win))->hotspot(x,y,offscreen);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_hotspot_with_widget)(fl_Gl_Window win,fl_Widget w){+    (static_cast<Fl_DerivedGl_Window*>(win))->hotspot((static_cast<Fl_Widget*>(w)),0);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_hotspot_with_widget_with_offscreen)(fl_Gl_Window win,fl_Widget w,int offscreen){+    (static_cast<Fl_DerivedGl_Window*>(win))->hotspot((static_cast<Fl_Widget*>(w)),offscreen);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_free_position)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->free_position();+  }+  FL_EXPORT_C(fl_Window_size_range_args*,Fl_Gl_Window_default_size_range_args)(){+    fl_Window_size_range_args* ptr = (fl_Window_size_range_args*)malloc(sizeof(fl_Window_size_range_args));+    ptr->maxw = 0;+    ptr->maxh = 0;+    ptr->dw = 0;+    ptr->dh = 0;+    ptr->aspect = 0;+    return ptr;+  }+  FL_EXPORT_C(void,Fl_Gl_Window_size_range)(fl_Gl_Window win,int minw,int minh){+    fl_Window_size_range_args* ptr = Fl_Gl_Window_default_size_range_args();+    (static_cast<Fl_DerivedGl_Window*>(win))->size_range(minw,minh,ptr->maxw, ptr->maxh, ptr->dw,ptr->dh,ptr->aspect);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_size_range_with_args)(fl_Gl_Window win,int minw,int minh,fl_Window_size_range_args* ptr){+    (static_cast<Fl_DerivedGl_Window*>(win))->size_range(minw,minh,ptr->maxw, ptr->maxh, ptr->dw,ptr->dh,ptr->aspect);+  }+  FL_EXPORT_C(const char*,Fl_Gl_Window_iconlabel)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->iconlabel();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_iconlabel)(fl_Gl_Window win,const char* label){+    (static_cast<Fl_DerivedGl_Window*>(win))->iconlabel(label);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_label_with_iconlabel)(fl_Gl_Window win,const char* label,const char* iconlabel){+    (static_cast<Fl_DerivedGl_Window*>(win))->label(label,iconlabel);+  }+  FL_EXPORT_C(const char*,Fl_Gl_Window_xclass)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->xclass();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_xclass)(fl_Gl_Window win,const char* c){+    (static_cast<Fl_DerivedGl_Window*>(win))->xclass(c);+  }+  FL_EXPORT_C(const void*,Fl_Gl_Window_icon)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->icon();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_icon)(fl_Gl_Window win,const void * ic){+    (static_cast<Fl_DerivedGl_Window*>(win))->icon(ic);+  }+  FL_EXPORT_C(int,Fl_Gl_Window_shown)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->shown();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_x_root)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->x_root();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_y_root)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->y_root();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_make_current)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->make_current();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_cursor_with_bg)(fl_Gl_Window win,Fl_Cursor cursor,Fl_Color bg){+    (static_cast<Fl_DerivedGl_Window*>(win))->cursor(cursor,FL_BLACK, bg);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_cursor_with_fg)(fl_Gl_Window win,Fl_Cursor cursor,Fl_Color fg){+    (static_cast<Fl_DerivedGl_Window*>(win))->cursor(cursor,fg,FL_WHITE);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_cursor_with_fg_bg)(fl_Gl_Window win,Fl_Cursor cursor,Fl_Color fg,Fl_Color bg){+    (static_cast<Fl_DerivedGl_Window*>(win))->cursor(cursor,fg,bg);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_cursor)(fl_Gl_Window win,Fl_Cursor cursor){+    (static_cast<Fl_DerivedGl_Window*>(win))->cursor(cursor,FL_BLACK,FL_WHITE);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_default_cursor_with_bg)(fl_Gl_Window win,Fl_Cursor cursor,Fl_Color bg){+    (static_cast<Fl_DerivedGl_Window*>(win))->default_cursor(cursor,bg);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_default_cursor_with_fg)(fl_Gl_Window win,Fl_Cursor cursor,Fl_Color fg){+    (static_cast<Fl_DerivedGl_Window*>(win))->default_cursor(cursor,fg);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_default_cursor_with_fg_bg)(fl_Gl_Window win,Fl_Cursor cursor,Fl_Color fg,Fl_Color bg){+    (static_cast<Fl_DerivedGl_Window*>(win))->default_cursor(cursor,fg,bg);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_default_cursor)(fl_Gl_Window win,Fl_Cursor cursor){+    (static_cast<Fl_DerivedGl_Window*>(win))->default_cursor(cursor);+  }+  FL_EXPORT_C(int,Fl_Gl_Window_decorated_w)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->decorated_w();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_decorated_h)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->decorated_h();+  }+  FL_EXPORT_C(void, Fl_Gl_Window_set_default_xclass)(const char* label){+    Fl_Gl_Window::default_xclass(label);+  }+  FL_EXPORT_C(const char*, Fl_Gl_Window_default_xclass)(){+    return Fl_Gl_Window::default_xclass();+  }+  FL_EXPORT_C(fl_Gl_Window, Fl_Gl_Window_current)(){+    return (fl_Gl_Window)Fl_Gl_Window::current();+  }+  FL_EXPORT_C(void, Fl_Gl_Window_default_callback)(fl_Gl_Window win, void* v){+    Fl_Gl_Window::default_callback((static_cast<Fl_DerivedGl_Window*>(win)), v);+  }+  FL_EXPORT_C(char,Fl_Gl_Window_valid)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->valid();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_valid)(fl_Gl_Window win, char valid) {+    (static_cast<Fl_DerivedGl_Window*>(win))->valid(valid);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_invalidate)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->invalidate();+  }+  FL_EXPORT_C(char,Fl_Gl_Window_context_valid)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->context_valid();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_context_valid)(fl_Gl_Window win,char v){+    (static_cast<Fl_DerivedGl_Window*>(win))->context_valid(v);+  }+  FL_EXPORT_C(int,Fl_Gl_Window_can_do_with_m)(fl_Gl_Window win,int m){+    return (static_cast<Fl_DerivedGl_Window*>(win))->can_do(m);+  }+  FL_EXPORT_C(int,Fl_Gl_Window_can_do)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->can_do();+  }+  FL_EXPORT_C(Fl_Mode,Fl_Gl_Window_mode)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->mode();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_set_mode)(fl_Gl_Window win,int a){+    return (static_cast<Fl_DerivedGl_Window*>(win))->mode(a);+  }+  FL_EXPORT_C(void*,Fl_Gl_Window_context)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->context();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_context)(fl_Gl_Window win,void* context){+    (static_cast<Fl_DerivedGl_Window*>(win))->context(context);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_set_context_with_destroy_flag)(fl_Gl_Window win,void* context, int flag){+    (static_cast<Fl_DerivedGl_Window*>(win))->context(context, flag);+  }+  FL_EXPORT_C(void,Fl_Gl_Window_swap_buffers)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->swap_buffers();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_ortho)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->ortho();+  }+  FL_EXPORT_C(int,Fl_Gl_Window_can_do_overlay)(fl_Gl_Window win){+    return (static_cast<Fl_DerivedGl_Window*>(win))->can_do_overlay();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_redraw_overlay)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->redraw_overlay();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_hide_overlay)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->hide_overlay();+  }+  FL_EXPORT_C(void,Fl_Gl_Window_make_overlay_current)(fl_Gl_Window win){+    (static_cast<Fl_DerivedGl_Window*>(win))->make_overlay_current();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Gl_WindowC.h view
@@ -0,0 +1,278 @@+#ifndef __FL_GL_WINDOW_C__+#define __FL_GL_WINDOW_C__+#ifdef __cplusplus+#include "FL/Fl.H"+#include "FL/Fl_Gl_Window.H" // always include the FL/*.H headers before local headers+                          // Fl_Widget is included transitively and needed for+                          // the callback mechanism included below to work.+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(fl_Gl_Window_Virtual_Funcs*, Fl_Gl_Window_default_virtual_funcs)();+  FL_EXPORT_C(int,Fl_Gl_Window_handle)(fl_Gl_Window self, int event);+  FL_EXPORT_C(int,Fl_Gl_Window_handle_super)(fl_Gl_Window self, int event);+  FL_EXPORT_C(void,Fl_Gl_Window_draw_super)(fl_Gl_Window self);+  FL_EXPORT_C(fl_Group,     Fl_Gl_Window_parent)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_parent)(fl_Gl_Window win, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Gl_Window_type)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_type)(fl_Gl_Window win, uchar t);+FL_EXPORT_C(void, Fl_Gl_Window_draw_box)(fl_Gl_Window Gl_Window);+FL_EXPORT_C(void, Fl_Gl_Window_draw_box_with_tc)(fl_Gl_Window Gl_Window,Fl_Boxtype t, Fl_Color c);+FL_EXPORT_C(void, Fl_Gl_Window_draw_box_with_txywhc)(fl_Gl_Window Gl_Window,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+FL_EXPORT_C(void, Fl_Gl_Window_draw_backdrop)(fl_Gl_Window Gl_Window);+FL_EXPORT_C(void, Fl_Gl_Window_draw_focus)(fl_Gl_Window Gl_Window);+FL_EXPORT_C(void, Fl_Gl_Window_draw_focus_with_txywh)(fl_Gl_Window Gl_Window,Fl_Boxtype t, int x,int y,int w,int h);+FL_EXPORT_C(void, Fl_Gl_Window_draw_label)(fl_Gl_Window Gl_Window);++  FL_EXPORT_C(int,          Fl_Gl_Window_x)(fl_Gl_Window win);+  FL_EXPORT_C(int,          Fl_Gl_Window_y)(fl_Gl_Window win);+  FL_EXPORT_C(int,          Fl_Gl_Window_w)(fl_Gl_Window win);+  FL_EXPORT_C(int,          Fl_Gl_Window_h)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_align)(fl_Gl_Window gl_window, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Gl_Window_align)(fl_Gl_Window win);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Gl_Window_box)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_box)(fl_Gl_Window win, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Gl_Window_color)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_color)(fl_Gl_Window win, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_color_with_bg_sel)(fl_Gl_Window win,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Gl_Window_selection_color)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_selection_color)(fl_Gl_Window win, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Gl_Window_label)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_copy_label)(fl_Gl_Window win, const char* new_label);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_label)(fl_Gl_Window win, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Gl_Window_labeltype)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_labeltype)(fl_Gl_Window win, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Gl_Window_labelcolor)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_labelcolor)(fl_Gl_Window win, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Gl_Window_labelfont)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_labelfont)(fl_Gl_Window win, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Gl_Window_labelsize)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_labelsize)(fl_Gl_Window win, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Gl_Window_image)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_image)(fl_Gl_Window win, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Gl_Window_deimage)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_deimage)(fl_Gl_Window win, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Gl_Window_tooltip)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_copy_tooltip)(fl_Gl_Window win, const char* text);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_tooltip)(fl_Gl_Window win, const char* text);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_callback_with_user_data)(fl_Gl_Window win, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_callback)(fl_Gl_Window win, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Gl_Window_user_data)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_user_data)(fl_Gl_Window win, void* v);+  FL_EXPORT_C(long,         Fl_Gl_Window_argument)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_argument)(fl_Gl_Window win, long v);+  FL_EXPORT_C(Fl_When,      Fl_Gl_Window_when)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_when)(fl_Gl_Window win, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Gl_Window_visible)(fl_Gl_Window win);+  FL_EXPORT_C(int,          Fl_Gl_Window_visible_r)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_visible)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_clear_visible)(fl_Gl_Window win);+  FL_EXPORT_C(unsigned int, Fl_Gl_Window_active)(fl_Gl_Window win);+  FL_EXPORT_C(int,          Fl_Gl_Window_active_r)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_activate)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_deactivate)(fl_Gl_Window win);+  FL_EXPORT_C(unsigned int, Fl_Gl_Window_output)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_output)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_clear_output)(fl_Gl_Window win);+  FL_EXPORT_C(unsigned int, Fl_Gl_Window_takesevents)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_changed)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_clear_changed)(fl_Gl_Window win);+  FL_EXPORT_C(int,          Fl_Gl_Window_take_focus)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_visible_focus)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_clear_visible_focus)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_modify_visible_focus)(fl_Gl_Window win, int v);+  FL_EXPORT_C(unsigned int, Fl_Gl_Window_visible_focus)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_do_callback)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_do_callback_with_widget_and_user_data)(fl_Gl_Window win, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Gl_Window_do_callback_with_widget_and_default_user_data)(fl_Gl_Window win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Gl_Window_contains)(fl_Gl_Window win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Gl_Window_inside)(fl_Gl_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Gl_Window_redraw)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_redraw_label)(fl_Gl_Window win);+  FL_EXPORT_C(uchar,        Fl_Gl_Window_damage)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_clear_damage_with_bitmask)(fl_Gl_Window win, uchar c);+  FL_EXPORT_C(void,         Fl_Gl_Window_clear_damage)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_damage_with_text)(fl_Gl_Window win, uchar c);+  FL_EXPORT_C(void,         Fl_Gl_Window_damage_inside_widget)(fl_Gl_Window win, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Gl_Window_draw_label_with_xywh_alignment)(fl_Gl_Window win, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(fl_Window,    Fl_Gl_Window_window)(fl_Gl_Window gl_window);+  FL_EXPORT_C(fl_Window,    Fl_Gl_Window_top_window)(fl_Gl_Window gl_window);+  FL_EXPORT_C(fl_Window ,   Fl_Gl_Window_top_window_offset)(fl_Gl_Window gl_window, int* xoff, int* yoff);+  FL_EXPORT_C(void,         Fl_Gl_Window_measure_label)(fl_Gl_Window win, int* ww , int* hh);+  FL_EXPORT_C(fl_Group,     Fl_Gl_Window_as_group)(fl_Gl_Window win);+  FL_EXPORT_C(fl_Gl_Window, Fl_Gl_Window_as_gl_window)(fl_Gl_Window win);++  /* Inherited from Fl_Group */+  FL_EXPORT_C(void,         Fl_Gl_Window_begin)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_end)(fl_Gl_Window win);+  FL_EXPORT_C(int,          Fl_Gl_Window_find)(fl_Gl_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Gl_Window_add)(fl_Gl_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Gl_Window_insert)(fl_Gl_Window win, fl_Widget w, int i);+  FL_EXPORT_C(void,         Fl_Gl_Window_remove_index)(fl_Gl_Window win, int index);+  FL_EXPORT_C(void,         Fl_Gl_Window_remove_widget)(fl_Gl_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Gl_Window_clear)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_resizable_by_reference)(fl_Gl_Window win,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_resizable)(fl_Gl_Window win,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Gl_Window_resizable)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_add_resizable)(fl_Gl_Window win,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Gl_Window_init_sizes)(fl_Gl_Window win);+  FL_EXPORT_C(int,          Fl_Gl_Window_children)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_set_clip_children)(fl_Gl_Window win,int c);+  FL_EXPORT_C(unsigned int, Fl_Gl_Window_clip_children)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_focus)(fl_Gl_Window win,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Gl_Window__ddfdesign_kludge)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_insert_with_before)(fl_Gl_Window self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Gl_Window_array)(fl_Gl_Window self);+  FL_EXPORT_C(fl_Widget,    Fl_Gl_Window_child)(fl_Gl_Window self, int n);+  FL_EXPORT_C(void,         Fl_Gl_Window_forms_end)(fl_Gl_Window self);+  /* FL_EXPORT_C(void,         Fl_Gl_Window_forms_end)(fl_Gl_Window win); */+#ifdef __cplusplus+  class Fl_DerivedGl_Window : public Fl_Gl_Window {+    fl_Gl_Window_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void destroy_data();+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    void draw_super();+    virtual int handle(int event);+    virtual void resize(int x, int y, int w, int h);+    void resize_super(int x, int y, int w, int h);+    virtual void show();+    void show_super();+    virtual void show(int,char**);+    virtual void hide();+    void hide_super();+    virtual void flush();+    void flush_super();+    virtual Fl_Group* as_group();+    Fl_Group* as_group_super();+    virtual Fl_Window* as_window();+    Fl_Window* as_window_super();+    virtual Fl_Gl_Window* as_gl_window();+    Fl_Gl_Window* as_gl_window_super();+    Fl_DerivedGl_Window(int X, int Y, int W, int H, const char *l, fl_Gl_Window_Virtual_Funcs* funcs);+    Fl_DerivedGl_Window(int X, int Y, int W, int H, fl_Gl_Window_Virtual_Funcs* funcs);+    Fl_DerivedGl_Window(int W, int H, const char *l, fl_Gl_Window_Virtual_Funcs* funcs);+    Fl_DerivedGl_Window(int W, int H, fl_Gl_Window_Virtual_Funcs* funcs);+    ~Fl_DerivedGl_Window();+  };+#endif+  /* Fl_Window inherited*/+  FL_EXPORT_C(unsigned int, Fl_Gl_Window_changed)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_fullscreen)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_fullscreen_off)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_fullscreen_off_with_resize)(fl_Gl_Window win,int X,int Y,int W,int H);+  FL_EXPORT_C(void*, Fl_Gl_Window_other_data)(fl_Gl_Window gl_window);+  FL_EXPORT_C(void, Fl_Gl_Window_set_other_data)(fl_Gl_Window gl_window, void* v);+  FL_EXPORT_C(fl_Gl_Window,    Fl_Gl_Window_New_WithLabel)(int w, int h, const char* title);+  FL_EXPORT_C(fl_Gl_Window, Fl_OverriddenGl_Window_New_WithLabel)(int w, int h, const char* title, fl_Gl_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Gl_Window,    Fl_Gl_Window_New)(int w, int h);+  FL_EXPORT_C(fl_Gl_Window, Fl_OverriddenGl_Window_New)(int w, int h,fl_Gl_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Gl_Window,    Fl_Gl_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title);+  FL_EXPORT_C(fl_Gl_Window, Fl_OverriddenGl_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title,fl_Gl_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Gl_Window,    Fl_Gl_Window_NewXY)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Gl_Window, Fl_OverriddenGl_Window_NewXY)(int x, int y, int w, int h,fl_Gl_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(void,         Fl_Gl_Window_hide)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_show)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_show_with_args)(fl_Gl_Window win, int argc, char** argv);+  FL_EXPORT_C(void,         Fl_Gl_Window_Destroy)(fl_Gl_Window win);+  FL_EXPORT_C(void,         Fl_Gl_Window_resize)(fl_Gl_Window win, int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Gl_Window_iconize)(fl_Gl_Window win);+  FL_EXPORT_C(int ,Fl_Gl_Window_handle)(fl_Gl_Window win, int event);+  FL_EXPORT_C(void ,Fl_Gl_Window_set_border)(fl_Gl_Window win, int b);+  FL_EXPORT_C(void ,Fl_Gl_Window_clear_border)(fl_Gl_Window win);+  FL_EXPORT_C(unsigned int ,Fl_Gl_Window_border)(fl_Gl_Window win);+  FL_EXPORT_C(void ,Fl_Gl_Window_set_override)(fl_Gl_Window win);+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_override)(fl_Gl_Window win);+  FL_EXPORT_C(void ,Fl_Gl_Window_set_modal)(fl_Gl_Window win);+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_modal)(fl_Gl_Window win);+  FL_EXPORT_C(void ,Fl_Gl_Window_set_non_modal)(fl_Gl_Window win);+  FL_EXPORT_C(unsigned int ,Fl_Gl_Window_non_modal)(fl_Gl_Window win);+  FL_EXPORT_C(void ,Fl_Gl_Window_set_menu_window)(fl_Gl_Window win);+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_menu_window)(fl_Gl_Window win);+  FL_EXPORT_C(void ,Fl_Gl_Window_set_tooltip_window)(fl_Gl_Window win);+  FL_EXPORT_C(unsigned int,Fl_Gl_Window_tooltip_window)(fl_Gl_Window win);+  FL_EXPORT_C(void ,Fl_Gl_Window_hotspot_with_x_y)(fl_Gl_Window win, int x, int y);+  FL_EXPORT_C(void ,Fl_Gl_Window_hotspot_with_x_y_with_offscreen)(fl_Gl_Window win, int x, int y, int offscreen);+  FL_EXPORT_C(void ,Fl_Gl_Window_hotspot_with_widget)(fl_Gl_Window win, fl_Widget w);//, int offscreen = 0);+  FL_EXPORT_C(void ,Fl_Gl_Window_hotspot_with_widget_with_offscreen)(fl_Gl_Window win, fl_Widget w, int offscreen);+  FL_EXPORT_C(fl_Window_size_range_args*,Fl_Gl_Window_default_size_range_args)();+  FL_EXPORT_C(void ,Fl_Gl_Window_free_position)(fl_Gl_Window win);+  FL_EXPORT_C(void ,Fl_Gl_Window_size_range)(fl_Gl_Window win, int minw, int minh);+  FL_EXPORT_C(void ,Fl_Gl_Window_size_range_with_args)(fl_Gl_Window win, int minw, int minh, fl_Window_size_range_args* args);//int maxw=0, int maxh=0, int dw=0, int dh=0, int aspect=0);+  FL_EXPORT_C(const char*, Fl_Gl_Window_label)(fl_Gl_Window win);+  FL_EXPORT_C(const char*, Fl_Gl_Window_iconlabel)(fl_Gl_Window win);+  FL_EXPORT_C(void, Fl_Gl_Window_set_label)(fl_Gl_Window win,const char*);+  FL_EXPORT_C(void, Fl_Gl_Window_set_iconlabel)(fl_Gl_Window win,const char*);+  FL_EXPORT_C(void, Fl_Gl_Window_set_label_with_iconlabel)(fl_Gl_Window win,const char* label, const char* iconlabel);+  FL_EXPORT_C(void, Fl_Gl_Window_copy_label)(fl_Gl_Window win,const char* a);+  FL_EXPORT_C(void, Fl_Gl_Window_set_default_xclass)(const char* label);+  FL_EXPORT_C(const char*, Fl_Gl_Window_default_xclass)();+  FL_EXPORT_C(const char*, Fl_Gl_Window_xclass)(fl_Gl_Window win);+  FL_EXPORT_C(void, Fl_Gl_Window_set_xclass)(fl_Gl_Window win,const char* c);+  FL_EXPORT_C(const void*, Fl_Gl_Window_icon)(fl_Gl_Window win);+  FL_EXPORT_C(void, Fl_Gl_Window_set_icon)(fl_Gl_Window win,const void * ic);+  FL_EXPORT_C(int, Fl_Gl_Window_shown)(fl_Gl_Window win);+  FL_EXPORT_C(void, Fl_Gl_Window_iconize)(fl_Gl_Window win);+  FL_EXPORT_C(int, Fl_Gl_Window_x_root)(fl_Gl_Window win);+  FL_EXPORT_C(int, Fl_Gl_Window_y_root)(fl_Gl_Window win);+  FL_EXPORT_C(fl_Gl_Window, Fl_Gl_Window_current)();+  FL_EXPORT_C(void, Fl_Gl_Window_make_current)(fl_Gl_Window win);+  FL_EXPORT_C(void, Fl_Gl_Window_set_cursor_with_bg)(fl_Gl_Window win, Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void, Fl_Gl_Window_set_cursor_with_fg)(fl_Gl_Window win,Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void, Fl_Gl_Window_set_cursor_with_fg_bg)(fl_Gl_Window win,Fl_Cursor cursor, Fl_Color fg , Fl_Color bg );/* =FL_BLACK *//*=FL_WHITE*/+  FL_EXPORT_C(void, Fl_Gl_Window_set_cursor)(fl_Gl_Window win,Fl_Cursor cursor);+  FL_EXPORT_C(void, Fl_Gl_Window_set_default_cursor_with_bg)(fl_Gl_Window win,Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void, Fl_Gl_Window_set_default_cursor_with_fg)(fl_Gl_Window win, Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void, Fl_Gl_Window_set_default_cursor_with_fg_bg)(fl_Gl_Window win,Fl_Cursor cursor, Fl_Color fg , Fl_Color bg );+  FL_EXPORT_C(void, Fl_Gl_Window_set_default_cursor)(fl_Gl_Window win,Fl_Cursor cursor);+  FL_EXPORT_C(void, Fl_Gl_Window_default_callback)(fl_Gl_Window win, void* v);+  FL_EXPORT_C(int, Fl_Gl_Window_decorated_w)(fl_Gl_Window win);+  FL_EXPORT_C(int, Fl_Gl_Window_decorated_h)(fl_Gl_Window win);+  // Fl_Gl_Window specific+  FL_EXPORT_C(char, Fl_Gl_Window_valid)(fl_Gl_Window win);+  FL_EXPORT_C(void, Fl_Gl_Window_set_valid)(fl_Gl_Window win, char v);+  FL_EXPORT_C(void, Fl_Gl_Window_invalidate)(fl_Gl_Window win);+  FL_EXPORT_C(char, Fl_Gl_Window_context_valid)(fl_Gl_Window win);+  FL_EXPORT_C(void, Fl_Gl_Window_set_context_valid)(fl_Gl_Window win,char v);+  FL_EXPORT_C(int, Fl_Gl_Window_can_do_with_m)(fl_Gl_Window win,int m);+  FL_EXPORT_C(int, Fl_Gl_Window_can_do)(fl_Gl_Window win);+  FL_EXPORT_C(Fl_Mode, Fl_Gl_Window_mode)(fl_Gl_Window win);+  FL_EXPORT_C(int, Fl_Gl_Window_set_mode)(fl_Gl_Window win,int a);+  FL_EXPORT_C(void*, Fl_Gl_Window_context)(fl_Gl_Window win);+  FL_EXPORT_C(void, Fl_Gl_Window_set_context)(fl_Gl_Window win,void* context);+  FL_EXPORT_C(void, Fl_Gl_Window_set_context_with_destroy_flag)(fl_Gl_Window win,void* context, int destroy_flag);+  FL_EXPORT_C(void, Fl_Gl_Window_swap_buffers)(fl_Gl_Window win);+  FL_EXPORT_C(void, Fl_Gl_Window_ortho)(fl_Gl_Window win);+  FL_EXPORT_C(int, Fl_Gl_Window_can_do_overlay)(fl_Gl_Window win);+  FL_EXPORT_C(void, Fl_Gl_Window_redraw_overlay)(fl_Gl_Window win);+  FL_EXPORT_C(void, Fl_Gl_Window_hide_overlay)(fl_Gl_Window win);+  FL_EXPORT_C(void, Fl_Gl_Window_make_overlay_current)(fl_Gl_Window win);+  FL_EXPORT_C(int,Fl_Gl_Window_handle_super)(fl_Gl_Window self, int event);+  FL_EXPORT_C(void,Fl_Gl_Window_draw_super)(fl_Gl_Window self);+  FL_EXPORT_C(fl_Group,Fl_Gl_Window_as_group_super)(fl_Gl_Window win);+  FL_EXPORT_C(fl_Gl_Window,Fl_Gl_Window_as_window_super)(fl_Gl_Window win);+  FL_EXPORT_C(fl_Gl_Window,Fl_Gl_Window_as_window)(fl_Gl_Window win);+  FL_EXPORT_C(fl_Gl_Window,Fl_Gl_Window_as_gl_window_super)(fl_Gl_Window win);+  FL_EXPORT_C(void,Fl_Gl_Window_hide_super)(fl_Gl_Window win);+  FL_EXPORT_C(void,Fl_Gl_Window_flush_super)(fl_Gl_Window win);+  FL_EXPORT_C(void,Fl_Gl_Window_flush)(fl_Gl_Window win);+  FL_EXPORT_C(void,Fl_Gl_Window_show_super)(fl_Gl_Window win);+  FL_EXPORT_C(void,Fl_Gl_Window_resize_super)(fl_Gl_Window win,int X,int Y,int W,int H);++#ifdef __cplusplus+}+#endif++#endif /* __FL_GL_WINDOW_C__ */
+ c-src/Fl_GroupC.cpp view
@@ -0,0 +1,367 @@+#include "Fl_GroupC.h"+#ifdef __cplusplus+void Fl_DerivedGroup::draw_child(Fl_Widget* widget){+  Fl_Group::draw_child(*widget);+}+void Fl_DerivedGroup::draw_children(){+  Fl_Group::draw_children();+}+void Fl_DerivedGroup::draw_outside_label(Fl_Widget* widget){+  Fl_Group::draw_outside_label(*widget);+}+void Fl_DerivedGroup::update_child(Fl_Widget* widget){+  Fl_Group::update_child(*widget);+}+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Group_handle)(fl_Group self, int event){+    return (static_cast<Fl_DerivedGroup*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Group_parent)(fl_Group win){+    return (fl_Group) (static_cast<Fl_DerivedGroup*>(win))->parent();+  }+  FL_EXPORT_C(void,Fl_Group_set_parent)(fl_Group win,fl_Group grp){+    (static_cast<Fl_DerivedGroup*>(win))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Group_type)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->type();+  }+  FL_EXPORT_C(void,Fl_Group_set_type)(fl_Group win,uchar t){+    (static_cast<Fl_DerivedGroup*>(win))->type(t);+  }++  FL_EXPORT_C(int,Fl_Group_x)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->x();+  }+  FL_EXPORT_C(int,Fl_Group_y)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->y();+  }+  FL_EXPORT_C(int,Fl_Group_w)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->w();+  }+  FL_EXPORT_C(int,Fl_Group_h)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->h();+  }+  FL_EXPORT_C(void,Fl_Group_set_align)(fl_Group group, Fl_Align alignment){+    (static_cast<Fl_DerivedGroup*>(group))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Group_align)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Group_box)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->box();+  }+  FL_EXPORT_C(void,Fl_Group_set_box)(fl_Group win,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedGroup*>(win))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Group_color)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->color();+  }+  FL_EXPORT_C(void,Fl_Group_set_color)(fl_Group win,Fl_Color bg){+    (static_cast<Fl_DerivedGroup*>(win))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Group_set_color_with_bg_sel)(fl_Group win,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedGroup*>(win))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Group_selection_color)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Group_set_selection_color)(fl_Group win,Fl_Color a){+    (static_cast<Fl_DerivedGroup*>(win))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Group_label)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->label();+  }+  FL_EXPORT_C(void,Fl_Group_copy_label)(fl_Group win,const char* new_label){+    (static_cast<Fl_DerivedGroup*>(win))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Group_set_label)(fl_Group win,const char* text){+    (static_cast<Fl_DerivedGroup*>(win))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Group_labeltype)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Group_set_labeltype)(fl_Group win,Fl_Labeltype a){+    (static_cast<Fl_DerivedGroup*>(win))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Group_set_labelcolor)(fl_Group win,Fl_Color c){+    (static_cast<Fl_DerivedGroup*>(win))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Group_labelcolor)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Group_labelfont)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Group_set_labelfont)(fl_Group win,Fl_Font c){+    (static_cast<Fl_DerivedGroup*>(win))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Group_labelsize)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Group_set_labelsize)(fl_Group win,Fl_Fontsize pix){+    (static_cast<Fl_DerivedGroup*>(win))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Group_image)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->image();+  }+  FL_EXPORT_C(void,Fl_Group_set_image)(fl_Group win,fl_Image pix){+    (static_cast<Fl_DerivedGroup*>(win))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Group_deimage)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->deimage();+  }+  FL_EXPORT_C(void,Fl_Group_set_deimage)(fl_Group win,fl_Image pix){+    (static_cast<Fl_DerivedGroup*>(win))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Group_tooltip)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Group_copy_tooltip)(fl_Group win,const char* text){+    (static_cast<Fl_DerivedGroup*>(win))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Group_set_tooltip)(fl_Group win,const char* text){+    (static_cast<Fl_DerivedGroup*>(win))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Group_set_callback_with_user_data)(fl_Group win,fl_Callback* cb,void* p){+    Fl_Group* castedWindow = (static_cast<Fl_DerivedGroup*>(win));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Group_set_callback)(fl_Group win,fl_Callback* cb){+    Fl_Group* castedWindow = (static_cast<Fl_DerivedGroup*>(win));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Group_user_data)(fl_Group win){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedGroup*>(win))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedGroup*>(win))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Group_set_user_data)(fl_Group win,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedGroup*>(win))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_DerivedGroup*>(win))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_DerivedGroup*>(win))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Group_argument)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->argument();+  }+  FL_EXPORT_C(void,Fl_Group_set_argument)(fl_Group win,long v){+    (static_cast<Fl_DerivedGroup*>(win))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Group_when)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->when();+  }+  FL_EXPORT_C(void,Fl_Group_set_when)(fl_Group win,uchar i){+    (static_cast<Fl_DerivedGroup*>(win))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Group_visible)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->visible();+  }+  FL_EXPORT_C(int,Fl_Group_visible_r)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Group_set_visible)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->visible();+  }+  FL_EXPORT_C(void,Fl_Group_clear_visible)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Group_active)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->active();+  }+  FL_EXPORT_C(int,Fl_Group_active_r)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->active_r();+  }+  FL_EXPORT_C(void,Fl_Group_activate)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->activate();+  }+  FL_EXPORT_C(void,Fl_Group_deactivate)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Group_output)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Group_set_output)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Group_clear_output)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Group_takesevents)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Group_set_changed)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->changed();+  }+  FL_EXPORT_C(void,Fl_Group_clear_changed)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Group_take_focus)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Group_set_visible_focus)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Group_clear_visible_focus)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Group_modify_visible_focus)(fl_Group win,int v){+    (static_cast<Fl_DerivedGroup*>(win))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Group_visible_focus)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Group_do_callback)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Group_do_callback_with_widget_and_user_data)(fl_Group win,fl_Widget w,long arg){+    (static_cast<Fl_DerivedGroup*>(win))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Group_do_callback_with_widget_and_default_user_data)(fl_Group win,fl_Widget w){+    (static_cast<Fl_DerivedGroup*>(win))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Group_contains)(fl_Group win,fl_Widget w){+    return (static_cast<Fl_DerivedGroup*>(win))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Group_inside)(fl_Group win,fl_Widget w){+    return (static_cast<Fl_DerivedGroup*>(win))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Group_redraw)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->redraw();+  }+  FL_EXPORT_C(void,Fl_Group_redraw_label)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Group_damage)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->damage();+  }+  FL_EXPORT_C(void,Fl_Group_clear_damage_with_bitmask)(fl_Group win,uchar c){+    (static_cast<Fl_DerivedGroup*>(win))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Group_clear_damage)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Group_damage_with_text)(fl_Group win,uchar c){+    (static_cast<Fl_DerivedGroup*>(win))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Group_damage_inside_widget)(fl_Group win,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedGroup*>(win))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Group_draw_label_with_xywh_alignment)(fl_Group win,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedGroup*>(win))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Group_measure_label)(fl_Group win,int* ww,int* hh){+    (static_cast<Fl_DerivedGroup*>(win))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Group_window)(fl_Group group){+    return (fl_Window) (static_cast<Fl_DerivedGroup*>(group))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Group_top_window)(fl_Group group){+    return (fl_Window) (static_cast<Fl_DerivedGroup*>(group))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Group_top_window_offset)(fl_Group group, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedGroup*>(group))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Group_as_group)(fl_Group win){+    return (fl_Group) (static_cast<Fl_DerivedGroup*>(win))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Group_as_gl_window)(fl_Group win){+    return (fl_Gl_Window) (static_cast<Fl_DerivedGroup*>(win))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Group_draw_child)(fl_Group group, fl_Widget widget){+    (static_cast<Fl_DerivedGroup*>(group))->draw_child((static_cast<Fl_Widget*>(widget)));+  }+  FL_EXPORT_C(void,Fl_Group_draw_children)(fl_Group group){+    (static_cast<Fl_DerivedGroup*>(group))->draw_children();+  }+  FL_EXPORT_C(void,Fl_Group_draw_outside_label)(fl_Group group, fl_Widget widget){+    (static_cast<Fl_DerivedGroup*>(group))->draw_outside_label((static_cast<Fl_Widget*>(widget)));+  }+  FL_EXPORT_C(void,Fl_Group_update_child)(fl_Group group, fl_Widget widget){+    (static_cast<Fl_DerivedGroup*>(group))->update_child((static_cast<Fl_Widget*>(widget)));+  }+  FL_EXPORT_C(void,Fl_Group_begin)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->begin();+  }+  FL_EXPORT_C(void,Fl_Group_end)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->end();+  }+  FL_EXPORT_C(int,Fl_Group_find)(fl_Group win,fl_Widget w){+    return (static_cast<Fl_DerivedGroup*>(win))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Group_add)(fl_Group win,fl_Widget w){+    (static_cast<Fl_DerivedGroup*>(win))->add((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Group_insert)(fl_Group win,fl_Widget w,int i){+    (static_cast<Fl_DerivedGroup*>(win))->insert(*(static_cast<Fl_Widget*>(w)),i);+  }+  FL_EXPORT_C(void,Fl_Group_remove_index)(fl_Group win,int index){+    (static_cast<Fl_DerivedGroup*>(win))->remove(index);+  }+  FL_EXPORT_C(void,Fl_Group_remove_widget)(fl_Group win,fl_Widget w){+    (static_cast<Fl_DerivedGroup*>(win))->remove((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Group_clear)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->clear();+  }+  FL_EXPORT_C(void,Fl_Group_set_resizable_by_reference)(fl_Group win,fl_Widget o){+    (static_cast<Fl_DerivedGroup*>(win))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Group_set_resizable)(fl_Group win,fl_Widget o){+    (static_cast<Fl_DerivedGroup*>(win))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Group_resizable)(fl_Group win){+    return (fl_Widget)(static_cast<Fl_DerivedGroup*>(win))->resizable();+  }+  FL_EXPORT_C(void,Fl_Group_add_resizable)(fl_Group win,fl_Widget o){+    return (static_cast<Fl_DerivedGroup*>(win))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Group_init_sizes)(fl_Group win){+    (static_cast<Fl_DerivedGroup*>(win))->init_sizes();+  }+  FL_EXPORT_C(int,Fl_Group_children)(fl_Group self){+    return (static_cast<Fl_DerivedGroup*>(self))->children();+  }+  FL_EXPORT_C(void,Fl_Group_set_clip_children)(fl_Group win,int c){+    return (static_cast<Fl_DerivedGroup*>(win))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Group_clip_children)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Group_focus)(fl_Group win, fl_Widget W){+    return (static_cast<Fl_DerivedGroup*>(win))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Group__ddfdesign_kludge)(fl_Group win){+    return (static_cast<Fl_DerivedGroup*>(win))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(void, Fl_Group_insert_with_before)(fl_Group self, fl_Widget w, fl_Widget before){+    (static_cast<Fl_DerivedGroup*>(self))->insert(*(static_cast<Fl_Widget*>(w)),(static_cast<Fl_Widget*>(before)));+  }+  FL_EXPORT_C(fl_Widget*, Fl_Group_array)(fl_Group self){+    return (fl_Widget*)(static_cast<Fl_DerivedGroup*>(self))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Group_child)(fl_Group self, int n){+    return (fl_Widget)(static_cast<Fl_DerivedGroup*>(self))->child(n);+  }+  FL_EXPORT_C(fl_Group,     Fl_Group_New)(int x, int y, int w, int h){+    Fl_DerivedGroup* g = new Fl_DerivedGroup(x,y,w,h);+    return (fl_Group)g;+  }+  FL_EXPORT_C(fl_Group,     Fl_Group_New_WithLabel)(int x, int y, int w, int h, const char* t){+    Fl_DerivedGroup* g = new Fl_DerivedGroup(x,y,w,h,t);+    return (fl_Group)g;+  }+  FL_EXPORT_C(void, Fl_Group_Destroy)(fl_Group group){+    delete (static_cast<Fl_DerivedGroup*>(group));+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_GroupC.h view
@@ -0,0 +1,149 @@+#ifndef __FL_GROUP_C__+#define __FL_GROUP_C__+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#ifdef __cplusplus+#include "FL/Fl.H"+#include "FL/Fl_Group.H"+#include "Fl_CallbackC.h"+class Fl_DerivedGroup : public Fl_Group {+public:+  void draw_child(Fl_Widget* widget);+  void draw_children();+  void draw_outside_label(Fl_Widget* widget);+  void update_child(Fl_Widget* widget);+  Fl_DerivedGroup(int X, int Y, int W, int H, const char *l) : Fl_Group(X,Y,W,H,l){};+  Fl_DerivedGroup(int X, int Y, int W, int H):Fl_Group(X,Y,W,H,0){};+};+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,          Fl_Group_handle)(fl_Group self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Group_parent)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_parent)(fl_Group group, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Group_type)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_type)(fl_Group group, uchar t);++  FL_EXPORT_C(int,          Fl_Group_x)(fl_Group group);+  FL_EXPORT_C(int,          Fl_Group_y)(fl_Group group);+  FL_EXPORT_C(int,          Fl_Group_w)(fl_Group group);+  FL_EXPORT_C(int,          Fl_Group_h)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_align)(fl_Group group, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Group_align)(fl_Group group);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Group_box)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_box)(fl_Group group, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Group_color)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_color)(fl_Group group, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Group_set_color_with_bg_sel)(fl_Group group,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Group_selection_color)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_selection_color)(fl_Group group, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Group_label)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_copy_label)(fl_Group group, const char* new_label);+  FL_EXPORT_C(void,         Fl_Group_set_label)(fl_Group group, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Group_labeltype)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_labeltype)(fl_Group group, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Group_labelcolor)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_labelcolor)(fl_Group group, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Group_item_labelfont)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_item_labelfont)(fl_Group group, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Group_item_labelsize)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_item_labelsize)(fl_Group group, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Group_image)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_image)(fl_Group group, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Group_deimage)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_deimage)(fl_Group group, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Group_tooltip)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_copy_tooltip)(fl_Group group, const char* text);+  FL_EXPORT_C(void,         Fl_Group_set_tooltip)(fl_Group group, const char* text);+  FL_EXPORT_C(void,         Fl_Group_set_callback_with_user_data)(fl_Group group, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Group_set_callback)(fl_Group group, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Group_other_data)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_other_data)(fl_Group group, void* v);+  FL_EXPORT_C(void*,        Fl_Group_user_data)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_user_data)(fl_Group group, void* v);+  FL_EXPORT_C(long,         Fl_Group_argument)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_argument)(fl_Group group, long v);+  FL_EXPORT_C(Fl_When,      Fl_Group_when)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_when)(fl_Group group, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Group_visible)(fl_Group group);+  FL_EXPORT_C(int,          Fl_Group_visible_r)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_show_super)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_show)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_hide_super)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_hide)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_visible)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_clear_visible)(fl_Group group);+  FL_EXPORT_C(unsigned int, Fl_Group_active)(fl_Group group);+  FL_EXPORT_C(int,          Fl_Group_active_r)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_activate)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_deactivate)(fl_Group group);+  FL_EXPORT_C(unsigned int, Fl_Group_output)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_output)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_clear_output)(fl_Group group);+  FL_EXPORT_C(unsigned int, Fl_Group_takesevents)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_changed)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_clear_changed)(fl_Group group);+  FL_EXPORT_C(int,          Fl_Group_take_focus)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_visible_focus)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_clear_visible_focus)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_modify_visible_focus)(fl_Group group, int v);+  FL_EXPORT_C(unsigned int, Fl_Group_visible_focus)(fl_Group group);+  FL_EXPORT_C(int,          Fl_Group_contains)(fl_Group group, fl_Group w);+  FL_EXPORT_C(int,          Fl_Group_inside)(fl_Group group, fl_Group w);+  FL_EXPORT_C(void,         Fl_Group_redraw)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_redraw_label)(fl_Group group);+  FL_EXPORT_C(uchar,        Fl_Group_damage)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_clear_damage_with_bitmask)(fl_Group group, uchar c);+  FL_EXPORT_C(void,         Fl_Group_clear_damage)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_damage_with_text)(fl_Group group, uchar c);+  FL_EXPORT_C(void,         Fl_Group_damage_inside_group)(fl_Group group, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Group_draw_label_with_xywh_alignment)(fl_Group group, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Group_measure_label)(fl_Group group, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Group_window)(fl_Group group);+  FL_EXPORT_C(fl_Window,    Fl_Group_top_window)(fl_Group group);+  FL_EXPORT_C(fl_Window ,   Fl_Group_top_window_offset)(fl_Group group, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Group_as_group_super)(fl_Group group);+  FL_EXPORT_C(fl_Group,     Fl_Group_as_group)(fl_Group group);+  FL_EXPORT_C(fl_Gl_Window, Fl_Group_as_gl_window_super)(fl_Group group);+  FL_EXPORT_C(fl_Gl_Window, Fl_Group_as_gl_window)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_resize_super)(fl_Group group,int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Group_resize)(fl_Group group,int X, int Y, int W, int H);++  /* Fl_Group static members */+  FL_EXPORT_C(fl_Group,Fl_Group_set_current)();+  FL_EXPORT_C(void ,   Fl_Group_current)(fl_Group g);++  /* Fl_Group specific */+  FL_EXPORT_C(void,         Fl_Group_draw_child)(fl_Group group, fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Group_draw_children)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_draw_outside_label)(fl_Group group, fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Group_update_child)(fl_Group group, fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Group_begin)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_end)(fl_Group group);+  FL_EXPORT_C(int,          Fl_Group_find)(fl_Group group, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Group_add)(fl_Group group, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Group_insert)(fl_Group group, fl_Widget w, int i);+  FL_EXPORT_C(void,         Fl_Group_remove_index)(fl_Group group, int index);+  FL_EXPORT_C(void,         Fl_Group_remove_widget)(fl_Group group, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Group_clear)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_resizable_by_reference)(fl_Group group,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Group_set_resizable)(fl_Group group,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Group_resizable)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_add_resizable)(fl_Group group,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Group_init_sizes)(fl_Group group);+  FL_EXPORT_C(int,          Fl_Group_children)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_set_clip_children)(fl_Group group,int c);+  FL_EXPORT_C(unsigned int, Fl_Group_clip_children)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_focus)(fl_Group group,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Group__ddfdesign_kludge)(fl_Group group);+  FL_EXPORT_C(void,         Fl_Group_insert_with_before)(fl_Group self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Group_array)(fl_Group self);+  FL_EXPORT_C(fl_Widget,    Fl_Group_child)(fl_Group self, int n);+  FL_EXPORT_C(fl_Group,     Fl_Group_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Group,     Fl_Group_New_WithLabel)(int x, int y, int w, int h, const char* t);+  FL_EXPORT_C(void,         Fl_Group_Destroy)(fl_Group group);+#ifdef __cplusplus+}+#endif+#endif /* __FL_GROUP_C__ */
+ c-src/Fl_Hold_BrowserC.cpp view
@@ -0,0 +1,504 @@+#include "Fl_Hold_BrowserC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Hold_Browser_handle)(fl_Hold_Browser self, int event){+    return (static_cast<Fl_Hold_Browser*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Hold_Browser_parent)(fl_Hold_Browser hold_browser){+    return (fl_Group) (static_cast<Fl_Hold_Browser*>(hold_browser))->parent();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_parent)(fl_Hold_Browser hold_browser,fl_Group grp){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Hold_Browser_type)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->type();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_type)(fl_Hold_Browser hold_browser,uchar t){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->type(t);+  }++  FL_EXPORT_C(int,Fl_Hold_Browser_x)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->x();+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_y)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->y();+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_w)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->w();+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_h)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->h();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_align)(fl_Hold_Browser hold_browser, Fl_Align alignment){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Hold_Browser_align)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Hold_Browser_box)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->box();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_box)(fl_Hold_Browser hold_browser,Fl_Boxtype new_box){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Hold_Browser_color)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->color();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_color)(fl_Hold_Browser hold_browser,Fl_Color bg){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_color_with_bg_sel)(fl_Hold_Browser hold_browser,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Hold_Browser_selection_color)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_selection_color)(fl_Hold_Browser hold_browser,Fl_Color a){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Hold_Browser_label)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->label();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_copy_label)(fl_Hold_Browser hold_browser,const char* new_label){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_label)(fl_Hold_Browser hold_browser,const char* text){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Hold_Browser_labeltype)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_labeltype)(fl_Hold_Browser hold_browser,Fl_Labeltype a){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_labelcolor)(fl_Hold_Browser hold_browser,Fl_Color c){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Hold_Browser_labelcolor)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Hold_Browser_labelfont)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_labelfont)(fl_Hold_Browser hold_browser,Fl_Font c){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Hold_Browser_labelsize)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_labelsize)(fl_Hold_Browser hold_browser,Fl_Fontsize pix){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Hold_Browser_image)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->image();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_image)(fl_Hold_Browser hold_browser,fl_Image pix){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Hold_Browser_deimage)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->deimage();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_deimage)(fl_Hold_Browser hold_browser,fl_Image pix){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Hold_Browser_tooltip)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_copy_tooltip)(fl_Hold_Browser hold_browser,const char* text){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_tooltip)(fl_Hold_Browser hold_browser,const char* text){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_callback_with_user_data)(fl_Hold_Browser hold_browser,fl_Callback* cb,void* p){+    Fl_Hold_Browser* castedWindow = (static_cast<Fl_Hold_Browser*>(hold_browser));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_callback)(fl_Hold_Browser hold_browser,fl_Callback* cb){+    Fl_Hold_Browser* castedWindow = (static_cast<Fl_Hold_Browser*>(hold_browser));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Hold_Browser_user_data)(fl_Hold_Browser hold_browser){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Hold_Browser*>(hold_browser))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Hold_Browser*>(hold_browser))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_user_data)(fl_Hold_Browser hold_browser,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Hold_Browser*>(hold_browser))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Hold_Browser*>(hold_browser))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Hold_Browser*>(hold_browser))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Hold_Browser_argument)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->argument();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_argument)(fl_Hold_Browser hold_browser,long v){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Hold_Browser_when)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->when();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_when)(fl_Hold_Browser hold_browser,uchar i){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->when(i);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_visible_r)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_show_super)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->show();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_hide_super)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->hide();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_clear_visible)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Hold_Browser_active)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->active();+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_active_r)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->active_r();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_activate)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->activate();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_deactivate)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Hold_Browser_output)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->output();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_output)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->output();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_clear_output)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Hold_Browser_takesevents)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_changed)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->changed();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_clear_changed)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_take_focus)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_visible_focus)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_clear_visible_focus)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_modify_visible_focus)(fl_Hold_Browser hold_browser,int v){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Hold_Browser_visible_focus)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_contains)(fl_Hold_Browser hold_browser,fl_Widget w){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_inside)(fl_Hold_Browser hold_browser,fl_Widget w){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_redraw)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->redraw();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_redraw_label)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Hold_Browser_damage)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->damage();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_clear_damage_with_bitmask)(fl_Hold_Browser hold_browser,uchar c){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_clear_damage)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_damage_with_text)(fl_Hold_Browser hold_browser,uchar c){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_damage_inside_widget)(fl_Hold_Browser hold_browser,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_draw_label_with_xywh_alignment)(fl_Hold_Browser hold_browser,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_measure_label)(fl_Hold_Browser hold_browser,int* ww,int* hh){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Hold_Browser_window)(fl_Hold_Browser hold_browser){+    return (fl_Window) (static_cast<Fl_Hold_Browser*>(hold_browser))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Hold_Browser_top_window)(fl_Hold_Browser hold_browser){+    return (fl_Window) (static_cast<Fl_Hold_Browser*>(hold_browser))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Hold_Browser_top_window_offset)(fl_Hold_Browser hold_browser, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Hold_Browser*>(hold_browser))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Hold_Browser_as_group_super)(fl_Hold_Browser hold_browser){+    return (fl_Group) (static_cast<Fl_Hold_Browser*>(hold_browser))->as_group();+  }+  FL_EXPORT_C(fl_Group,Fl_Hold_Browser_as_group)(fl_Hold_Browser hold_browser){+    return (fl_Group) (static_cast<Fl_Hold_Browser*>(hold_browser))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Hold_Browser_as_gl_window_super)(fl_Hold_Browser hold_browser){+    return (fl_Gl_Window) (static_cast<Fl_Hold_Browser*>(hold_browser))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Hold_Browser_as_gl_window)(fl_Hold_Browser hold_browser){+    return (fl_Gl_Window) (static_cast<Fl_Hold_Browser*>(hold_browser))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_resizable_by_reference)(fl_Hold_Browser hold_browser,fl_Widget o){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_resizable)(fl_Hold_Browser hold_browser,fl_Widget o){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Hold_Browser_resizable)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->resizable();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_add_resizable)(fl_Hold_Browser hold_browser,fl_Widget o){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_clip_children)(fl_Hold_Browser hold_browser,int c){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Hold_Browser_clip_children)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_focus)(fl_Hold_Browser hold_browser, fl_Widget W){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Hold_Browser__ddfdesign_kludge)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->_ddfdesign_kludge();+  }+  // FL_EXPORT_C(void,Fl_Hold_Browser_forms_end)(fl_Hold_Browser self){+  //   (static_cast<Fl_Hold_Browser*>(self))->forms_end();+  // }++  FL_EXPORT_C(fl_Hold_Browser, Fl_Hold_Browser_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Hold_Browser* hold_browser = new Fl_Hold_Browser(x,y,w,h,label);+    return (static_cast<fl_Hold_Browser>(hold_browser));+  }+  FL_EXPORT_C(fl_Hold_Browser, Fl_Hold_Browser_New)(int x, int y, int w, int h) {+    Fl_Hold_Browser* hold_browser = new Fl_Hold_Browser(x,y,w,h);+    return (static_cast<fl_Hold_Browser>(hold_browser));+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_Destroy)(fl_Hold_Browser hold_browser){+    delete (static_cast<Fl_Hold_Browser*>(hold_browser));+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_remove)(fl_Hold_Browser hold_browser,int line){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->remove(line);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_add)(fl_Hold_Browser hold_browser,const char* newtext){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->add(newtext);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_add_with_d)(fl_Hold_Browser hold_browser,const char* newtext,void* d){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->add(newtext,d);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_insert)(fl_Hold_Browser hold_browser,int line,const char* newtext){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->insert(line,newtext);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_insert_with_d)(fl_Hold_Browser hold_browser,int line,const char* newtext,void* d){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->insert(line,newtext,d);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_move)(fl_Hold_Browser hold_browser,int to,int from){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->move(to,from);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_load)(fl_Hold_Browser hold_browser,const char* filename){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->load(filename);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_clear)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->clear();+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_size)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->size();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_size)(fl_Hold_Browser hold_browser,int W,int H){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_topline)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->topline();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_lineposition)(fl_Hold_Browser hold_browser,int line,Fl_Line_Position pos){+    Fl_Hold_Browser::Fl_Line_Position p = (Fl_Hold_Browser::Fl_Line_Position)-1;+    switch(p){+    case TOP :    {p = Fl_Hold_Browser::TOP; break;}+    case BOTTOM : {p = Fl_Hold_Browser::BOTTOM; break;}+    case MIDDLE : {p = Fl_Hold_Browser::MIDDLE; break;}+    default:      {p = (Fl_Hold_Browser::Fl_Line_Position)-1; break;}+    }+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->lineposition(line,p);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_topline)(fl_Hold_Browser hold_browser,int line){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->topline(line);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_bottomline)(fl_Hold_Browser hold_browser,int line){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->bottomline(line);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_middleline)(fl_Hold_Browser hold_browser,int line){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->middleline(line);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_select)(fl_Hold_Browser hold_browser,int line){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->select(line);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_select_with_val)(fl_Hold_Browser hold_browser,int line,int val){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->select(line,val);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_selected)(fl_Hold_Browser hold_browser,int line){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->selected(line);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_show_with_line)(fl_Hold_Browser hold_browser,int line){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->show(line);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_show)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->show();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_hide_with_line)(fl_Hold_Browser hold_browser,int line){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->hide(line);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_hide)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->hide();+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_visible)(fl_Hold_Browser hold_browser,int line){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->visible(line);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_value)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->value();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_value)(fl_Hold_Browser hold_browser,int line){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->value(line);+  }+  FL_EXPORT_C(const char*,Fl_Hold_Browser_text)(fl_Hold_Browser hold_browser,int line){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->text(line);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_text)(fl_Hold_Browser hold_browser,int line,const char* newtext){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->text(line,newtext);+  }+  FL_EXPORT_C(void*,Fl_Hold_Browser_data)(fl_Hold_Browser hold_browser,int line){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->data(line);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_data)(fl_Hold_Browser hold_browser,int line,void* d){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->data(line,d);+  }+  FL_EXPORT_C(char,Fl_Hold_Browser_format_char)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->format_char();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_format_char)(fl_Hold_Browser hold_browser,char c){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->format_char(c);+  }+  FL_EXPORT_C(char,Fl_Hold_Browser_column_char)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->column_char();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_column_char)(fl_Hold_Browser hold_browser,char c){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->column_char(c);+  }+  FL_EXPORT_C(const int*,Fl_Hold_Browser_column_widths)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->column_widths();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_column_widths)(fl_Hold_Browser hold_browser,const int* arr){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->column_widths(arr);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_displayed)(fl_Hold_Browser hold_browser,int line){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->displayed(line);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_make_visible)(fl_Hold_Browser hold_browser,int line){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->make_visible(line);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_icon)(fl_Hold_Browser hold_browser,int line,fl_Image icon){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->icon(line,(static_cast<Fl_Image*>(icon)));+  }+  FL_EXPORT_C(fl_Image,Fl_Hold_Browser_icon)(fl_Hold_Browser hold_browser,int line){+    return (fl_Image)(static_cast<Fl_Hold_Browser*>(hold_browser))->icon(line);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_remove_icon)(fl_Hold_Browser hold_browser,int line){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->remove_icon(line);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_select_only)(fl_Hold_Browser hold_browser,void *item){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->select_only(item);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_select_only_with_docallbacks)(fl_Hold_Browser hold_browser,void *item,int docallbacks){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->select_only(item,docallbacks);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_deselect)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->deselect();+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_deselect_with_docallbacks)(fl_Hold_Browser hold_browser,int docallbacks){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->deselect(docallbacks);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_position)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->position();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_position)(fl_Hold_Browser hold_browser,int pos){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->position(pos);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_hposition)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->hposition();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_hposition)(fl_Hold_Browser hold_browser,int ){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->hposition();+  }+  FL_EXPORT_C(uchar,Fl_Hold_Browser_has_scrollbar)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->has_scrollbar();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_has_scrollbar)(fl_Hold_Browser hold_browser,uchar mode){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->has_scrollbar(mode);+  }+  FL_EXPORT_C(Fl_Font,Fl_Hold_Browser_textfont)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->textfont();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_textfont)(fl_Hold_Browser hold_browser,Fl_Font font){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->textfont(font);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Hold_Browser_textsize)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->textsize();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_textsize)(fl_Hold_Browser hold_browser,Fl_Fontsize newSize){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->textsize(newSize);+  }+  FL_EXPORT_C(Fl_Color,Fl_Hold_Browser_textcolor)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_textcolor)(fl_Hold_Browser hold_browser,Fl_Color col){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->textcolor(col);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_scrollbar_size)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->scrollbar_size();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_scrollbar_size)(fl_Hold_Browser hold_browser,int newSize){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->scrollbar_size(newSize);+  }+  FL_EXPORT_C(int,Fl_Hold_Browser_scrollbar_width)(fl_Hold_Browser hold_browser){+    return (static_cast<Fl_Hold_Browser*>(hold_browser))->scrollbar_width();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_scrollbar_width)(fl_Hold_Browser hold_browser,int width){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->scrollbar_width(width);+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_scrollbar_right)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->scrollbar_right();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_set_scrollbar_left)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->scrollbar_left();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_sort)(fl_Hold_Browser hold_browser){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->sort();+  }+  FL_EXPORT_C(void,Fl_Hold_Browser_sort_with_flags)(fl_Hold_Browser hold_browser,int flags){+    (static_cast<Fl_Hold_Browser*>(hold_browser))->sort(flags);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Hold_BrowserC.h view
@@ -0,0 +1,202 @@+#ifndef __FL_HOLD_BROWSER_C__+#define __FL_HOLD_BROWSER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Hold_Browser.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif  +  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int ,         Fl_Hold_Browser_handle_super)(fl_Hold_Browser hold_browser,int event);+  FL_EXPORT_C(int ,         Fl_Hold_Browser_handle )(fl_Hold_Browser hold_browser,int event);+  FL_EXPORT_C(void,         Fl_Hold_Browser_resize_super)(fl_Hold_Browser hold_browser,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Hold_Browser_resize )(fl_Hold_Browser hold_browser,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Hold_Browser_show_super)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_show )(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_hide_super)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_hide )(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(fl_Window,    Fl_Hold_Browser_as_window_super)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(fl_Window,    Fl_Hold_Browser_as_window )(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Hold_Browser_as_gl_window_super)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Hold_Browser_as_gl_window)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(fl_Group,     Fl_Hold_Browser_parent)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_parent)(fl_Hold_Browser hold_browser, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Hold_Browser_type)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_type)(fl_Hold_Browser hold_browser, uchar t);++  FL_EXPORT_C(int,          Fl_Hold_Browser_x)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(int,          Fl_Hold_Browser_y)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(int,          Fl_Hold_Browser_w)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(int,          Fl_Hold_Browser_h)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_align)(fl_Hold_Browser hold_browser, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Hold_Browser_align)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Hold_Browser_box)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_box)(fl_Hold_Browser hold_browser, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Hold_Browser_color)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_color)(fl_Hold_Browser hold_browser, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_color_with_bg_sel)(fl_Hold_Browser hold_browser,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Hold_Browser_selection_color)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_selection_color)(fl_Hold_Browser hold_browser, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Hold_Browser_label)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_copy_label)(fl_Hold_Browser hold_browser, const char* new_label);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_label)(fl_Hold_Browser hold_browser, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Hold_Browser_labeltype)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_labeltype)(fl_Hold_Browser hold_browser, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Hold_Browser_labelcolor)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_labelcolor)(fl_Hold_Browser hold_browser, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Hold_Browser_labelfont)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_labelfont)(fl_Hold_Browser hold_browser, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Hold_Browser_labelsize)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_labelsize)(fl_Hold_Browser hold_browser, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Hold_Browser_image)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_image)(fl_Hold_Browser hold_browser, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Hold_Browser_deimage)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_deimage)(fl_Hold_Browser hold_browser, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Hold_Browser_tooltip)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_copy_tooltip)(fl_Hold_Browser hold_browser, const char* text);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_tooltip)(fl_Hold_Browser hold_browser, const char* text);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_callback_with_user_data)(fl_Hold_Browser hold_browser, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_callback)(fl_Hold_Browser hold_browser, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Hold_Browser_user_data)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_user_data)(fl_Hold_Browser hold_browser, void* v);+  FL_EXPORT_C(long,         Fl_Hold_Browser_argument)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_argument)(fl_Hold_Browser hold_browser, long v);+  FL_EXPORT_C(Fl_When,      Fl_Hold_Browser_when)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_when)(fl_Hold_Browser hold_browser, uchar i);+  FL_EXPORT_C(int,          Fl_Hold_Browser_visible_r)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_visible)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_clear_visible)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(unsigned int, Fl_Hold_Browser_active)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(int,          Fl_Hold_Browser_active_r)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_activate)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_deactivate)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(unsigned int, Fl_Hold_Browser_output)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_output)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_clear_output)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(unsigned int, Fl_Hold_Browser_takesevents)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_changed)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_clear_changed)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(int,          Fl_Hold_Browser_take_focus)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_visible_focus)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_clear_visible_focus)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_modify_visible_focus)(fl_Hold_Browser hold_browser, int v);+  FL_EXPORT_C(unsigned int, Fl_Hold_Browser_visible_focus)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_do_callback)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_do_callback_with_widget_and_user_data)(fl_Hold_Browser hold_browser, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Hold_Browser_do_callback_with_widget_and_default_user_data)(fl_Hold_Browser hold_browser, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Hold_Browser_contains)(fl_Hold_Browser hold_browser, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Hold_Browser_inside)(fl_Hold_Browser hold_browser, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Hold_Browser_redraw)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_redraw_label)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(uchar,        Fl_Hold_Browser_damage)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_clear_damage_with_bitmask)(fl_Hold_Browser hold_browser, uchar c);+  FL_EXPORT_C(void,         Fl_Hold_Browser_clear_damage)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,         Fl_Hold_Browser_damage_with_text)(fl_Hold_Browser hold_browser, uchar c);+  FL_EXPORT_C(void,         Fl_Hold_Browser_damage_inside_widget)(fl_Hold_Browser hold_browser, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Hold_Browser_draw_label_with_xywh_alignment)(fl_Hold_Browser hold_browser, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Hold_Browser_measure_label)(fl_Hold_Browser hold_browser, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Hold_Browser_window)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(fl_Window,    Fl_Hold_Browser_top_window)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(fl_Window ,   Fl_Hold_Browser_top_window_offset)(fl_Hold_Browser hold_browser, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Hold_Browser_as_group)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Hold_Browser_as_gl_window)(fl_Hold_Browser hold_browser);+  /* Inherited from Fl_Group */+  FL_EXPORT_C(void,         Fl_Hold_Browser_begin)(fl_Hold_Browser self);+  FL_EXPORT_C(void,         Fl_Hold_Browser_end)(fl_Hold_Browser self);+  FL_EXPORT_C(int,          Fl_Hold_Browser_find)(fl_Hold_Browser self, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Hold_Browser_remove_index)(fl_Hold_Browser self, int index);+  FL_EXPORT_C(void,         Fl_Hold_Browser_remove_widget)(fl_Hold_Browser self, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Hold_Browser_clear)(fl_Hold_Browser self);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_resizable_by_reference)(fl_Hold_Browser self,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_resizable)(fl_Hold_Browser self,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Hold_Browser_resizable)(fl_Hold_Browser self);+  FL_EXPORT_C(void,         Fl_Hold_Browser_add_resizable)(fl_Hold_Browser self,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Hold_Browser_init_sizes)(fl_Hold_Browser self);+  FL_EXPORT_C(int,          Fl_Hold_Browser_children)(fl_Hold_Browser self);+  FL_EXPORT_C(void,         Fl_Hold_Browser_set_clip_children)(fl_Hold_Browser self,int c);+  FL_EXPORT_C(unsigned int, Fl_Hold_Browser_clip_children)(fl_Hold_Browser self);+  FL_EXPORT_C(void,         Fl_Hold_Browser_focus)(fl_Hold_Browser self,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Hold_Browser__ddfdesign_kludge)(fl_Hold_Browser self);+  FL_EXPORT_C(void,         Fl_Hold_Browser_insert_with_before)(fl_Hold_Browser self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Hold_Browser_array)(fl_Hold_Browser self);+  FL_EXPORT_C(fl_Widget,    Fl_Hold_Browser_child)(fl_Hold_Browser self, int n);+  FL_EXPORT_C(void,         Fl_Hold_Browser_forms_end)(fl_Hold_Browser self);++  /* Fl_Hold_Browser specific functions */+  FL_EXPORT_C(void*, Fl_Hold_Browser_other_data)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void, Fl_Hold_Browser_set_other_data)(fl_Hold_Browser hold_browser, void* v);+  FL_EXPORT_C(fl_Hold_Browser, Fl_Hold_Browser_New_WithLabel)(int x, int y, int w, int h, const char* label); +  FL_EXPORT_C(fl_Hold_Browser, Fl_Hold_Browser_New)(int x, int y, int w, int h); +  FL_EXPORT_C(void,Fl_Hold_Browser_Destroy)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void,Fl_Hold_Browser_remove)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(void, Fl_Hold_Browser_add)(fl_Hold_Browser hold_browser, const char* newtext);+  FL_EXPORT_C(void, Fl_Hold_Browser_add_with_d)(fl_Hold_Browser hold_browser, const char* newtext, void* d);+  FL_EXPORT_C(void, Fl_Hold_Browser_insert)(fl_Hold_Browser hold_browser, int line, const char* newtext);+  FL_EXPORT_C(void, Fl_Hold_Browser_insert_with_d)(fl_Hold_Browser hold_browser, int line, const char* newtext, void* d);+  FL_EXPORT_C(void, Fl_Hold_Browser_move)(fl_Hold_Browser hold_browser, int to, int from);+  FL_EXPORT_C(int , Fl_Hold_Browser_load)(fl_Hold_Browser hold_browser, const char* filename);+  FL_EXPORT_C(void, Fl_Hold_Browser_swap)(fl_Hold_Browser hold_browser, int a, int b);+  FL_EXPORT_C(void, Fl_Hold_Browser_clear)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(int, Fl_Hold_Browser_size)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void, Fl_Hold_Browser_set_size)(fl_Hold_Browser hold_browser, int W, int H);+  FL_EXPORT_C(int, Fl_Hold_Browser_topline)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void, Fl_Hold_Browser_lineposition)(fl_Hold_Browser hold_browser, int line, Fl_Line_Position pos);+  FL_EXPORT_C(void, Fl_Hold_Browser_set_topline)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(void, Fl_Hold_Browser_bottomline)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(void, Fl_Hold_Browser_middleline)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(int, Fl_Hold_Browser_select)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(int, Fl_Hold_Browser_select_with_val)(fl_Hold_Browser hold_browser, int line, int val);+  FL_EXPORT_C(int, Fl_Hold_Browser_selected)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(void, Fl_Hold_Browser_show_with_line)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(void, Fl_Hold_Browser_show)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void, Fl_Hold_Browser_hide_with_line)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(void, Fl_Hold_Browser_hide)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(int, Fl_Hold_Browser_visible)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(int, Fl_Hold_Browser_value)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void, Fl_Hold_Browser_set_value)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(const char*, Fl_Hold_Browser_text)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(void, Fl_Hold_Browser_set_text)(fl_Hold_Browser hold_browser, int line, const char* newtext);+  FL_EXPORT_C(void*, Fl_Hold_Browser_data)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(void, Fl_Hold_Browser_set_data)(fl_Hold_Browser hold_browser, int line, void* d);+  FL_EXPORT_C(char, Fl_Hold_Browser_format_char)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void, Fl_Hold_Browser_set_format_char)(fl_Hold_Browser hold_browser, char c);+  FL_EXPORT_C(char, Fl_Hold_Browser_column_char)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void, Fl_Hold_Browser_set_column_char)(fl_Hold_Browser hold_browser, char c);+  FL_EXPORT_C(const int*, Fl_Hold_Browser_column_widths)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void, Fl_Hold_Browser_set_column_widths)(fl_Hold_Browser hold_browser, const int* arr);+  FL_EXPORT_C(int, Fl_Hold_Browser_displayed)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(void, Fl_Hold_Browser_make_visible)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(void, Fl_Hold_Browser_set_icon)(fl_Hold_Browser hold_browser, int line, fl_Image icon);+  FL_EXPORT_C(fl_Image, Fl_Hold_Browser_icon)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(void, Fl_Hold_Browser_remove_icon)(fl_Hold_Browser hold_browser, int line);+  FL_EXPORT_C(int, Fl_Hold_Browser_select_only)(fl_Hold_Browser hold_browser,void *item);+  FL_EXPORT_C(int, Fl_Hold_Browser_select_only_with_docallbacks)(fl_Hold_Browser hold_browser,void *item,int docallbacks);+  FL_EXPORT_C(int, Fl_Hold_Browser_deselect)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(int, Fl_Hold_Browser_deselect_with_docallbacks)(fl_Hold_Browser hold_browser,int docallbacks);+  FL_EXPORT_C(int, Fl_Hold_Browser_position)(fl_Hold_Browser hold_browser); +  FL_EXPORT_C(void, Fl_Hold_Browser_set_position)(fl_Hold_Browser hold_browser,int pos); // scroll to here+  FL_EXPORT_C(int, Fl_Hold_Browser_hposition)(fl_Hold_Browser hold_browser); +  FL_EXPORT_C(void, Fl_Hold_Browser_set_hposition)(fl_Hold_Browser hold_browser,int); // pan to here+  FL_EXPORT_C(uchar, Fl_Hold_Browser_has_scrollbar)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void, Fl_Hold_Browser_set_has_scrollbar)(fl_Hold_Browser hold_browser,uchar mode); +  FL_EXPORT_C(Fl_Font, Fl_Hold_Browser_textfont)(fl_Hold_Browser hold_browser); +  FL_EXPORT_C(void, Fl_Hold_Browser_set_textfont)(fl_Hold_Browser hold_browser,Fl_Font font); +  FL_EXPORT_C(Fl_Fontsize, Fl_Hold_Browser_textsize)(fl_Hold_Browser hold_browser);  +  FL_EXPORT_C(void, Fl_Hold_Browser_set_textsize)(fl_Hold_Browser hold_browser,Fl_Fontsize newSize); +  FL_EXPORT_C(Fl_Color, Fl_Hold_Browser_textcolor)(fl_Hold_Browser hold_browser); +  FL_EXPORT_C(void, Fl_Hold_Browser_set_textcolor)(fl_Hold_Browser hold_browser,Fl_Color col); +  FL_EXPORT_C(int, Fl_Hold_Browser_scrollbar_size)(fl_Hold_Browser hold_browser); +  FL_EXPORT_C(void, Fl_Hold_Browser_set_scrollbar_size)(fl_Hold_Browser hold_browser,int newSize); +  FL_EXPORT_C(int, Fl_Hold_Browser_scrollbar_width)(fl_Hold_Browser hold_browser); +  FL_EXPORT_C(void, Fl_Hold_Browser_set_scrollbar_width)(fl_Hold_Browser hold_browser,int width); +  FL_EXPORT_C(void, Fl_Hold_Browser_scrollbar_right)(fl_Hold_Browser hold_browser); +  FL_EXPORT_C(void, Fl_Hold_Browser_set_scrollbar_left)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void, Fl_Hold_Browser_sort)(fl_Hold_Browser hold_browser);+  FL_EXPORT_C(void, Fl_Hold_Browser_sort_with_flags)(fl_Hold_Browser hold_browser,int flags);+#ifdef __cplusplus+}+#endif+#endif /** __FL_HOLD_BROWSER_C__*/
+ c-src/Fl_ImageC.cpp view
@@ -0,0 +1,152 @@+#include "Fl_ImageC.h"+#ifdef __cplusplus+Fl_DerivedImage::Fl_DerivedImage(int W, int H, int D, fl_Image_Virtual_Funcs* fs) : Fl_Image(W,H,D){+    overriddenFuncs = fs;+    other_data = 0;+ }+Fl_DerivedImage::~Fl_DerivedImage(){+  destroy_data();+  free(overriddenFuncs);+}+void* Fl_DerivedImage::get_other_data(){+  return this->other_data;+}+void Fl_DerivedImage::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedImage::destroy_data(){+  if (this->overriddenFuncs->destroy_data != NULL){+    this->overriddenFuncs->destroy_data((fl_Image) this);+  }+}+void Fl_DerivedImage::color_average(Fl_Color c, float i){+  if (overriddenFuncs->color_average){+    this->overriddenFuncs->color_average((fl_Image) this,c, i );+  }+  else {+    Fl_Image::color_average(c,i);+  }+}+Fl_Image* Fl_DerivedImage::copy(){+  return Fl_Image::copy();+}+Fl_Image* Fl_DerivedImage::copy(int W, int H){+  if (overriddenFuncs->copy){+    fl_Image image = (fl_Image)this->overriddenFuncs->copy((fl_Image) this, W, H);+    return (static_cast<Fl_Image*>(image));+  }+  else {+    return Fl_Image::copy(W, H);+  }+};+void Fl_DerivedImage::desaturate(){+  if (this->overriddenFuncs->desaturate){+    this->overriddenFuncs->desaturate((fl_Image) this);+  }+  else {+    Fl_Image::desaturate();+  }+}+void Fl_DerivedImage::draw(int X, int Y, int W, int H, int cx, int cy){+  if (overriddenFuncs->draw){+    this->overriddenFuncs->draw((fl_Image) this,X,Y,W,H,cx,cy);+  }+  else {+    Fl_Image::draw(X,Y,W,H,cx,cy);+  }+}+void Fl_DerivedImage::uncache(){+  if (overriddenFuncs->uncache){+    this->overriddenFuncs->uncache((fl_Image) this);+  }+  else {+    Fl_Image::uncache();+  }+}+EXPORT {+#endif+  FL_EXPORT_C(fl_Image_Virtual_Funcs*, Fl_Image_default_virtual_funcs)(){+    fl_Image_Virtual_Funcs* ptr = (fl_Image_Virtual_Funcs*)malloc(sizeof(fl_Image_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->color_average = NULL;+    ptr->copy = NULL;+    ptr->desaturate = NULL;+    ptr->uncache = NULL;+    ptr->destroy_data = NULL;+    return ptr;+  }+  FL_EXPORT_C(void*, Fl_Image_other_data)(fl_Image image){+    return (static_cast<Fl_DerivedImage*>(image))->get_other_data();+  }+  FL_EXPORT_C(void, Fl_Image_set_other_data)(fl_Image image, void* v){+    (static_cast<Fl_DerivedImage*>(image))->set_other_data(v);+  }+  FL_EXPORT_C(fl_Image, Fl_Image_New)(int W, int H, int D){+    fl_Image_Virtual_Funcs* fs = Fl_Image_default_virtual_funcs();+    Fl_DerivedImage* d = new Fl_DerivedImage(W,H,D,fs);+    return (fl_Image)d;+  }+  FL_EXPORT_C(fl_Image, Fl_OverriddenImage_New)(int W, int H, int D, fl_Image_Virtual_Funcs* funcs){+    Fl_DerivedImage* d = new Fl_DerivedImage(W,H,D,funcs);+    return (fl_Image)d;+  }+  FL_EXPORT_C(void, Fl_Image_Destroy)(fl_Image image) {+    delete (static_cast<Fl_Image*>(image));+  }+  FL_EXPORT_C(int,Fl_Image_w)(fl_Image image){+    return (static_cast<Fl_DerivedImage*>(image))->w();+  }+  FL_EXPORT_C(int,Fl_Image_h)(fl_Image image){+    return (static_cast<Fl_DerivedImage*>(image))->h();+  }+  FL_EXPORT_C(int,Fl_Image_d)(fl_Image image){+    return (static_cast<Fl_DerivedImage*>(image))->d();+  }+  FL_EXPORT_C(int,Fl_Image_ld)(fl_Image image){+    return (static_cast<Fl_DerivedImage*>(image))->ld();+  }+  FL_EXPORT_C(int,Fl_Image_count)(fl_Image image){+    return (static_cast<Fl_DerivedImage*>(image))->count();+  }+  FL_EXPORT_C(fl_Image,Fl_Image_copy_with_w_h)(fl_Image image,int W,int H){+    return (fl_Image)(static_cast<Fl_DerivedImage*>(image))->copy(W,H);+  }+  FL_EXPORT_C(fl_Image,Fl_Image_copy)(fl_Image image){+    return (fl_Image)(static_cast<Fl_DerivedImage*>(image))->copy();+  }+  FL_EXPORT_C(void,Fl_Image_color_average)(fl_Image image,Fl_Color c,float i){+    return (static_cast<Fl_DerivedImage*>(image))->color_average(c,i);+  }+  FL_EXPORT_C(void,Fl_Image_inactive)(fl_Image image){+    return (static_cast<Fl_DerivedImage*>(image))->inactive();+  }+  FL_EXPORT_C(void,Fl_Image_desaturate)(fl_Image image){+    return (static_cast<Fl_DerivedImage*>(image))->desaturate();+  }+  FL_EXPORT_C(void,Fl_Image_label)(fl_Image image,fl_Widget w){+    return (static_cast<Fl_DerivedImage*>(image))->label((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Image_label_with_menu_item)(fl_Image image,fl_Menu_Item m){+    return (static_cast<Fl_DerivedImage*>(image))->label((static_cast<Fl_Menu_Item*>(m)));+  }+  FL_EXPORT_C(void,Fl_Image_draw_with_cx_cy)(fl_Image image,int X,int Y,int W,int H,int cx,int cy){+    return (static_cast<Fl_DerivedImage*>(image))->draw(X,Y,W,H,cx,cy);+  }+  FL_EXPORT_C(void,Fl_Image_draw_with_cx)(fl_Image image,int X,int Y,int W,int H,int cx){+    return (static_cast<Fl_DerivedImage*>(image))->draw(X,Y,W,H,cx);+  }+  FL_EXPORT_C(void,Fl_Image_draw_with_cy)(fl_Image image,int X,int Y,int W,int H,int cy){+    return (static_cast<Fl_DerivedImage*>(image))->draw(X,Y,W,H,0,cy);+  }+  FL_EXPORT_C(void,Fl_Image_draw_with)(fl_Image image,int X,int Y,int W,int H){+    return (static_cast<Fl_DerivedImage*>(image))->draw(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Image_draw)(fl_Image image,int X,int Y){+    return (static_cast<Fl_Image*>(image))->draw(X,Y);+  }+  FL_EXPORT_C(void,Fl_Image_uncache)(fl_Image image){+    return (static_cast<Fl_DerivedImage*>(image))->uncache();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_ImageC.h view
@@ -0,0 +1,60 @@+#ifndef __FL_IMAGE_C__+#define __FL_IMAGE_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Image.H"+#include "Fl_CallbackC.h"+EXPORT {+  class Fl_DerivedImage : public Fl_Image {+    fl_Image_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void destroy_data();+    void color_average(Fl_Color c, float i);+    Fl_Image* copy();+    Fl_Image* copy(int W, int H);+    void desaturate();+    void draw(int X, int Y, int W, int H, int cx=0, int cy=0);+    void uncache();+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    Fl_DerivedImage(int W, int H, int D, fl_Image_Virtual_Funcs* funcs);+    ~Fl_DerivedImage();+  };+#endif+  FL_EXPORT_C(fl_Image_Virtual_Funcs*, Fl_Image_default_virtual_funcs)();+  FL_EXPORT_C(void*, Fl_Image_other_data)(fl_Image image);+  FL_EXPORT_C(void, Fl_Image_set_other_data)(fl_Image image, void* v);+  FL_EXPORT_C(fl_Image, Fl_Image_New)(int W, int H, int D);+  FL_EXPORT_C(fl_Image, Fl_OverriddenImage_New)(int W, int H, int D, fl_Image_Virtual_Funcs* fs);+  FL_EXPORT_C(void, Fl_Image_Destroy)(fl_Image image);+  FL_EXPORT_C(int, Fl_Image_w)(fl_Image image);+  FL_EXPORT_C(int, Fl_Image_h)(fl_Image image);+  FL_EXPORT_C(int, Fl_Image_d)(fl_Image image);+  FL_EXPORT_C(int, Fl_Image_ld)(fl_Image image);+  FL_EXPORT_C(int, Fl_Image_count)(fl_Image image);+  FL_EXPORT_C(fl_Image, Fl_Image_copy_with_w_h)(fl_Image image,int W, int H);+  FL_EXPORT_C(fl_Image, Fl_Image_copy)(fl_Image image);+  FL_EXPORT_C(void, Fl_Image_color_average)(fl_Image image,Fl_Color c, float i);+  FL_EXPORT_C(void, Fl_Image_inactive)(fl_Image image);+  FL_EXPORT_C(void, Fl_Image_desaturate)(fl_Image image);+  FL_EXPORT_C(void, Fl_Image_draw_with_cx_cy)(fl_Image image,int X, int Y, int W, int H, int cx, int cy);+  FL_EXPORT_C(void, Fl_Image_draw_with_cx)(fl_Image image,int X, int Y, int W, int H, int cx);+  FL_EXPORT_C(void, Fl_Image_draw_with_cy)(fl_Image image,int X, int Y, int W, int H, int cy);+  FL_EXPORT_C(void,Fl_Image_draw_with)(fl_Image image,int X,int Y,int W,int H);+  FL_EXPORT_C(void, Fl_Image_draw)(fl_Image image,int X, int Y);+  FL_EXPORT_C(void, Fl_Image_uncache)(fl_Image image);+#ifdef __cplusplus+}+#endif+#endif /* __FL_xxx_C__ */
+ c-src/Fl_Image_SurfaceC.cpp view
@@ -0,0 +1,26 @@+#include "Fl_Image_SurfaceC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(const char*,Fl_Image_Surface_class_name)(fl_Image_Surface image_surface){+    return (static_cast<Fl_Image_Surface*>(image_surface))->class_name();+  }+  FL_EXPORT_C(void,Fl_Image_Surface_set_current)(fl_Image_Surface image_surface){+    (static_cast<Fl_Image_Surface*>(image_surface))->set_current();+  }+  FL_EXPORT_C(void,Fl_Image_Surface_draw)(fl_Image_Surface image_surface,fl_Widget widget,int delta_x,int delta_y){+    (static_cast<Fl_Image_Surface*>(image_surface))->draw((static_cast<Fl_Widget*>(widget)),delta_x,delta_y);+  }+  FL_EXPORT_C(fl_Image_Surface, Fl_Image_Surface_New)(int w, int h) {+    Fl_Image_Surface* s = new Fl_Image_Surface(w,h);+    return (fl_Image_Surface)s;+  }+  FL_EXPORT_C(void, Fl_Image_Surface_Destroy)(fl_Image_Surface image_surface){+    delete (static_cast<Fl_Image_Surface*>(image_surface));+  }+  FL_EXPORT_C(fl_RGB_Image, Fl_Image_Surface_image)(fl_Image_Surface image_surface) {+    return (fl_RGB_Image)(static_cast<Fl_Image_Surface*>(image_surface))->image();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Image_SurfaceC.h view
@@ -0,0 +1,22 @@+#ifndef __FL_IMAGE_SURFACE_C__+#define __FL_IMAGE_SURFACE_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "FL/Fl_Image_Surface.H"+EXPORT {+#endif+  FL_EXPORT_C(const char* ,Fl_Image_Surface_class_name)(fl_Image_Surface image_surface);+  FL_EXPORT_C(void        ,Fl_Image_Surface_set_current)(fl_Image_Surface image_surface);+  FL_EXPORT_C(void        ,Fl_Image_Surface_draw)(fl_Image_Surface image_surface, fl_Widget widget, int x, int y);+  FL_EXPORT_C(fl_Image_Surface, Fl_Image_Surface_New)(int w, int h);+  FL_EXPORT_C(void, Fl_Image_Surface_Destroy)(fl_Image_Surface image_surface);+  FL_EXPORT_C(fl_Image, Fl_Image_Surface_image)(fl_Image_Surface image_surface);+#ifdef __cplusplus+}+#endif+#endif /* __FL_IMAGE_SURFACE_C__ */
+ c-src/Fl_InputC.cpp view
@@ -0,0 +1,416 @@+#include "Fl_InputC.h"++#ifdef __cplusplus+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Input_handle)(fl_Input self, int event){+    return (static_cast<Fl_Input*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Input_parent)(fl_Input input){+    return (fl_Group) (static_cast<Fl_Input*>(input))->parent();+  }+  FL_EXPORT_C(void,Fl_Input_set_parent)(fl_Input input,fl_Group grp){+    (static_cast<Fl_Input*>(input))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Input_type)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->type();+  }+  FL_EXPORT_C(void,Fl_Input_set_type)(fl_Input input,uchar t){+    (static_cast<Fl_Input*>(input))->type(t);+  }++  FL_EXPORT_C(int,Fl_Input_x)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->x();+  }+  FL_EXPORT_C(int,Fl_Input_y)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->y();+  }+  FL_EXPORT_C(int,Fl_Input_w)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->w();+  }+  FL_EXPORT_C(int,Fl_Input_h)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->h();+  }+  FL_EXPORT_C(void,Fl_Input_set_align)(fl_Input input, Fl_Align alignment){+    (static_cast<Fl_Input*>(input))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Input_align)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Input_box)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->box();+  }+  FL_EXPORT_C(void,Fl_Input_set_box)(fl_Input input,Fl_Boxtype new_box){+    (static_cast<Fl_Input*>(input))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Input_color)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->color();+  }+  FL_EXPORT_C(void,Fl_Input_set_color)(fl_Input input,Fl_Color bg){+    (static_cast<Fl_Input*>(input))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Input_set_color_with_bg_sel)(fl_Input input,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Input*>(input))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Input_selection_color)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Input_set_selection_color)(fl_Input input,Fl_Color a){+    (static_cast<Fl_Input*>(input))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Input_label)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->label();+  }+  FL_EXPORT_C(void,Fl_Input_copy_label)(fl_Input input,const char* new_label){+    (static_cast<Fl_Input*>(input))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Input_set_label)(fl_Input input,const char* text){+    (static_cast<Fl_Input*>(input))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Input_labeltype)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Input_set_labeltype)(fl_Input input,Fl_Labeltype a){+    (static_cast<Fl_Input*>(input))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Input_set_labelcolor)(fl_Input input,Fl_Color c){+    (static_cast<Fl_Input*>(input))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Input_labelcolor)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Input_labelfont)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Input_set_labelfont)(fl_Input input,Fl_Font c){+    (static_cast<Fl_Input*>(input))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Input_labelsize)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Input_set_labelsize)(fl_Input input,Fl_Fontsize pix){+    (static_cast<Fl_Input*>(input))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Input_image)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->image();+  }+  FL_EXPORT_C(void,Fl_Input_set_image)(fl_Input input,fl_Image pix){+    (static_cast<Fl_Input*>(input))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Input_deimage)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->deimage();+  }+  FL_EXPORT_C(void,Fl_Input_set_deimage)(fl_Input input,fl_Image pix){+    (static_cast<Fl_Input*>(input))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Input_tooltip)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Input_copy_tooltip)(fl_Input input,const char* text){+    (static_cast<Fl_Input*>(input))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Input_set_tooltip)(fl_Input input,const char* text){+    (static_cast<Fl_Input*>(input))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Input_set_callback_with_user_data)(fl_Input input,fl_Callback* cb,void* p){+    Fl_Input* castedInput_dow = (static_cast<Fl_Input*>(input));+    new C_to_Fl_Callback(castedInput_dow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Input_set_callback)(fl_Input input,fl_Callback* cb){+    Fl_Input* castedInput_dow = (static_cast<Fl_Input*>(input));+    new C_to_Fl_Callback(castedInput_dow, cb);+  }+  FL_EXPORT_C(void*,Fl_Input_user_data)(fl_Input input){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Input*>(input))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Input*>(input))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Input_set_user_data)(fl_Input input,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Input*>(input))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Input*>(input))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Input*>(input))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Input_argument)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->argument();+  }+  FL_EXPORT_C(void,Fl_Input_set_argument)(fl_Input input,long v){+    (static_cast<Fl_Input*>(input))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Input_when)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->when();+  }+  FL_EXPORT_C(void,Fl_Input_set_when)(fl_Input input,uchar i){+    (static_cast<Fl_Input*>(input))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Input_visible)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->visible();+  }+  FL_EXPORT_C(int,Fl_Input_visible_r)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Input_set_visible)(fl_Input input){+    (static_cast<Fl_Input*>(input))->visible();+  }+  FL_EXPORT_C(void,Fl_Input_clear_visible)(fl_Input input){+    (static_cast<Fl_Input*>(input))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Input_active)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->active();+  }+  FL_EXPORT_C(int,Fl_Input_active_r)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->active_r();+  }+  FL_EXPORT_C(void,Fl_Input_activate)(fl_Input input){+    (static_cast<Fl_Input*>(input))->activate();+  }+  FL_EXPORT_C(void,Fl_Input_deactivate)(fl_Input input){+    (static_cast<Fl_Input*>(input))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Input_output)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->output();+  }+  FL_EXPORT_C(void,Fl_Input_set_output)(fl_Input input){+    (static_cast<Fl_Input*>(input))->output();+  }+  FL_EXPORT_C(void,Fl_Input_clear_output)(fl_Input input){+    (static_cast<Fl_Input*>(input))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Input_takesevents)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Input_set_changed)(fl_Input input){+    (static_cast<Fl_Input*>(input))->changed();+  }+  FL_EXPORT_C(void,Fl_Input_clear_changed)(fl_Input input){+    (static_cast<Fl_Input*>(input))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Input_take_focus)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Input_set_visible_focus)(fl_Input input){+    (static_cast<Fl_Input*>(input))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Input_clear_visible_focus)(fl_Input input){+    (static_cast<Fl_Input*>(input))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Input_modify_visible_focus)(fl_Input input,int v){+    (static_cast<Fl_Input*>(input))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Input_visible_focus)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Input_do_callback)(fl_Input input){+    (static_cast<Fl_Input*>(input))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Input_do_callback_with_widget_and_user_data)(fl_Input input,fl_Widget w,long arg){+    (static_cast<Fl_Input*>(input))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Input_do_callback_with_widget_and_default_user_data)(fl_Input input,fl_Widget w){+    (static_cast<Fl_Input*>(input))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Input_contains)(fl_Input input,fl_Widget w){+    return (static_cast<Fl_Input*>(input))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Input_inside)(fl_Input input,fl_Widget w){+    return (static_cast<Fl_Input*>(input))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Input_redraw)(fl_Input input){+    (static_cast<Fl_Input*>(input))->redraw();+  }+  FL_EXPORT_C(void,Fl_Input_redraw_label)(fl_Input input){+    (static_cast<Fl_Input*>(input))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Input_damage)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->damage();+  }+  FL_EXPORT_C(void,Fl_Input_clear_damage_with_bitmask)(fl_Input input,uchar c){+    (static_cast<Fl_Input*>(input))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Input_clear_damage)(fl_Input input){+    (static_cast<Fl_Input*>(input))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Input_damage_with_text)(fl_Input input,uchar c){+    (static_cast<Fl_Input*>(input))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Input_damage_inside_widget)(fl_Input input,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Input*>(input))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Input_draw_label_with_xywh_alignment)(fl_Input input,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Input*>(input))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Input_measure_label)(fl_Input input,int* ww,int* hh){+    (static_cast<Fl_Input*>(input))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Input_window)(fl_Input input){+    return (fl_Window) (static_cast<Fl_Input*>(input))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Input_top_window)(fl_Input input){+    return (fl_Window) (static_cast<Fl_Input*>(input))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Input_top_window_offset)(fl_Input input, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Input*>(input))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Input_as_group)(fl_Input input){+    return (fl_Group) (static_cast<Fl_Input*>(input))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Input_as_gl_window)(fl_Input input){+    return (fl_Gl_Window) (static_cast<Fl_Input*>(input))->as_gl_window();+  }+  /* Fl_Input specific functions */+  FL_EXPORT_C(fl_Input, Fl_Input_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Input* input = new Fl_Input(x,y,w,h,label);+    return (static_cast<fl_Input>(input));+  }+  FL_EXPORT_C(fl_Input, Fl_Input_New)(int x, int y, int w, int h) {+    Fl_Input* input = new Fl_Input(x,y,w,h,0);+    return (fl_Input)input;+  }+  FL_EXPORT_C(void,Fl_Input_Destroy)(fl_Input input){+    delete (static_cast<Fl_Input*>(input));+  }+  FL_EXPORT_C(void,Fl_Input_resize)(fl_Input input,int X,int Y,int W,int H){+    (static_cast<Fl_Input*>(input))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(int,Fl_Input_set_value)(fl_Input input,const char* text){+    return (static_cast<Fl_Input*>(input))->value(text);+  }+  FL_EXPORT_C(int,Fl_Input_set_value_with_length)(fl_Input input,const char* text,int length){+    return (static_cast<Fl_Input*>(input))->value(text,length);+  }+  FL_EXPORT_C(int,Fl_Input_static_value)(fl_Input input,const char* text){+    return (static_cast<Fl_Input*>(input))->static_value(text);+  }+  FL_EXPORT_C(int,Fl_Input_static_value_with_length)(fl_Input input,const char* text,int length){+    return (static_cast<Fl_Input*>(input))->static_value(text,length);+  }+  FL_EXPORT_C(const char*,Fl_Input_value)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->value();+  }+  FL_EXPORT_C(Fl_Char,Fl_Input_index)(fl_Input input,int i){+    return (static_cast<Fl_Input*>(input))->index(i);+  }+  FL_EXPORT_C(int,Fl_Input_size)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->size();+  }+  FL_EXPORT_C(void,Fl_Input_set_size)(fl_Input input,int W,int H){+    (static_cast<Fl_Input*>(input))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_Input_maximum_size)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->maximum_size();+  }+  FL_EXPORT_C(void,Fl_Input_set_maximum_size)(fl_Input input,int m){+    (static_cast<Fl_Input*>(input))->maximum_size(m);+  }+  FL_EXPORT_C(int,Fl_Input_position)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->position();+  }+  FL_EXPORT_C(int,Fl_Input_mark)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->mark();+  }+  FL_EXPORT_C(int,Fl_Input_set_position_with_cursor_mark)(fl_Input input,int p,int m){+    return (static_cast<Fl_Input*>(input))->position(p,m);+  }+  FL_EXPORT_C(int,Fl_Input_set_position_n_n)(fl_Input input,int p){+    return (static_cast<Fl_Input*>(input))->position(p);+  }+  FL_EXPORT_C(int,Fl_Input_set_mark)(fl_Input input,int m){+    return (static_cast<Fl_Input*>(input))->mark(m);+  }+  FL_EXPORT_C(int,Fl_Input_replace)(fl_Input input,int b,int e,const char* text){+    return (static_cast<Fl_Input*>(input))->replace(b,e,text);+  }+  FL_EXPORT_C(int,Fl_Input_replace_with_ilen)(fl_Input input,int b,int e,const char* text,int ilen){+    return (static_cast<Fl_Input*>(input))->replace(b,e,text,ilen);+  }+  FL_EXPORT_C(int,Fl_Input_cut)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->cut();+  }+  FL_EXPORT_C(int,Fl_Input_cut_bytes)(fl_Input input,int n){+    return (static_cast<Fl_Input*>(input))->cut(n);+  }+  FL_EXPORT_C(int,Fl_Input_cut_range)(fl_Input input,int a,int b){+    return (static_cast<Fl_Input*>(input))->cut(a,b);+  }+  FL_EXPORT_C(int,Fl_Input_insert)(fl_Input input,const char* t){+    return (static_cast<Fl_Input*>(input))->insert(t);+  }+  FL_EXPORT_C(int,Fl_Input_insert_with_length)(fl_Input input,const char* t,int l){+    return (static_cast<Fl_Input*>(input))->insert(t,l);+  }+  FL_EXPORT_C(int,Fl_Input_copy)(fl_Input input,int clipboard){+    return (static_cast<Fl_Input*>(input))->copy(clipboard);+  }+  FL_EXPORT_C(int,Fl_Input_undo)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->undo();+  }+  FL_EXPORT_C(int,Fl_Input_copy_cuts)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->copy_cuts();+  }+  FL_EXPORT_C(int,Fl_Input_shortcut)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Input_set_shortcut)(fl_Input input,int s){+    (static_cast<Fl_Input*>(input))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Font,Fl_Input_textfont)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->textfont();+  }+  FL_EXPORT_C(void,Fl_Input_set_textfont)(fl_Input input,Fl_Font s){+    (static_cast<Fl_Input*>(input))->textfont(s);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Input_textsize)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->textsize();+  }+  FL_EXPORT_C(void,Fl_Input_set_textsize)(fl_Input input,Fl_Fontsize s){+    (static_cast<Fl_Input*>(input))->textsize(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_Input_textcolor)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Input_set_textcolor)(fl_Input input,Fl_Color n){+    (static_cast<Fl_Input*>(input))->textcolor(n);+  }+  FL_EXPORT_C(Fl_Color,Fl_Input_cursor_color)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->cursor_color();+  }+  FL_EXPORT_C(void,Fl_Input_set_cursor_color)(fl_Input input,Fl_Color n){+    (static_cast<Fl_Input*>(input))->cursor_color(n);+  }+  FL_EXPORT_C(int,Fl_Input_input_type)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->input_type();+  }+  FL_EXPORT_C(void,Fl_Input_set_input_type)(fl_Input input,int t){+    (static_cast<Fl_Input*>(input))->input_type(t);+  }+  FL_EXPORT_C(int,Fl_Input_readonly)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->readonly();+  }+  FL_EXPORT_C(void,Fl_Input_set_readonly)(fl_Input input,int b){+    (static_cast<Fl_Input*>(input))->readonly(b);+  }+  FL_EXPORT_C(int,Fl_Input_wrap)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->wrap();+  }+  FL_EXPORT_C(void,Fl_Input_set_wrap)(fl_Input input,int b){+    (static_cast<Fl_Input*>(input))->wrap(b);+  }+  FL_EXPORT_C(void,Fl_Input_tab_nav)(fl_Input input,int val){+    (static_cast<Fl_Input*>(input))->tab_nav(val);+  }+  FL_EXPORT_C(int,Fl_Input_set_tab_nav)(fl_Input input){+    return (static_cast<Fl_Input*>(input))->tab_nav();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_InputC.h view
@@ -0,0 +1,150 @@+#ifndef __FL_INPUT_C__+#define __FL_INPUT_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Input.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Input_handle)(fl_Input self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Input_parent)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_parent)(fl_Input input, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Input_type)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_type)(fl_Input input, uchar t);++  FL_EXPORT_C(int,          Fl_Input_x)(fl_Input input);+  FL_EXPORT_C(int,          Fl_Input_y)(fl_Input input);+  FL_EXPORT_C(int,          Fl_Input_w)(fl_Input input);+  FL_EXPORT_C(int,          Fl_Input_h)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_align)(fl_Input input, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Input_align)(fl_Input input);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Input_box)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_box)(fl_Input input, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Input_color)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_color)(fl_Input input, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Input_set_color_with_bg_sel)(fl_Input input,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Input_selection_color)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_selection_color)(fl_Input input, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Input_label)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_copy_label)(fl_Input input, const char* new_label);+  FL_EXPORT_C(void,         Fl_Input_set_label)(fl_Input input, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Input_labeltype)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_labeltype)(fl_Input input, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Input_labelcolor)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_labelcolor)(fl_Input input, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Input_labelfont)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_labelfont)(fl_Input input, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Input_labelsize)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_labelsize)(fl_Input input, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Input_image)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_image)(fl_Input input, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Input_deimage)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_deimage)(fl_Input input, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Input_tooltip)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_copy_tooltip)(fl_Input input, const char* text);+  FL_EXPORT_C(void,         Fl_Input_set_tooltip)(fl_Input input, const char* text);+  FL_EXPORT_C(void,         Fl_Input_set_callback_with_user_data)(fl_Input input, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Input_set_callback)(fl_Input input, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Input_user_data)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_user_data)(fl_Input input, void* v);+  FL_EXPORT_C(long,         Fl_Input_argument)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_argument)(fl_Input input, long v);+  FL_EXPORT_C(Fl_When,      Fl_Input_when)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_when)(fl_Input input, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Input_visible)(fl_Input input);+  FL_EXPORT_C(int,          Fl_Input_visible_r)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_visible)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_clear_visible)(fl_Input input);+  FL_EXPORT_C(unsigned int, Fl_Input_active)(fl_Input input);+  FL_EXPORT_C(int,          Fl_Input_active_r)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_activate)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_deactivate)(fl_Input input);+  FL_EXPORT_C(unsigned int, Fl_Input_output)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_output)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_clear_output)(fl_Input input);+  FL_EXPORT_C(unsigned int, Fl_Input_takesevents)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_changed)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_clear_changed)(fl_Input input);+  FL_EXPORT_C(int,          Fl_Input_take_focus)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_visible_focus)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_clear_visible_focus)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_modify_visible_focus)(fl_Input input, int v);+  FL_EXPORT_C(unsigned int, Fl_Input_visible_focus)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_do_callback)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_do_callback_with_widget_and_user_data)(fl_Input input, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Input_do_callback_with_widget_and_default_user_data)(fl_Input input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Input_contains)(fl_Input input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Input_inside)(fl_Input input, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Input_redraw)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_redraw_label)(fl_Input input);+  FL_EXPORT_C(uchar,        Fl_Input_damage)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_clear_damage_with_bitmask)(fl_Input input, uchar c);+  FL_EXPORT_C(void,         Fl_Input_clear_damage)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_damage_with_text)(fl_Input input, uchar c);+  FL_EXPORT_C(void,         Fl_Input_damage_inside_widget)(fl_Input input, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Input_draw_label_with_xywh_alignment)(fl_Input input, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Input_measure_label)(fl_Input input, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Input_window)(fl_Input input);+  FL_EXPORT_C(fl_Window,    Fl_Input_top_window)(fl_Input input);+  FL_EXPORT_C(fl_Window ,   Fl_Input_top_window_offset)(fl_Input input, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Input_as_group)(fl_Input input);+  FL_EXPORT_C(fl_Gl_Window, Fl_Input_as_gl_window)(fl_Input input);+  /* Fl_Input specific functions */+  FL_EXPORT_C(int,      Fl_Input_handle)(fl_Input input, int event);+  FL_EXPORT_C(fl_Input, Fl_Input_New_WithLabel)(int x, int y, int w, int h, const char* label); +  FL_EXPORT_C(fl_Input, Fl_Input_New)(int x, int y, int w, int h); +  FL_EXPORT_C(void,     Fl_Input_Destroy)(fl_Input input);+  +  FL_EXPORT_C(void,         Fl_Input_resize)(fl_Input input, int X, int Y, int W, int H);+  FL_EXPORT_C(int,          Fl_Input_set_value)(fl_Input input, const char* text);+  FL_EXPORT_C(int,          Fl_Input_set_value_with_length)(fl_Input input, const char* text, int length);+  FL_EXPORT_C(int,          Fl_Input_static_value)(fl_Input input, const char* text);+  FL_EXPORT_C(int,          Fl_Input_static_value_with_length)(fl_Input input, const char* text, int length);+  FL_EXPORT_C(const char*,  Fl_Input_value)(fl_Input input);+  FL_EXPORT_C(Fl_Char,      Fl_Input_index)(fl_Input input, int i);+  FL_EXPORT_C(int,          Fl_Input_size)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_size)(fl_Input input, int w, int h);+  FL_EXPORT_C(int,          Fl_Input_maximum_size)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_maximum_size)(fl_Input input, int m);+  FL_EXPORT_C(int,          Fl_Input_position)(fl_Input input);+  FL_EXPORT_C(int,          Fl_Input_mark)(fl_Input input);+  FL_EXPORT_C(int,          Fl_Input_set_position_with_cursor_mark)(fl_Input input,int p, int m);+  FL_EXPORT_C(int,          Fl_Input_set_position_n_n)(fl_Input input,int p);+  FL_EXPORT_C(int,          Fl_Input_set_mark)(fl_Input input,int m);+  FL_EXPORT_C(int,          Fl_Input_replace)(fl_Input input,int b, int e, const char *text);+  FL_EXPORT_C(int,          Fl_Input_replace_with_ilen)(fl_Input input,int b, int e, const char* text, int ilen);+  FL_EXPORT_C(int,          Fl_Input_cut)(fl_Input input);+  FL_EXPORT_C(int,          Fl_Input_cut_bytes)(fl_Input input,int n);+  FL_EXPORT_C(int,          Fl_Input_cut_range)(fl_Input input,int a, int b);+  FL_EXPORT_C(int,          Fl_Input_insert)(fl_Input input,const char* t);+  FL_EXPORT_C(int,          Fl_Input_insert_with_length)(fl_Input input,const char* t, int l);+  FL_EXPORT_C(int,          Fl_Input_copy)(fl_Input input,int clipboard);+  FL_EXPORT_C(int,          Fl_Input_undo)(fl_Input input);+  FL_EXPORT_C(int,          Fl_Input_copy_cuts)(fl_Input input);+  FL_EXPORT_C(int,          Fl_Input_shortcut)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_shortcut)(fl_Input input,int s);+  FL_EXPORT_C(Fl_Font,      Fl_Input_textfont)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_textfont)(fl_Input input,Fl_Font s);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Input_textsize)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_textsize)(fl_Input input,Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color,     Fl_Input_textcolor)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_textcolor)(fl_Input input,Fl_Color n);+  FL_EXPORT_C(Fl_Color,     Fl_Input_cursor_color)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_cursor_color)(fl_Input input,Fl_Color n);+  FL_EXPORT_C(int,          Fl_Input_input_type)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_input_type)(fl_Input input,int t);+  FL_EXPORT_C(int,          Fl_Input_readonly)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_readonly)(fl_Input input,int b);+  FL_EXPORT_C(int,          Fl_Input_wrap)(fl_Input input);+  FL_EXPORT_C(void,         Fl_Input_set_wrap)(fl_Input input,int b);+  FL_EXPORT_C(void,         Fl_Input_tab_nav)(fl_Input input,int val);+  FL_EXPORT_C(int,          Fl_Input_set_tab_nav)(fl_Input input);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_INPUT_C__*/
+ c-src/Fl_Input_C.cpp view
@@ -0,0 +1,405 @@+#include "Fl_Input_C.h"++#ifdef __cplusplus+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Input__handle)(fl_Input_ self, int event){+    return (static_cast<Fl_Input_*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Input__parent)(fl_Input_ input_){+    return (fl_Group) (static_cast<Fl_Input_*>(input_))->parent();+  }+  FL_EXPORT_C(void,Fl_Input__set_parent)(fl_Input_ input_,fl_Group grp){+    (static_cast<Fl_Input_*>(input_))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Input__type)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->type();+  }+  FL_EXPORT_C(void,Fl_Input__set_type)(fl_Input_ input_,uchar t){+    (static_cast<Fl_Input_*>(input_))->type(t);+  }++  FL_EXPORT_C(int,Fl_Input__x)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->x();+  }+  FL_EXPORT_C(int,Fl_Input__y)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->y();+  }+  FL_EXPORT_C(int,Fl_Input__w)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->w();+  }+  FL_EXPORT_C(int,Fl_Input__h)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->h();+  }+  FL_EXPORT_C(void,Fl_Input__set_align)(fl_Input_ input_, Fl_Align alignment){+    (static_cast<Fl_Input_*>(input_))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Input__align)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Input__box)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->box();+  }+  FL_EXPORT_C(void,Fl_Input__set_box)(fl_Input_ input_,Fl_Boxtype new_box){+    (static_cast<Fl_Input_*>(input_))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Input__color)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->color();+  }+  FL_EXPORT_C(void,Fl_Input__set_color)(fl_Input_ input_,Fl_Color bg){+    (static_cast<Fl_Input_*>(input_))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Input__set_color_with_bg_sel)(fl_Input_ input_,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Input_*>(input_))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Input__selection_color)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Input__set_selection_color)(fl_Input_ input_,Fl_Color a){+    (static_cast<Fl_Input_*>(input_))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Input__label)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->label();+  }+  FL_EXPORT_C(void,Fl_Input__copy_label)(fl_Input_ input_,const char* new_label){+    (static_cast<Fl_Input_*>(input_))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Input__set_label)(fl_Input_ input_,const char* text){+    (static_cast<Fl_Input_*>(input_))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Input__labeltype)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Input__set_labeltype)(fl_Input_ input_,Fl_Labeltype a){+    (static_cast<Fl_Input_*>(input_))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Input__set_labelcolor)(fl_Input_ input_,Fl_Color c){+    (static_cast<Fl_Input_*>(input_))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Input__labelcolor)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Input__labelfont)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Input__set_labelfont)(fl_Input_ input_,Fl_Font c){+    (static_cast<Fl_Input_*>(input_))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Input__labelsize)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Input__set_labelsize)(fl_Input_ input_,Fl_Fontsize pix){+    (static_cast<Fl_Input_*>(input_))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Input__image)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->image();+  }+  FL_EXPORT_C(void,Fl_Input__set_image)(fl_Input_ input_,fl_Image pix){+    (static_cast<Fl_Input_*>(input_))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Input__deimage)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->deimage();+  }+  FL_EXPORT_C(void,Fl_Input__set_deimage)(fl_Input_ input_,fl_Image pix){+    (static_cast<Fl_Input_*>(input_))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Input__tooltip)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Input__copy_tooltip)(fl_Input_ input_,const char* text){+    (static_cast<Fl_Input_*>(input_))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Input__set_tooltip)(fl_Input_ input_,const char* text){+    (static_cast<Fl_Input_*>(input_))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Input__set_callback_with_user_data)(fl_Input_ input_,fl_Callback* cb,void* p){+    Fl_Input_* castedInput_dow = (static_cast<Fl_Input_*>(input_));+    new C_to_Fl_Callback(castedInput_dow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Input__set_callback)(fl_Input_ input_,fl_Callback* cb){+    Fl_Input_* castedInput_dow = (static_cast<Fl_Input_*>(input_));+    new C_to_Fl_Callback(castedInput_dow, cb);+  }+  FL_EXPORT_C(void*,Fl_Input__user_data)(fl_Input_ input_){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Input_*>(input_))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Input_*>(input_))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Input__set_user_data)(fl_Input_ input_,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Input_*>(input_))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Input_*>(input_))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Input_*>(input_))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Input__argument)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->argument();+  }+  FL_EXPORT_C(void,Fl_Input__set_argument)(fl_Input_ input_,long v){+    (static_cast<Fl_Input_*>(input_))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Input__when)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->when();+  }+  FL_EXPORT_C(void,Fl_Input__set_when)(fl_Input_ input_,uchar i){+    (static_cast<Fl_Input_*>(input_))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Input__visible)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->visible();+  }+  FL_EXPORT_C(int,Fl_Input__visible_r)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Input__set_visible)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->visible();+  }+  FL_EXPORT_C(void,Fl_Input__clear_visible)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Input__active)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->active();+  }+  FL_EXPORT_C(int,Fl_Input__active_r)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->active_r();+  }+  FL_EXPORT_C(void,Fl_Input__activate)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->activate();+  }+  FL_EXPORT_C(void,Fl_Input__deactivate)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Input__output)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->output();+  }+  FL_EXPORT_C(void,Fl_Input__set_output)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->output();+  }+  FL_EXPORT_C(void,Fl_Input__clear_output)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Input__takesevents)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Input__set_changed)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->changed();+  }+  FL_EXPORT_C(void,Fl_Input__clear_changed)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Input__take_focus)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Input__set_visible_focus)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Input__clear_visible_focus)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Input__modify_visible_focus)(fl_Input_ input_,int v){+    (static_cast<Fl_Input_*>(input_))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Input__visible_focus)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Input__do_callback)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Input__do_callback_with_widget_and_user_data)(fl_Input_ input_,fl_Widget w,long arg){+    (static_cast<Fl_Input_*>(input_))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Input__do_callback_with_widget_and_default_user_data)(fl_Input_ input_,fl_Widget w){+    (static_cast<Fl_Input_*>(input_))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Input__contains)(fl_Input_ input_,fl_Widget w){+    return (static_cast<Fl_Input_*>(input_))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Input__inside)(fl_Input_ input_,fl_Widget w){+    return (static_cast<Fl_Input_*>(input_))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Input__redraw)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->redraw();+  }+  FL_EXPORT_C(void,Fl_Input__redraw_label)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Input__damage)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->damage();+  }+  FL_EXPORT_C(void,Fl_Input__clear_damage_with_bitmask)(fl_Input_ input_,uchar c){+    (static_cast<Fl_Input_*>(input_))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Input__clear_damage)(fl_Input_ input_){+    (static_cast<Fl_Input_*>(input_))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Input__damage_with_text)(fl_Input_ input_,uchar c){+    (static_cast<Fl_Input_*>(input_))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Input__damage_inside_widget)(fl_Input_ input_,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Input_*>(input_))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Input__draw_label_with_xywh_alignment)(fl_Input_ input_,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Input_*>(input_))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Input__measure_label)(fl_Input_ input_,int* ww,int* hh){+    (static_cast<Fl_Input_*>(input_))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Input__window)(fl_Input_ input_){+    return (fl_Window) (static_cast<Fl_Input_*>(input_))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Input__top_window)(fl_Input_ input_){+    return (fl_Window) (static_cast<Fl_Input_*>(input_))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Input__top_window_offset)(fl_Input_ input_, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Input_*>(input_))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Input__as_group)(fl_Input_ input_){+    return (fl_Group) (static_cast<Fl_Input_*>(input_))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Input__as_gl_window)(fl_Input_ input_){+    return (fl_Gl_Window) (static_cast<Fl_Input_*>(input_))->as_gl_window();+  }+  /* Fl_Input_ specific functions */+  FL_EXPORT_C(void,Fl_Input__resize)(fl_Input_ input_,int X,int Y,int W,int H){+    (static_cast<Fl_Input_*>(input_))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(int,Fl_Input__set_value)(fl_Input_ input_,const char* text){+    return (static_cast<Fl_Input_*>(input_))->value(text);+  }+  FL_EXPORT_C(int,Fl_Input__set_value_with_length)(fl_Input_ input_,const char* text,int length){+    return (static_cast<Fl_Input_*>(input_))->value(text,length);+  }+  FL_EXPORT_C(int,Fl_Input__static_value)(fl_Input_ input_,const char* text){+    return (static_cast<Fl_Input_*>(input_))->static_value(text);+  }+  FL_EXPORT_C(int,Fl_Input__static_value_with_length)(fl_Input_ input_,const char* text,int length){+    return (static_cast<Fl_Input_*>(input_))->static_value(text,length);+  }+  FL_EXPORT_C(const char*,Fl_Input__value)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->value();+  }+  FL_EXPORT_C(Fl_Char,Fl_Input__index)(fl_Input_ input_,int i){+    return (static_cast<Fl_Input_*>(input_))->index(i);+  }+  FL_EXPORT_C(int,Fl_Input__size)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->size();+  }+  FL_EXPORT_C(void,Fl_Input__set_size)(fl_Input_ input_,int W,int H){+    (static_cast<Fl_Input_*>(input_))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_Input__maximum_size)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->maximum_size();+  }+  FL_EXPORT_C(void,Fl_Input__set_maximum_size)(fl_Input_ input_,int m){+    (static_cast<Fl_Input_*>(input_))->maximum_size(m);+  }+  FL_EXPORT_C(int,Fl_Input__position)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->position();+  }+  FL_EXPORT_C(int,Fl_Input__mark)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->mark();+  }+  FL_EXPORT_C(int,Fl_Input__set_position_with_cursor_mark)(fl_Input_ input_,int p,int m){+    return (static_cast<Fl_Input_*>(input_))->position(p,m);+  }+  FL_EXPORT_C(int,Fl_Input__set_position_n_n)(fl_Input_ input_,int p){+    return (static_cast<Fl_Input_*>(input_))->position(p);+  }+  FL_EXPORT_C(int,Fl_Input__set_mark)(fl_Input_ input_,int m){+    return (static_cast<Fl_Input_*>(input_))->mark(m);+  }+  FL_EXPORT_C(int,Fl_Input__replace)(fl_Input_ input_,int b,int e,const char* text){+    return (static_cast<Fl_Input_*>(input_))->replace(b,e,text);+  }+  FL_EXPORT_C(int,Fl_Input__replace_with_ilen)(fl_Input_ input_,int b,int e,const char* text,int ilen){+    return (static_cast<Fl_Input_*>(input_))->replace(b,e,text,ilen);+  }+  FL_EXPORT_C(int,Fl_Input__cut)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->cut();+  }+  FL_EXPORT_C(int,Fl_Input__cut_bytes)(fl_Input_ input_,int n){+    return (static_cast<Fl_Input_*>(input_))->cut(n);+  }+  FL_EXPORT_C(int,Fl_Input__cut_range)(fl_Input_ input_,int a,int b){+    return (static_cast<Fl_Input_*>(input_))->cut(a,b);+  }+  FL_EXPORT_C(int,Fl_Input__insert)(fl_Input_ input_,const char* t){+    return (static_cast<Fl_Input_*>(input_))->insert(t);+  }+  FL_EXPORT_C(int,Fl_Input__insert_with_length)(fl_Input_ input_,const char* t,int l){+    return (static_cast<Fl_Input_*>(input_))->insert(t,l);+  }+  FL_EXPORT_C(int,Fl_Input__copy)(fl_Input_ input_,int clipboard){+    return (static_cast<Fl_Input_*>(input_))->copy(clipboard);+  }+  FL_EXPORT_C(int,Fl_Input__undo)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->undo();+  }+  FL_EXPORT_C(int,Fl_Input__copy_cuts)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->copy_cuts();+  }+  FL_EXPORT_C(int,Fl_Input__shortcut)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Input__set_shortcut)(fl_Input_ input_,int s){+    (static_cast<Fl_Input_*>(input_))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Font,Fl_Input__textfont)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->textfont();+  }+  FL_EXPORT_C(void,Fl_Input__set_textfont)(fl_Input_ input_,Fl_Font s){+    (static_cast<Fl_Input_*>(input_))->textfont(s);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Input__textsize)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->textsize();+  }+  FL_EXPORT_C(void,Fl_Input__set_textsize)(fl_Input_ input_,Fl_Fontsize s){+    (static_cast<Fl_Input_*>(input_))->textsize(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_Input__textcolor)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Input__set_textcolor)(fl_Input_ input_,Fl_Color n){+    (static_cast<Fl_Input_*>(input_))->textcolor(n);+  }+  FL_EXPORT_C(Fl_Color,Fl_Input__cursor_color)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->cursor_color();+  }+  FL_EXPORT_C(void,Fl_Input__set_cursor_color)(fl_Input_ input_,Fl_Color n){+    (static_cast<Fl_Input_*>(input_))->cursor_color(n);+  }+  FL_EXPORT_C(int,Fl_Input__input_type)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->input_type();+  }+  FL_EXPORT_C(void,Fl_Input__set_input_type)(fl_Input_ input_,int t){+    (static_cast<Fl_Input_*>(input_))->input_type(t);+  }+  FL_EXPORT_C(int,Fl_Input__readonly)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->readonly();+  }+  FL_EXPORT_C(void,Fl_Input__set_readonly)(fl_Input_ input_,int b){+    (static_cast<Fl_Input_*>(input_))->readonly(b);+  }+  FL_EXPORT_C(int,Fl_Input__wrap)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->wrap();+  }+  FL_EXPORT_C(void,Fl_Input__set_wrap)(fl_Input_ input_,int b){+    (static_cast<Fl_Input_*>(input_))->wrap(b);+  }+  FL_EXPORT_C(void,Fl_Input__tab_nav)(fl_Input_ input_,int val){+    (static_cast<Fl_Input_*>(input_))->tab_nav(val);+  }+  FL_EXPORT_C(int,Fl_Input__set_tab_nav)(fl_Input_ input_){+    return (static_cast<Fl_Input_*>(input_))->tab_nav();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Input_C.h view
@@ -0,0 +1,155 @@+#ifndef __FL_INPUT__C__+#define __FL_INPUT__C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Input_.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+#ifndef INTERNAL_LINKAGE+ #define FL_NORMAL_INPUT		0+ #define FL_FLOAT_INPUT		1+ #define FL_INT_INPUT		2+ #define FL_HIDDEN_INPUT		3+ #define FL_MULTILINE_INPUT	4+ #define FL_SECRET_INPUT		5+ #define FL_INPUT_READONLY	8+ #define FL_NORMAL_OUTPUT	(FL_NORMAL_INPUT | FL_INPUT_READONLY)+ #define FL_MULTILINE_OUTPUT	(FL_MULTILINE_INPUT | FL_INPUT_READONLY)+#endif /* INTERNAL_LINKAGE */+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Input__handle)(fl_Input_ self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Input__parent)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_parent)(fl_Input_ input_, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Input__type)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_type)(fl_Input_ input_, uchar t);++  FL_EXPORT_C(int,          Fl_Input__x)(fl_Input_ input_);+  FL_EXPORT_C(int,          Fl_Input__y)(fl_Input_ input_);+  FL_EXPORT_C(int,          Fl_Input__w)(fl_Input_ input_);+  FL_EXPORT_C(int,          Fl_Input__h)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_align)(fl_Input_ input_, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Input__align)(fl_Input_ input_);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Input__box)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_box)(fl_Input_ input_, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Input__color)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_color)(fl_Input_ input_, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Input__set_color_with_bg_sel)(fl_Input_ input_,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Input__selection_color)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_selection_color)(fl_Input_ input_, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Input__label)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__copy_label)(fl_Input_ input_, const char* new_label);+  FL_EXPORT_C(void,         Fl_Input__set_label)(fl_Input_ input_, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Input__labeltype)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_labeltype)(fl_Input_ input_, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Input__labelcolor)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_labelcolor)(fl_Input_ input_, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Input__labelfont)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_labelfont)(fl_Input_ input_, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Input__labelsize)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_labelsize)(fl_Input_ input_, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Input__image)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_image)(fl_Input_ input_, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Input__deimage)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_deimage)(fl_Input_ input_, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Input__tooltip)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__copy_tooltip)(fl_Input_ input_, const char* text);+  FL_EXPORT_C(void,         Fl_Input__set_tooltip)(fl_Input_ input_, const char* text);+  FL_EXPORT_C(void,         Fl_Input__set_callback_with_user_data)(fl_Input_ input_, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Input__set_callback)(fl_Input_ input_, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Input__user_data)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_user_data)(fl_Input_ input_, void* v);+  FL_EXPORT_C(long,         Fl_Input__argument)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_argument)(fl_Input_ input_, long v);+  FL_EXPORT_C(Fl_When,      Fl_Input__when)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_when)(fl_Input_ input_, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Input__visible)(fl_Input_ input_);+  FL_EXPORT_C(int,          Fl_Input__visible_r)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_visible)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__clear_visible)(fl_Input_ input_);+  FL_EXPORT_C(unsigned int, Fl_Input__active)(fl_Input_ input_);+  FL_EXPORT_C(int,          Fl_Input__active_r)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__activate)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__deactivate)(fl_Input_ input_);+  FL_EXPORT_C(unsigned int, Fl_Input__output)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_output)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__clear_output)(fl_Input_ input_);+  FL_EXPORT_C(unsigned int, Fl_Input__takesevents)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_changed)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__clear_changed)(fl_Input_ input_);+  FL_EXPORT_C(int,          Fl_Input__take_focus)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_visible_focus)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__clear_visible_focus)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__modify_visible_focus)(fl_Input_ input_, int v);+  FL_EXPORT_C(unsigned int, Fl_Input__visible_focus)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__do_callback)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__do_callback_with_widget_and_user_data)(fl_Input_ input_, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Input__do_callback_with_widget_and_default_user_data)(fl_Input_ input_, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Input__contains)(fl_Input_ input_, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Input__inside)(fl_Input_ input_, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Input__redraw)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__redraw_label)(fl_Input_ input_);+  FL_EXPORT_C(uchar,        Fl_Input__damage)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__clear_damage_with_bitmask)(fl_Input_ input_, uchar c);+  FL_EXPORT_C(void,         Fl_Input__clear_damage)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__damage_with_text)(fl_Input_ input_, uchar c);+  FL_EXPORT_C(void,         Fl_Input__damage_inside_widget)(fl_Input_ input_, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Input__draw_label_with_xywh_alignment)(fl_Input_ input_, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Input__measure_label)(fl_Input_ input_, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Input__window)(fl_Input_ input_);+  FL_EXPORT_C(fl_Window,    Fl_Input__top_window)(fl_Input_ input_);+  FL_EXPORT_C(fl_Window ,   Fl_Input__top_window_offset)(fl_Input_ input_, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Input__as_group)(fl_Input_ input_);+  FL_EXPORT_C(fl_Gl_Window, Fl_Input__as_gl_window)(fl_Input_ input_);+  /* Fl_Input_ specific functions */+  FL_EXPORT_C(void,         Fl_Input__resize)(fl_Input_ input_, int X, int Y, int W, int H);+  FL_EXPORT_C(int,          Fl_Input__set_value)(fl_Input_ input_, const char*);+  FL_EXPORT_C(int,          Fl_Input__set_value_with_length)(fl_Input_ input_, const char* text, int length);+  FL_EXPORT_C(int,          Fl_Input__static_value)(fl_Input_ input_, const char* text);+  FL_EXPORT_C(int,          Fl_Input__static_value_with_length)(fl_Input_ input_, const char* text, int length);+  FL_EXPORT_C(const char*,  Fl_Input__value)(fl_Input_ input_);+  FL_EXPORT_C(Fl_Char,      Fl_Input__index)(fl_Input_ input_, int i);+  FL_EXPORT_C(int,          Fl_Input__size)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_size)(fl_Input_ input_, int W, int H);+  FL_EXPORT_C(int,          Fl_Input__maximum_size)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_maximum_size)(fl_Input_ input_, int m);+  FL_EXPORT_C(int,          Fl_Input__position)(fl_Input_ input_);+  FL_EXPORT_C(int,          Fl_Input__mark)(fl_Input_ input_);+  FL_EXPORT_C(int,          Fl_Input__set_position_with_cursor_mark)(fl_Input_ input_,int p, int m);+  FL_EXPORT_C(int,          Fl_Input__set_position_n_n)(fl_Input_ input_,int p);+  FL_EXPORT_C(int,          Fl_Input__set_mark)(fl_Input_ input_,int m);+  FL_EXPORT_C(int,          Fl_Input__replace)(fl_Input_ input_,int b, int e, const char *text);+  FL_EXPORT_C(int,          Fl_Input__replace_with_ilen)(fl_Input_ input_,int b, int e, const char *text, int ilen);+  FL_EXPORT_C(int,          Fl_Input__cut)(fl_Input_ input_);+  FL_EXPORT_C(int,          Fl_Input__cut_bytes)(fl_Input_ input_,int n);+  FL_EXPORT_C(int,          Fl_Input__cut_range)(fl_Input_ input_,int a, int b);+  FL_EXPORT_C(int,          Fl_Input__insert)(fl_Input_ input_,const char* t);+  FL_EXPORT_C(int,          Fl_Input__insert_with_length)(fl_Input_ input_,const char* t, int l);+  FL_EXPORT_C(int,          Fl_Input__copy)(fl_Input_ input_,int clipboard);+  FL_EXPORT_C(int,          Fl_Input__undo)(fl_Input_ input_);+  FL_EXPORT_C(int,          Fl_Input__copy_cuts)(fl_Input_ input_);+  FL_EXPORT_C(int,          Fl_Input__shortcut)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_shortcut)(fl_Input_ input_,int s);+  FL_EXPORT_C(Fl_Font,      Fl_Input__textfont)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_textfont)(fl_Input_ input_,Fl_Font s);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Input__textsize)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_textsize)(fl_Input_ input_,Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color,     Fl_Input__textcolor)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_textcolor)(fl_Input_ input_,Fl_Color n);+  FL_EXPORT_C(Fl_Color,     Fl_Input__cursor_color)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_cursor_color)(fl_Input_ input_,Fl_Color n);+  FL_EXPORT_C(int,          Fl_Input__input_type)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_input_type)(fl_Input_ input_,int t);+  FL_EXPORT_C(int,          Fl_Input__readonly)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_readonly)(fl_Input_ input_,int b);+  FL_EXPORT_C(int,          Fl_Input__wrap)(fl_Input_ input_);+  FL_EXPORT_C(void,         Fl_Input__set_wrap)(fl_Input_ input_,int b);+  FL_EXPORT_C(void,         Fl_Input__tab_nav)(fl_Input_ input_,int val);+  FL_EXPORT_C(int,          Fl_Input__set_tab_nav)(fl_Input_ input_);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_INPUT__C__*/
+ c-src/Fl_Int_InputC.cpp view
@@ -0,0 +1,589 @@+#include "Fl_Int_InputC.h"++#ifdef __cplusplus+Fl_DerivedInt_Input::Fl_DerivedInt_Input(int X, int Y, int W, int H, const char *l, fl_Int_Input_Virtual_Funcs* funcs) : Fl_Int_Input(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = 0;+ }+Fl_DerivedInt_Input::Fl_DerivedInt_Input(int X, int Y, int W, int H, fl_Int_Input_Virtual_Funcs* funcs):Fl_Int_Input(X,Y,W,H,0){+    overriddenFuncs = funcs;+    other_data = 0;+  }+Fl_DerivedInt_Input::~Fl_DerivedInt_Input(){+  free(overriddenFuncs);+  free(other_data);+}+void* Fl_DerivedInt_Input::get_other_data(){+  return this->other_data;+}+void Fl_DerivedInt_Input::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedInt_Input::draw_box(){+  Fl_Int_Input::draw_box();+}+void Fl_DerivedInt_Input::draw_box(Fl_Boxtype t, Fl_Color c){+  Fl_Int_Input::draw_box(t,c);+}+void Fl_DerivedInt_Input::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+  Fl_Int_Input::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedInt_Input::draw_backdrop(){+  Fl_Int_Input::draw_backdrop();+}+void Fl_DerivedInt_Input::draw_focus(){+  Fl_Int_Input::draw_focus();+}+void Fl_DerivedInt_Input::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+  Fl_Int_Input::draw_focus(t,x,y,w,h);+}+void Fl_DerivedInt_Input::draw_label(){+  Fl_Int_Input::draw_label();+}+void Fl_DerivedInt_Input::draw_label(int x,int y,int w,int h,Fl_Align alignment){+  Fl_Int_Input::draw_label(x,y,w,h,alignment);+}+int Fl_DerivedInt_Input::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Int_Input) this,event);+  }+  else {+    i = Fl_Int_Input::handle(event);+  }+  return i;+}+void Fl_DerivedInt_Input::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Int_Input) this,x,y,w,h);+  }+  else {+    Fl_Int_Input::resize(x,y,w,h);+  }+}+void Fl_DerivedInt_Input::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Int_Input) this);+  }+  else {+    Fl_Int_Input::show();+  }+}+void Fl_DerivedInt_Input::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Int_Input) this);+  }+  else {+    Fl_Int_Input::hide();+  }+}+void Fl_DerivedInt_Input::draw(){+  if (this->overriddenFuncs->draw != NULL) {+    this->overriddenFuncs->draw((fl_Int_Input) this);+  }+  else {+    Fl_Int_Input::draw();+  }+}+Fl_Window* Fl_DerivedInt_Input::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Int_Input) this)));+  }+  else {+    win = Fl_Int_Input::as_window();+  }+  return win;+}+Fl_Gl_Window* Fl_DerivedInt_Input::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Int_Input) this)));+  }+  else {+    win = Fl_Int_Input::as_gl_window();+  }+  return win;+}+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(fl_Int_Input_Virtual_Funcs*, Fl_Int_Input_default_virtual_funcs)(){+    fl_Int_Input_Virtual_Funcs* ptr = (fl_Int_Input_Virtual_Funcs*)malloc(sizeof(fl_Int_Input_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->hide = NULL;+    ptr->as_window = NULL;+    ptr->as_gl_window = NULL;+    return ptr;+  }+  FL_EXPORT_C(void,Fl_Int_Input_show_super)(fl_Int_Input int_input){+    (static_cast<Fl_Int_Input*>(int_input))->show();+  }+  FL_EXPORT_C(void,Fl_Int_Input_show )(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->show();+  }+  FL_EXPORT_C(void,Fl_Int_Input_hide_super)(fl_Int_Input int_input){+    (static_cast<Fl_Int_Input*>(int_input))->hide();+  }+  FL_EXPORT_C(void,Fl_Int_Input_hide )(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Int_Input_as_window_super)(fl_Int_Input int_input){+    return (static_cast<Fl_Int_Input*>(int_input))->as_window();+  }+  FL_EXPORT_C(fl_Window,Fl_Int_Input_as_window )(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->as_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Int_Input_as_gl_window_super)(fl_Int_Input int_input){+    return (fl_Gl_Window) (static_cast<Fl_Int_Input*>(int_input))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Int_Input_as_gl_window )(fl_Int_Input int_input){+    return (fl_Gl_Window) (static_cast<Fl_DerivedInt_Input*>(int_input))->as_gl_window();+  }+  FL_EXPORT_C(int,Fl_Int_Input_handle)(fl_Int_Input self, int event){+    return (static_cast<Fl_Int_Input*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Int_Input_parent)(fl_Int_Input int_input){+    return (fl_Group) (static_cast<Fl_DerivedInt_Input*>(int_input))->parent();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_parent)(fl_Int_Input int_input,fl_Group grp){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Int_Input_type)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->type();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_type)(fl_Int_Input int_input,uchar t){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->type(t);+  }++FL_EXPORT_C(void, Fl_Int_Input_draw_box)(fl_Int_Input Int_Input){+ (static_cast<Fl_DerivedInt_Input*>(Int_Input))->draw_box();+}+FL_EXPORT_C(void, Fl_Int_Input_draw_box_with_tc)(fl_Int_Input Int_Input,Fl_Boxtype t, Fl_Color c){+ (static_cast<Fl_DerivedInt_Input*>(Int_Input))->draw_box(t,c);+}+FL_EXPORT_C(void, Fl_Int_Input_draw_box_with_txywhc)(fl_Int_Input Int_Input,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+ (static_cast<Fl_DerivedInt_Input*>(Int_Input))->draw_box(t,x,y,w,h,c);+}+FL_EXPORT_C(void, Fl_Int_Input_draw_backdrop)(fl_Int_Input Int_Input){+ (static_cast<Fl_DerivedInt_Input*>(Int_Input))->draw_backdrop();+}+FL_EXPORT_C(void, Fl_Int_Input_draw_focus)(fl_Int_Input Int_Input){+ (static_cast<Fl_DerivedInt_Input*>(Int_Input))->draw_focus();+}+FL_EXPORT_C(void, Fl_Int_Input_draw_focus_with_txywh)(fl_Int_Input Int_Input,Fl_Boxtype t, int x,int y,int w,int h){+ (static_cast<Fl_DerivedInt_Input*>(Int_Input))->draw_focus(t,x,y,w,h);+}+FL_EXPORT_C(void, Fl_Int_Input_draw_label)(fl_Int_Input Int_Input){+ (static_cast<Fl_DerivedInt_Input*>(Int_Input))->draw_label();+}+  FL_EXPORT_C(int,Fl_Int_Input_x)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->x();+  }+  FL_EXPORT_C(int,Fl_Int_Input_y)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->y();+  }+  FL_EXPORT_C(int,Fl_Int_Input_w)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->w();+  }+  FL_EXPORT_C(int,Fl_Int_Input_h)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->h();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_align)(fl_Int_Input int_input, Fl_Align alignment){+    (static_cast<Fl_Int_Input*>(int_input))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Int_Input_align)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Int_Input_box)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->box();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_box)(fl_Int_Input int_input,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Int_Input_color)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->color();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_color)(fl_Int_Input int_input,Fl_Color bg){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_color_with_bg_sel)(fl_Int_Input int_input,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Int_Input_selection_color)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_selection_color)(fl_Int_Input int_input,Fl_Color a){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Int_Input_label)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->label();+  }+  FL_EXPORT_C(void,Fl_Int_Input_copy_label)(fl_Int_Input int_input,const char* new_label){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_label)(fl_Int_Input int_input,const char* text){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Int_Input_labeltype)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_labeltype)(fl_Int_Input int_input,Fl_Labeltype a){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_labelcolor)(fl_Int_Input int_input,Fl_Color c){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Int_Input_labelcolor)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Int_Input_labelfont)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_labelfont)(fl_Int_Input int_input,Fl_Font c){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Int_Input_labelsize)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_labelsize)(fl_Int_Input int_input,Fl_Fontsize pix){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Int_Input_image)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->image();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_image)(fl_Int_Input int_input,fl_Image pix){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Int_Input_deimage)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->deimage();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_deimage)(fl_Int_Input int_input,fl_Image pix){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Int_Input_tooltip)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Int_Input_copy_tooltip)(fl_Int_Input int_input,const char* text){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_tooltip)(fl_Int_Input int_input,const char* text){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_callback_with_user_data)(fl_Int_Input int_input,fl_Callback* cb,void* p){+    Fl_Int_Input* castedInput_dow = (static_cast<Fl_DerivedInt_Input*>(int_input));+    new C_to_Fl_Callback(castedInput_dow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_callback)(fl_Int_Input int_input,fl_Callback* cb){+    Fl_Int_Input* castedInput_dow = (static_cast<Fl_DerivedInt_Input*>(int_input));+    new C_to_Fl_Callback(castedInput_dow, cb);+  }+  FL_EXPORT_C(void*,Fl_Int_Input_user_data)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->user_data();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_user_data)(fl_Int_Input int_input,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Int_Input*>(int_input))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Int_Input*>(int_input))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Int_Input*>(int_input))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Int_Input_argument)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->argument();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_argument)(fl_Int_Input int_input,long v){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Int_Input_when)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->when();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_when)(fl_Int_Input int_input,uchar i){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Int_Input_visible)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->visible();+  }+  FL_EXPORT_C(int,Fl_Int_Input_visible_r)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_visible)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->visible();+  }+  FL_EXPORT_C(void,Fl_Int_Input_clear_visible)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Int_Input_active)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->active();+  }+  FL_EXPORT_C(int,Fl_Int_Input_active_r)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->active_r();+  }+  FL_EXPORT_C(void,Fl_Int_Input_activate)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->activate();+  }+  FL_EXPORT_C(void,Fl_Int_Input_deactivate)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Int_Input_output)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->output();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_output)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->output();+  }+  FL_EXPORT_C(void,Fl_Int_Input_clear_output)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Int_Input_takesevents)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_changed)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->changed();+  }+  FL_EXPORT_C(void,Fl_Int_Input_clear_changed)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Int_Input_take_focus)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_visible_focus)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Int_Input_clear_visible_focus)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Int_Input_modify_visible_focus)(fl_Int_Input int_input,int v){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Int_Input_visible_focus)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Int_Input_do_callback)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Int_Input_do_callback_with_widget_and_user_data)(fl_Int_Input int_input,fl_Widget w,long arg){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Int_Input_do_callback_with_widget_and_default_user_data)(fl_Int_Input int_input,fl_Widget w){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Int_Input_contains)(fl_Int_Input int_input,fl_Widget w){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Int_Input_inside)(fl_Int_Input int_input,fl_Widget w){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Int_Input_redraw)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->redraw();+  }+  FL_EXPORT_C(void,Fl_Int_Input_redraw_label)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Int_Input_damage)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->damage();+  }+  FL_EXPORT_C(void,Fl_Int_Input_clear_damage_with_bitmask)(fl_Int_Input int_input,uchar c){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Int_Input_clear_damage)(fl_Int_Input int_input){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Int_Input_damage_with_text)(fl_Int_Input int_input,uchar c){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Int_Input_damage_inside_widget)(fl_Int_Input int_input,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Int_Input_draw_label_with_xywh_alignment)(fl_Int_Input int_input,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Int_Input_measure_label)(fl_Int_Input int_input,int* ww,int* hh){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Int_Input_window)(fl_Int_Input int_input){+    return (fl_Window) (static_cast<Fl_DerivedInt_Input*>(int_input))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Int_Input_top_window)(fl_Int_Input int_input){+    return (fl_Window) (static_cast<Fl_DerivedInt_Input*>(int_input))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Int_Input_top_window_offset)(fl_Int_Input int_input, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedInt_Input*>(int_input))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Int_Input_as_group)(fl_Int_Input int_input){+    return (fl_Group) (static_cast<Fl_DerivedInt_Input*>(int_input))->as_group();+  }+  /* Fl_Int_Input specific functions */+  FL_EXPORT_C(int,Fl_Int_Input_handle_super )(fl_Int_Input int_input,int event){+    return (static_cast<Fl_Int_Input*>(int_input))->handle(event);+  }+  FL_EXPORT_C(void*, Fl_Int_Input_other_data)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->get_other_data();+  }+  FL_EXPORT_C(void, Fl_Int_Input_set_other_data)(fl_Int_Input int_input, void* v){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->set_other_data(v);+  }+  FL_EXPORT_C(fl_Int_Input, Fl_Int_Input_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    fl_Int_Input_Virtual_Funcs* funcs = Fl_Int_Input_default_virtual_funcs();+    Fl_DerivedInt_Input* int_input = new Fl_DerivedInt_Input(x,y,w,h,label,funcs);+    return (static_cast<fl_Int_Input>(int_input));+  }+  FL_EXPORT_C(fl_Int_Input, Fl_Int_Input_New)(int x, int y, int w, int h) {+    fl_Int_Input_Virtual_Funcs* funcs = Fl_Int_Input_default_virtual_funcs();+    Fl_DerivedInt_Input* int_input = new Fl_DerivedInt_Input(x,y,w,h,0,funcs);+    return (static_cast<fl_Int_Input>(int_input));+  }+  FL_EXPORT_C(fl_Int_Input, Fl_OverriddenInt_Input_New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Int_Input_Virtual_Funcs* funcs) {+    Fl_DerivedInt_Input* int_input = new Fl_DerivedInt_Input(x,y,w,h,label,funcs);+    return (static_cast<fl_Int_Input>(int_input));+  }+  FL_EXPORT_C(fl_Int_Input, Fl_OverriddenInt_Input_New)(int x, int y, int w, int h, fl_Int_Input_Virtual_Funcs* funcs) {+    Fl_DerivedInt_Input* int_input = new Fl_DerivedInt_Input(x,y,w,h,0,funcs);+    return (fl_Int_Input)int_input;+  }+  FL_EXPORT_C(void,Fl_Int_Input_Destroy)(fl_Int_Input int_input){+    delete (static_cast<Fl_DerivedInt_Input*>(int_input));+  }+  FL_EXPORT_C(void,Fl_Int_Input_resize_super )(fl_Int_Input int_input,int x, int y, int w, int h){+    (static_cast<Fl_Int_Input*>(int_input))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Int_Input_resize )(fl_Int_Input int_input,int x, int y, int w, int h){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->resize(x,y,w,h);+  }+  FL_EXPORT_C(int,Fl_Int_Input_set_value)(fl_Int_Input int_input,const char* text){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->value(text);+  }+  FL_EXPORT_C(int,Fl_Int_Input_set_value_with_length)(fl_Int_Input int_input,const char* text,int length){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->value(text,length);+  }+  FL_EXPORT_C(int,Fl_Int_Input_static_value)(fl_Int_Input int_input,const char* text){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->static_value(text);+  }+  FL_EXPORT_C(int,Fl_Int_Input_static_value_with_length)(fl_Int_Input int_input,const char* text,int length){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->static_value(text,length);+  }+  FL_EXPORT_C(const char*,Fl_Int_Input_value)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->value();+  }+  FL_EXPORT_C(Fl_Char,Fl_Int_Input_index)(fl_Int_Input int_input,int i){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->index(i);+  }+  FL_EXPORT_C(int,Fl_Int_Input_size)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->size();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_size)(fl_Int_Input int_input,int W,int H){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_Int_Input_maximum_size)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->maximum_size();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_maximum_size)(fl_Int_Input int_input,int m){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->maximum_size(m);+  }+  FL_EXPORT_C(int,Fl_Int_Input_position)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->position();+  }+  FL_EXPORT_C(int,Fl_Int_Input_mark)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->mark();+  }+  FL_EXPORT_C(int,Fl_Int_Input_set_position_with_cursor_mark)(fl_Int_Input int_input,int p,int m){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->position(p,m);+  }+  FL_EXPORT_C(int,Fl_Int_Input_set_position_n_n)(fl_Int_Input int_input,int p){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->position(p);+  }+  FL_EXPORT_C(int,Fl_Int_Input_set_mark)(fl_Int_Input int_input,int m){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->mark(m);+  }+  FL_EXPORT_C(int,Fl_Int_Input_replace)(fl_Int_Input int_input,int b,int e,const char* text){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->replace(b,e,text);+  }+  FL_EXPORT_C(int,Fl_Int_Input_replace_with_ilen)(fl_Int_Input int_input,int b,int e,const char* text,int ilen){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->replace(b,e,text,ilen);+  }+  FL_EXPORT_C(int,Fl_Int_Input_cut)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->cut();+  }+  FL_EXPORT_C(int,Fl_Int_Input_cut_bytes)(fl_Int_Input int_input,int n){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->cut(n);+  }+  FL_EXPORT_C(int,Fl_Int_Input_cut_range)(fl_Int_Input int_input,int a,int b){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->cut(a,b);+  }+  FL_EXPORT_C(int,Fl_Int_Input_insert)(fl_Int_Input int_input,const char* t){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->insert(t);+  }+  FL_EXPORT_C(int,Fl_Int_Input_insert_with_length)(fl_Int_Input int_input,const char* t,int l){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->insert(t,l);+  }+  FL_EXPORT_C(int,Fl_Int_Input_copy)(fl_Int_Input int_input,int clipboard){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->copy(clipboard);+  }+  FL_EXPORT_C(int,Fl_Int_Input_undo)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->undo();+  }+  FL_EXPORT_C(int,Fl_Int_Input_copy_cuts)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->copy_cuts();+  }+  FL_EXPORT_C(int,Fl_Int_Input_shortcut)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_shortcut)(fl_Int_Input int_input,int s){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Font,Fl_Int_Input_textfont)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->textfont();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_textfont)(fl_Int_Input int_input,Fl_Font s){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->textfont(s);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Int_Input_textsize)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->textsize();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_textsize)(fl_Int_Input int_input,Fl_Fontsize s){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->textsize(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_Int_Input_textcolor)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_textcolor)(fl_Int_Input int_input,Fl_Color n){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->textcolor(n);+  }+  FL_EXPORT_C(Fl_Color,Fl_Int_Input_cursor_color)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->cursor_color();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_cursor_color)(fl_Int_Input int_input,Fl_Color n){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->cursor_color(n);+  }+  FL_EXPORT_C(int,Fl_Int_Input_input_type)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->input_type();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_input_type)(fl_Int_Input int_input,int t){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->input_type(t);+  }+  FL_EXPORT_C(int,Fl_Int_Input_readonly)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->readonly();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_readonly)(fl_Int_Input int_input,int b){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->readonly(b);+  }+  FL_EXPORT_C(int,Fl_Int_Input_wrap)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->wrap();+  }+  FL_EXPORT_C(void,Fl_Int_Input_set_wrap)(fl_Int_Input int_input,int b){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->wrap(b);+  }+  FL_EXPORT_C(void,Fl_Int_Input_tab_nav)(fl_Int_Input int_input,int val){+    (static_cast<Fl_DerivedInt_Input*>(int_input))->tab_nav(val);+  }+  FL_EXPORT_C(int,Fl_Int_Input_set_tab_nav)(fl_Int_Input int_input){+    return (static_cast<Fl_DerivedInt_Input*>(int_input))->tab_nav();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Int_InputC.h view
@@ -0,0 +1,196 @@+#ifndef __FL_INT_INPUT_C__+#define __FL_INT_INPUT_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Int_Input.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Int_Input_handle_super)(fl_Int_Input self, int event);+  FL_EXPORT_C(int,Fl_Int_Input_handle)(fl_Int_Input self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Int_Input_parent)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_parent)(fl_Int_Input int_input, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Int_Input_type)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_type)(fl_Int_Input int_input, uchar t);++FL_EXPORT_C(void, Fl_Int_Input_draw_box)(fl_Int_Input Int_Input);+FL_EXPORT_C(void, Fl_Int_Input_draw_box_with_tc)(fl_Int_Input Int_Input,Fl_Boxtype t, Fl_Color c);+FL_EXPORT_C(void, Fl_Int_Input_draw_box_with_txywhc)(fl_Int_Input Int_Input,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+FL_EXPORT_C(void, Fl_Int_Input_draw_backdrop)(fl_Int_Input Int_Input);+FL_EXPORT_C(void, Fl_Int_Input_draw_focus)(fl_Int_Input Int_Input);+FL_EXPORT_C(void, Fl_Int_Input_draw_focus_with_txywh)(fl_Int_Input Int_Input,Fl_Boxtype t, int x,int y,int w,int h);+FL_EXPORT_C(void, Fl_Int_Input_draw_label)(fl_Int_Input Int_Input);+  FL_EXPORT_C(int,          Fl_Int_Input_x)(fl_Int_Input int_input);+  FL_EXPORT_C(int,          Fl_Int_Input_y)(fl_Int_Input int_input);+  FL_EXPORT_C(int,          Fl_Int_Input_w)(fl_Int_Input int_input);+  FL_EXPORT_C(int,          Fl_Int_Input_h)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_align)(fl_Int_Input int_input, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Int_Input_align)(fl_Int_Input int_input);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Int_Input_box)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_box)(fl_Int_Input int_input, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Int_Input_color)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_color)(fl_Int_Input int_input, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Int_Input_set_color_with_bg_sel)(fl_Int_Input int_input,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Int_Input_selection_color)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_selection_color)(fl_Int_Input int_input, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Int_Input_label)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_copy_label)(fl_Int_Input int_input, const char* new_label);+  FL_EXPORT_C(void,         Fl_Int_Input_set_label)(fl_Int_Input int_input, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Int_Input_labeltype)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_labeltype)(fl_Int_Input int_input, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Int_Input_labelcolor)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_labelcolor)(fl_Int_Input int_input, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Int_Input_labelfont)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_labelfont)(fl_Int_Input int_input, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Int_Input_labelsize)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_labelsize)(fl_Int_Input int_input, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Int_Input_image)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_image)(fl_Int_Input int_input, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Int_Input_deimage)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_deimage)(fl_Int_Input int_input, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Int_Input_tooltip)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_copy_tooltip)(fl_Int_Input int_input, const char* text);+  FL_EXPORT_C(void,         Fl_Int_Input_set_tooltip)(fl_Int_Input int_input, const char* text);+  FL_EXPORT_C(void,         Fl_Int_Input_set_callback_with_user_data)(fl_Int_Input int_input, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Int_Input_set_callback)(fl_Int_Input int_input, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Int_Input_user_data)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_user_data)(fl_Int_Input int_input, void* v);+  FL_EXPORT_C(long,         Fl_Int_Input_argument)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_argument)(fl_Int_Input int_input, long v);+  FL_EXPORT_C(Fl_When,      Fl_Int_Input_when)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_when)(fl_Int_Input int_input, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Int_Input_visible)(fl_Int_Input int_input);+  FL_EXPORT_C(int,          Fl_Int_Input_visible_r)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_visible)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_clear_visible)(fl_Int_Input int_input);+  FL_EXPORT_C(unsigned int, Fl_Int_Input_active)(fl_Int_Input int_input);+  FL_EXPORT_C(int,          Fl_Int_Input_active_r)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_activate)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_deactivate)(fl_Int_Input int_input);+  FL_EXPORT_C(unsigned int, Fl_Int_Input_output)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_output)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_clear_output)(fl_Int_Input int_input);+  FL_EXPORT_C(unsigned int, Fl_Int_Input_takesevents)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_changed)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_clear_changed)(fl_Int_Input int_input);+  FL_EXPORT_C(int,          Fl_Int_Input_take_focus)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_visible_focus)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_clear_visible_focus)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_modify_visible_focus)(fl_Int_Input int_input, int v);+  FL_EXPORT_C(unsigned int, Fl_Int_Input_visible_focus)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_do_callback)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_do_callback_with_widget_and_user_data)(fl_Int_Input int_input, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Int_Input_do_callback_with_widget_and_default_user_data)(fl_Int_Input int_input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Int_Input_contains)(fl_Int_Input int_input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Int_Input_inside)(fl_Int_Input int_input, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Int_Input_redraw)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_redraw_label)(fl_Int_Input int_input);+  FL_EXPORT_C(uchar,        Fl_Int_Input_damage)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_clear_damage_with_bitmask)(fl_Int_Input int_input, uchar c);+  FL_EXPORT_C(void,         Fl_Int_Input_clear_damage)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_damage_with_text)(fl_Int_Input int_input, uchar c);+  FL_EXPORT_C(void,         Fl_Int_Input_damage_inside_widget)(fl_Int_Input int_input, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Int_Input_draw_label_with_xywh_alignment)(fl_Int_Input int_input, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Int_Input_measure_label)(fl_Int_Input int_input, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Int_Input_window)(fl_Int_Input int_input);+  FL_EXPORT_C(fl_Window,    Fl_Int_Input_top_window)(fl_Int_Input int_input);+  FL_EXPORT_C(fl_Window ,   Fl_Int_Input_top_window_offset)(fl_Int_Input int_input, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Int_Input_as_group)(fl_Int_Input int_input);+  /* Fl_Int_Input specific functions */+#ifdef __cplusplus+  class Fl_DerivedInt_Input : public Fl_Int_Input {+    fl_Int_Input_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    virtual int handle(int event);+    virtual void resize(int x, int y, int w, int h);+    virtual void show();+    virtual void hide();+    virtual Fl_Window* as_window();+    virtual Fl_Gl_Window* as_gl_window();+    Fl_DerivedInt_Input(int X, int Y, int W, int H, const char *l, fl_Int_Input_Virtual_Funcs* funcs);+    Fl_DerivedInt_Input(int X, int Y, int W, int H, fl_Int_Input_Virtual_Funcs* funcs);+    ~Fl_DerivedInt_Input();+  };+#endif  +  FL_EXPORT_C(int ,         Fl_Int_Input_handle_super)(fl_Int_Input int_input,int event);+  FL_EXPORT_C(int ,         Fl_Int_Input_handle )(fl_Int_Input int_input,int event);+  FL_EXPORT_C(void,         Fl_Int_Input_resize_super)(fl_Int_Input int_input,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Int_Input_resize )(fl_Int_Input int_input,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Int_Input_show_super)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_show )(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_hide_super)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_hide )(fl_Int_Input int_input);+  FL_EXPORT_C(fl_Window,    Fl_Int_Input_as_window_super)(fl_Int_Input int_input);+  FL_EXPORT_C(fl_Window,    Fl_Int_Input_as_window )(fl_Int_Input int_input);+  FL_EXPORT_C(fl_Gl_Window, Fl_Int_Input_as_gl_window_super)(fl_Int_Input int_input);+  FL_EXPORT_C(fl_Gl_Window, Fl_Int_Input_as_gl_window)(fl_Int_Input int_input);+  FL_EXPORT_C(void*, Fl_Int_Input_other_data)(fl_Int_Input int_input);+  FL_EXPORT_C(void, Fl_Int_Input_set_other_data)(fl_Int_Input int_input, void* v);+  FL_EXPORT_C(fl_Float_Input, Fl_Int_Input_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Float_Input, Fl_Int_Input_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,     Fl_Int_Input_Destroy)(fl_Int_Input int_input);++  FL_EXPORT_C(void,         Fl_Int_Input_resize)(fl_Int_Input int_input, int X, int Y, int W, int H);+  FL_EXPORT_C(int,          Fl_Int_Input_set_value)(fl_Int_Input int_input, const char*);+  FL_EXPORT_C(int,          Fl_Int_Input_set_value_with_length)(fl_Int_Input int_input, const char* text, int length);+  FL_EXPORT_C(int,          Fl_Int_Input_static_value)(fl_Int_Input int_input, const char* text);+  FL_EXPORT_C(int,          Fl_Int_Input_static_value_with_length)(fl_Int_Input int_input, const char* text, int length);+  FL_EXPORT_C(const char*,  Fl_Int_Input_value)(fl_Int_Input int_input);+  FL_EXPORT_C(Fl_Char,      Fl_Int_Input_index)(fl_Int_Input int_input, int i);+  FL_EXPORT_C(int,          Fl_Int_Input_size)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_size)(fl_Int_Input int_input, int W, int H);+  FL_EXPORT_C(int,          Fl_Int_Input_maximum_size)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_maximum_size)(fl_Int_Input int_input, int m);+  FL_EXPORT_C(int,          Fl_Int_Input_position)(fl_Int_Input int_input);+  FL_EXPORT_C(int,          Fl_Int_Input_mark)(fl_Int_Input int_input);+  FL_EXPORT_C(int,          Fl_Int_Input_set_position_with_cursor_mark)(fl_Int_Input int_input,int p, int m);+  FL_EXPORT_C(int,          Fl_Int_Input_set_position_n_n)(fl_Int_Input int_input,int p);+  FL_EXPORT_C(int,          Fl_Int_Input_set_mark)(fl_Int_Input int_input,int m);+  FL_EXPORT_C(int,          Fl_Int_Input_replace)(fl_Int_Input int_input,int b, int e, const char *text);+  FL_EXPORT_C(int,          Fl_Int_Input_replace_with_ilen)(fl_Int_Input int_input,int b, int e, const char *text, int ilen);+  FL_EXPORT_C(int,          Fl_Int_Input_cut)(fl_Int_Input int_input);+  FL_EXPORT_C(int,          Fl_Int_Input_cut_bytes)(fl_Int_Input int_input,int n);+  FL_EXPORT_C(int,          Fl_Int_Input_cut_range)(fl_Int_Input int_input,int a, int b);+  FL_EXPORT_C(int,          Fl_Int_Input_insert)(fl_Int_Input int_input,const char* t);+  FL_EXPORT_C(int,          Fl_Int_Input_insert_with_length)(fl_Int_Input int_input,const char* t, int l);+  FL_EXPORT_C(int,          Fl_Int_Input_copy)(fl_Int_Input int_input,int clipboard);+  FL_EXPORT_C(int,          Fl_Int_Input_undo)(fl_Int_Input int_input);+  FL_EXPORT_C(int,          Fl_Int_Input_copy_cuts)(fl_Int_Input int_input);+  FL_EXPORT_C(int,          Fl_Int_Input_shortcut)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_shortcut)(fl_Int_Input int_input,int s);+  FL_EXPORT_C(Fl_Font,      Fl_Int_Input_textfont)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_textfont)(fl_Int_Input int_input,Fl_Font s);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Int_Input_textsize)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_textsize)(fl_Int_Input int_input,Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color,     Fl_Int_Input_textcolor)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_textcolor)(fl_Int_Input int_input,Fl_Color n);+  FL_EXPORT_C(Fl_Color,     Fl_Int_Input_cursor_color)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_cursor_color)(fl_Int_Input int_input,Fl_Color n);+  FL_EXPORT_C(int,          Fl_Int_Input_input_type)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_input_type)(fl_Int_Input int_input,int t);+  FL_EXPORT_C(int,          Fl_Int_Input_readonly)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_readonly)(fl_Int_Input int_input,int b);+  FL_EXPORT_C(int,          Fl_Int_Input_wrap)(fl_Int_Input int_input);+  FL_EXPORT_C(void,         Fl_Int_Input_set_wrap)(fl_Int_Input int_input,int b);+  FL_EXPORT_C(void,         Fl_Int_Input_tab_nav)(fl_Int_Input int_input,int val);+  FL_EXPORT_C(int,          Fl_Int_Input_set_tab_nav)(fl_Int_Input int_input);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_INT_INPUT_C__*/
+ c-src/Fl_Light_ButtonC.cpp view
@@ -0,0 +1,312 @@+#include "Fl_Light_ButtonC.h"++#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Light_Button_handle)(fl_Light_Button self, int event){+    return (static_cast<Fl_Light_Button*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Light_Button_parent)(fl_Light_Button b){+    return (fl_Group) (static_cast<Fl_Light_Button*>(b))->parent();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_parent)(fl_Light_Button b,fl_Group grp){+    (static_cast<Fl_Light_Button*>(b))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Light_Button_type)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->type();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_type)(fl_Light_Button b,uchar t){+    (static_cast<Fl_Light_Button*>(b))->type(t);+  }++  FL_EXPORT_C(int,Fl_Light_Button_x)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->x();+  }+  FL_EXPORT_C(int,Fl_Light_Button_y)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->y();+  }+  FL_EXPORT_C(int,Fl_Light_Button_w)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->w();+  }+  FL_EXPORT_C(int,Fl_Light_Button_h)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->h();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_align)(fl_Light_Button light_button, Fl_Align alignment){+    (static_cast<Fl_Light_Button*>(light_button))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Light_Button_align)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Light_Button_box)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->box();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_box)(fl_Light_Button b,Fl_Boxtype new_box){+    (static_cast<Fl_Light_Button*>(b))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Light_Button_color)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->color();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_color)(fl_Light_Button b,Fl_Color bg){+    (static_cast<Fl_Light_Button*>(b))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_color_with_bg_sel)(fl_Light_Button b,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Light_Button*>(b))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Light_Button_selection_color)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_selection_color)(fl_Light_Button b,Fl_Color a){+    (static_cast<Fl_Light_Button*>(b))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Light_Button_label)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->label();+  }+  FL_EXPORT_C(void,Fl_Light_Button_copy_label)(fl_Light_Button b,const char* new_label){+    (static_cast<Fl_Light_Button*>(b))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_label)(fl_Light_Button b,const char* text){+    (static_cast<Fl_Light_Button*>(b))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Light_Button_labeltype)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_labeltype)(fl_Light_Button b,Fl_Labeltype a){+    (static_cast<Fl_Light_Button*>(b))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_labelcolor)(fl_Light_Button b,Fl_Color c){+    (static_cast<Fl_Light_Button*>(b))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Light_Button_labelcolor)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Light_Button_labelfont)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_labelfont)(fl_Light_Button b,Fl_Font c){+    (static_cast<Fl_Light_Button*>(b))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Light_Button_labelsize)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_labelsize)(fl_Light_Button b,Fl_Fontsize pix){+    (static_cast<Fl_Light_Button*>(b))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Light_Button_image)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->image();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_image)(fl_Light_Button b,fl_Image pix){+    (static_cast<Fl_Light_Button*>(b))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Light_Button_deimage)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->deimage();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_deimage)(fl_Light_Button b,fl_Image pix){+    (static_cast<Fl_Light_Button*>(b))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Light_Button_tooltip)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Light_Button_copy_tooltip)(fl_Light_Button b,const char* text){+    (static_cast<Fl_Light_Button*>(b))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_tooltip)(fl_Light_Button b,const char* text){+    (static_cast<Fl_Light_Button*>(b))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_callback_with_user_data)(fl_Light_Button b,fl_Callback* cb,void* p){+    Fl_Light_Button* castedButton = (static_cast<Fl_Light_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_callback)(fl_Light_Button b,fl_Callback* cb){+    Fl_Light_Button* castedButton = (static_cast<Fl_Light_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Light_Button_user_data)(fl_Light_Button b){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Light_Button*>(b))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Light_Button*>(b))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_user_data)(fl_Light_Button b,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Light_Button*>(b))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Light_Button*>(b))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Light_Button*>(b))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Light_Button_argument)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->argument();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_argument)(fl_Light_Button b,long v){+    (static_cast<Fl_Light_Button*>(b))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Light_Button_when)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->when();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_when)(fl_Light_Button b,uchar i){+    (static_cast<Fl_Light_Button*>(b))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Light_Button_visible)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->visible();+  }+  FL_EXPORT_C(int,Fl_Light_Button_visible_r)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_visible)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->visible();+  }+  FL_EXPORT_C(void,Fl_Light_Button_clear_visible)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Light_Button_active)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->active();+  }+  FL_EXPORT_C(int,Fl_Light_Button_active_r)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->active_r();+  }+  FL_EXPORT_C(void,Fl_Light_Button_activate)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->activate();+  }+  FL_EXPORT_C(void,Fl_Light_Button_deactivate)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Light_Button_output)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_output)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Light_Button_clear_output)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Light_Button_takesevents)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_changed)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->changed();+  }+  FL_EXPORT_C(void,Fl_Light_Button_clear_changed)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Light_Button_take_focus)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_visible_focus)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Light_Button_clear_visible_focus)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Light_Button_modify_visible_focus)(fl_Light_Button b,int v){+    (static_cast<Fl_Light_Button*>(b))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Light_Button_visible_focus)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Light_Button_do_callback)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Light_Button_do_callback_with_widget_and_user_data)(fl_Light_Button b,fl_Widget w,long arg){+    (static_cast<Fl_Light_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Light_Button_do_callback_with_widget_and_default_user_data)(fl_Light_Button b,fl_Widget w){+    (static_cast<Fl_Light_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Light_Button_contains)(fl_Light_Button b,fl_Widget w){+    return (static_cast<Fl_Light_Button*>(b))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Light_Button_inside)(fl_Light_Button b,fl_Widget w){+    return (static_cast<Fl_Light_Button*>(b))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Light_Button_redraw)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->redraw();+  }+  FL_EXPORT_C(void,Fl_Light_Button_redraw_label)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Light_Button_damage)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->damage();+  }+  FL_EXPORT_C(void,Fl_Light_Button_clear_damage_with_bitmask)(fl_Light_Button b,uchar c){+    (static_cast<Fl_Light_Button*>(b))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Light_Button_clear_damage)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Light_Button_damage_with_text)(fl_Light_Button b,uchar c){+    (static_cast<Fl_Light_Button*>(b))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Light_Button_damage_inside_widget)(fl_Light_Button b,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Light_Button*>(b))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Light_Button_draw_label_with_xywh_alignment)(fl_Light_Button b,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Light_Button*>(b))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Light_Button_measure_label)(fl_Light_Button b,int* ww,int* hh){+    (static_cast<Fl_Light_Button*>(b))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Light_Button_window)(fl_Light_Button light_button){+    return (fl_Window) (static_cast<Fl_Light_Button*>(light_button))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Light_Button_top_window)(fl_Light_Button light_button){+    return (fl_Window) (static_cast<Fl_Light_Button*>(light_button))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Light_Button_top_window_offset)(fl_Light_Button light_button, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Light_Button*>(light_button))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Light_Button_as_group)(fl_Light_Button light_button){+    return (fl_Group) (static_cast<Fl_Light_Button*>(light_button))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Light_Button_as_gl_window)(fl_Light_Button light_button){+    return (fl_Gl_Window) (static_cast<Fl_Light_Button*>(light_button))->as_gl_window();+  }+  FL_EXPORT_C(fl_Light_Button, Fl_Light_Button_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Light_Button* button = new Fl_Light_Button(x,y,w,h,label);+    return (static_cast<fl_Light_Button>(button));+  }+  FL_EXPORT_C(fl_Light_Button, Fl_Light_Button_New)(int x, int y, int w, int h) {+    Fl_Light_Button* button = new Fl_Light_Button(x,y,w,h,0);+    return (fl_Light_Button)button;+  }+  FL_EXPORT_C(void,Fl_Light_Button_Destroy)(fl_Light_Button button){+    delete (static_cast<Fl_Light_Button*>(button));+  }+  FL_EXPORT_C(int,Fl_Light_Button_set_value)(fl_Light_Button b,int v){+    return (static_cast<Fl_Light_Button*>(b))->value(v);+  }+  FL_EXPORT_C(char,Fl_Light_Button_value)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->value();+  }+  FL_EXPORT_C(int,Fl_Light_Button_clear)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->clear();+  }+  FL_EXPORT_C(void,Fl_Light_Button_setonly)(fl_Light_Button b){+    (static_cast<Fl_Light_Button*>(b))->setonly();+  }+  FL_EXPORT_C(int,Fl_Light_Button_get_shortcut)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_shortcut)(fl_Light_Button b,int s){+    (static_cast<Fl_Light_Button*>(b))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Light_Button_down_box)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->down_box();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_down_box)(fl_Light_Button b,Fl_Boxtype boxtype){+    (static_cast<Fl_Light_Button*>(b))->down_box(boxtype);+  }+  FL_EXPORT_C(Fl_Color,Fl_Light_Button_down_color)(fl_Light_Button b){+    return (static_cast<Fl_Light_Button*>(b))->down_color();+  }+  FL_EXPORT_C(void,Fl_Light_Button_set_down_color)(fl_Light_Button b,Fl_Color c){+    (static_cast<Fl_Light_Button*>(b))->down_color(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Light_ButtonC.h view
@@ -0,0 +1,115 @@+#ifndef __FL_LIGHT_BUTTON_C__+#define __FL_LIGHT_BUTTON_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Light_Button.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Light_Button_handle)(fl_Light_Button self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Light_Button_parent)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_parent)(fl_Light_Button light_button, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Light_Button_type)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_type)(fl_Light_Button light_button, uchar t);++  FL_EXPORT_C(int,          Fl_Light_Button_x)(fl_Light_Button light_button);+  FL_EXPORT_C(int,          Fl_Light_Button_y)(fl_Light_Button light_button);+  FL_EXPORT_C(int,          Fl_Light_Button_w)(fl_Light_Button light_button);+  FL_EXPORT_C(int,          Fl_Light_Button_h)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_align)(fl_Light_Button light_button, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Light_Button_align)(fl_Light_Button light_button);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Light_Button_box)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_box)(fl_Light_Button light_button, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Light_Button_color)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_color)(fl_Light_Button light_button, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Light_Button_set_color_with_bg_sel)(fl_Light_Button light_button,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Light_Button_selection_color)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_selection_color)(fl_Light_Button light_button, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Light_Button_label)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_copy_label)(fl_Light_Button light_button, const char* new_label);+  FL_EXPORT_C(void,         Fl_Light_Button_set_label)(fl_Light_Button light_button, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Light_Button_labeltype)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_labeltype)(fl_Light_Button light_button, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Light_Button_labelcolor)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_labelcolor)(fl_Light_Button light_button, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Light_Button_labelfont)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_labelfont)(fl_Light_Button light_button, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Light_Button_labelsize)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_labelsize)(fl_Light_Button light_button, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Light_Button_image)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_image)(fl_Light_Button light_button, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Light_Button_deimage)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_deimage)(fl_Light_Button light_button, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Light_Button_tooltip)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_copy_tooltip)(fl_Light_Button light_button, const char* text);+  FL_EXPORT_C(void,         Fl_Light_Button_set_tooltip)(fl_Light_Button light_button, const char* text);+  FL_EXPORT_C(void,         Fl_Light_Button_set_callback_with_user_data)(fl_Light_Button light_button, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Light_Button_set_callback)(fl_Light_Button light_button, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Light_Button_user_data)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_user_data)(fl_Light_Button light_button, void* v);+  FL_EXPORT_C(long,         Fl_Light_Button_argument)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_argument)(fl_Light_Button light_button, long v);+  FL_EXPORT_C(Fl_When,      Fl_Light_Button_when)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_when)(fl_Light_Button light_button, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Light_Button_visible)(fl_Light_Button light_button);+  FL_EXPORT_C(int,          Fl_Light_Button_visible_r)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_visible)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_clear_visible)(fl_Light_Button light_button);+  FL_EXPORT_C(unsigned int, Fl_Light_Button_active)(fl_Light_Button light_button);+  FL_EXPORT_C(int,          Fl_Light_Button_active_r)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_activate)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_deactivate)(fl_Light_Button light_button);+  FL_EXPORT_C(unsigned int, Fl_Light_Button_output)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_output)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_clear_output)(fl_Light_Button light_button);+  FL_EXPORT_C(unsigned int, Fl_Light_Button_takesevents)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_changed)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_clear_changed)(fl_Light_Button light_button);+  FL_EXPORT_C(int,          Fl_Light_Button_take_focus)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_set_visible_focus)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_clear_visible_focus)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_modify_visible_focus)(fl_Light_Button light_button, int v);+  FL_EXPORT_C(unsigned int, Fl_Light_Button_visible_focus)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_do_callback)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_do_callback_with_widget_and_user_data)(fl_Light_Button light_button, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Light_Button_do_callback_with_widget_and_default_user_data)(fl_Light_Button light_button, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Light_Button_contains)(fl_Light_Button light_button, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Light_Button_inside)(fl_Light_Button light_button, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Light_Button_redraw)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_redraw_label)(fl_Light_Button light_button);+  FL_EXPORT_C(uchar,        Fl_Light_Button_damage)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_clear_damage_with_bitmask)(fl_Light_Button light_button, uchar c);+  FL_EXPORT_C(void,         Fl_Light_Button_clear_damage)(fl_Light_Button light_button);+  FL_EXPORT_C(void,         Fl_Light_Button_damage_with_text)(fl_Light_Button light_button, uchar c);+  FL_EXPORT_C(void,         Fl_Light_Button_damage_inside_widget)(fl_Light_Button light_button, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Light_Button_draw_label_with_xywh_alignment)(fl_Light_Button light_button, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Light_Button_measure_label)(fl_Light_Button light_button, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Light_Button_window)(fl_Light_Button light_button);+  FL_EXPORT_C(fl_Window,    Fl_Light_Button_top_window)(fl_Light_Button light_button);+  FL_EXPORT_C(fl_Window ,   Fl_Light_Button_top_window_offset)(fl_Light_Button light_button, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Light_Button_as_group)(fl_Light_Button light_button);+  FL_EXPORT_C(fl_Gl_Window, Fl_Light_Button_as_gl_window)(fl_Light_Button light_button);+  /* Fl_Light_Button specific functions */+  FL_EXPORT_C(fl_Light_Button,    Fl_Light_Button_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Light_Button,    Fl_Light_Button_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,Fl_Light_Button_Destroy)(fl_Light_Button button);+  FL_EXPORT_C(char        , Fl_Light_Button_value)(fl_Light_Button b);+  FL_EXPORT_C(int         , Fl_Light_Button_set_value)(fl_Light_Button b, int v);+  FL_EXPORT_C(int         , Fl_Light_Button_set)(fl_Light_Button b);+  FL_EXPORT_C(int         , Fl_Light_Button_clear)(fl_Light_Button b);+  FL_EXPORT_C(void        , Fl_Light_Button_setonly)(fl_Light_Button b);+  FL_EXPORT_C(int         , Fl_Light_Button_get_shortcut )(fl_Light_Button b);+  FL_EXPORT_C(void        , Fl_Light_Button_set_shortcut )(fl_Light_Button b, int s);+  FL_EXPORT_C(Fl_Boxtype  , Fl_Light_Button_down_box)(fl_Light_Button b);+  FL_EXPORT_C(void        , Fl_Light_Button_set_down_box)(fl_Light_Button b,Fl_Boxtype boxtype);+  FL_EXPORT_C(Fl_Color    , Fl_Light_Button_down_color )(fl_Light_Button b);+  FL_EXPORT_C(void        , Fl_Light_Button_set_down_color)(fl_Light_Button b, Fl_Color c);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_LIGHT_BUTTON_C__*/
+ c-src/Fl_Menu_ButtonC.cpp view
@@ -0,0 +1,440 @@+#include "Fl_Menu_ButtonC.h"+#include "Utils.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Menu_Button_handle )(fl_Menu_Button menu_button, int event){+    return (static_cast<Fl_Menu_Button*>(menu_button))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_resize )(fl_Menu_Button menu_button,int x, int y, int w, int h){+    (static_cast<Fl_Menu_Button*>(menu_button))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_show )(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->show();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_hide )(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Menu_Button_as_window )(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->as_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Menu_Button_as_gl_window )(fl_Menu_Button menu_button){+    return (fl_Gl_Window) (static_cast<Fl_Menu_Button*>(menu_button))->as_gl_window();+  }+  FL_EXPORT_C(fl_Group,Fl_Menu_Button_parent)(fl_Menu_Button menu_button){+    return (fl_Group) (static_cast<Fl_Menu_Button*>(menu_button))->parent();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_parent)(fl_Menu_Button menu_button,fl_Group grp){+    (static_cast<Fl_Menu_Button*>(menu_button))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Menu_Button_type)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->type();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_type)(fl_Menu_Button menu_button,uchar t){+    (static_cast<Fl_Menu_Button*>(menu_button))->type(t);+  }++  FL_EXPORT_C(int,Fl_Menu_Button_x)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->x();+  }+  FL_EXPORT_C(int,Fl_Menu_Button_y)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->y();+  }+  FL_EXPORT_C(int,Fl_Menu_Button_w)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->w();+  }+  FL_EXPORT_C(int,Fl_Menu_Button_h)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->h();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_align)(fl_Menu_Button menu_button, Fl_Align alignment){+    (static_cast<Fl_Menu_Button*>(menu_button))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Menu_Button_align)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Menu_Button_box)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->box();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_box)(fl_Menu_Button menu_button,Fl_Boxtype new_box){+    (static_cast<Fl_Menu_Button*>(menu_button))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Menu_Button_color)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->color();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_color)(fl_Menu_Button menu_button,Fl_Color bg){+    (static_cast<Fl_Menu_Button*>(menu_button))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_color_with_bg_sel)(fl_Menu_Button menu_button,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Menu_Button*>(menu_button))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Menu_Button_selection_color)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_selection_color)(fl_Menu_Button menu_button,Fl_Color a){+    (static_cast<Fl_Menu_Button*>(menu_button))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Menu_Button_label)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->label();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_copy_label)(fl_Menu_Button menu_button,const char* new_label){+    (static_cast<Fl_Menu_Button*>(menu_button))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_label)(fl_Menu_Button menu_button,const char* text){+    (static_cast<Fl_Menu_Button*>(menu_button))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Menu_Button_labeltype)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_labeltype)(fl_Menu_Button menu_button,Fl_Labeltype a){+    (static_cast<Fl_Menu_Button*>(menu_button))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_labelcolor)(fl_Menu_Button menu_button,Fl_Color c){+    (static_cast<Fl_Menu_Button*>(menu_button))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Menu_Button_labelcolor)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Menu_Button_labelfont)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_labelfont)(fl_Menu_Button menu_button,Fl_Font c){+    (static_cast<Fl_Menu_Button*>(menu_button))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Menu_Button_labelsize)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_labelsize)(fl_Menu_Button menu_button,Fl_Fontsize pix){+    (static_cast<Fl_Menu_Button*>(menu_button))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Menu_Button_image)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->image();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_image)(fl_Menu_Button menu_button,fl_Image pix){+    (static_cast<Fl_Menu_Button*>(menu_button))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Menu_Button_deimage)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->deimage();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_deimage)(fl_Menu_Button menu_button,fl_Image pix){+    (static_cast<Fl_Menu_Button*>(menu_button))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Menu_Button_tooltip)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_copy_tooltip)(fl_Menu_Button menu_button,const char* text){+    (static_cast<Fl_Menu_Button*>(menu_button))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_tooltip)(fl_Menu_Button menu_button,const char* text){+    (static_cast<Fl_Menu_Button*>(menu_button))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_callback_with_user_data)(fl_Menu_Button menu_button,fl_Callback cb,void* p){+    Fl_Menu_* castedMenu_ = (static_cast<Fl_Menu_Button*>(menu_button));+    new C_to_Fl_Callback(castedMenu_, cb, p);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_callback)(fl_Menu_Button menu_button,fl_Callback cb){+    Fl_Menu_* castedMenu_ = (static_cast<Fl_Menu_Button*>(menu_button));+    new C_to_Fl_Callback(castedMenu_, cb);+  }+  FL_EXPORT_C(void*,Fl_Menu_Button_user_data)(fl_Menu_Button menu_button){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Menu_Button*>(menu_button))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Menu_Button*>(menu_button))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_user_data)(fl_Menu_Button menu_button,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Menu_Item*>(menu_button))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Menu_Button*>(menu_button))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Menu_Button*>(menu_button))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Menu_Button_argument)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->argument();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_argument)(fl_Menu_Button menu_button,long v){+    (static_cast<Fl_Menu_Button*>(menu_button))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Menu_Button_when)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->when();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_when)(fl_Menu_Button menu_button,uchar i){+    (static_cast<Fl_Menu_Button*>(menu_button))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Menu_Button_visible)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->visible();+  }+  FL_EXPORT_C(int,Fl_Menu_Button_visible_r)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_visible)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->visible();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_clear_visible)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Menu_Button_active)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->active();+  }+  FL_EXPORT_C(int,Fl_Menu_Button_active_r)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->active_r();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_activate)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->activate();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_deactivate)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Menu_Button_output)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->output();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_output)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->output();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_clear_output)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Menu_Button_takesevents)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_changed)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->changed();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_clear_changed)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Menu_Button_take_focus)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_visible_focus)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_clear_visible_focus)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_modify_visible_focus)(fl_Menu_Button menu_button,int v){+    (static_cast<Fl_Menu_Button*>(menu_button))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Menu_Button_visible_focus)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_do_callback)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_do_callback_with_widget_and_user_data)(fl_Menu_Button menu_button,fl_Widget w,long arg){+    (static_cast<Fl_Menu_Button*>(menu_button))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_do_callback_with_widget_and_default_user_data)(fl_Menu_Button menu_button,fl_Widget w){+    (static_cast<Fl_Menu_Button*>(menu_button))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Menu_Button_contains)(fl_Menu_Button menu_button,fl_Widget w){+    return (static_cast<Fl_Menu_Button*>(menu_button))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Menu_Button_inside)(fl_Menu_Button menu_button,fl_Widget w){+    return (static_cast<Fl_Menu_Button*>(menu_button))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Menu_Button_redraw)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->redraw();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_redraw_label)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Menu_Button_damage)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->damage();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_clear_damage_with_bitmask)(fl_Menu_Button menu_button,uchar c){+    (static_cast<Fl_Menu_Button*>(menu_button))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_clear_damage)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_damage_with_text)(fl_Menu_Button menu_button,uchar c){+    (static_cast<Fl_Menu_Button*>(menu_button))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_damage_inside_widget)(fl_Menu_Button menu_button,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Menu_Button*>(menu_button))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_draw_label_with_xywh_alignment)(fl_Menu_Button menu_button,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Menu_Button*>(menu_button))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_measure_label)(fl_Menu_Button menu_button,int* ww,int* hh){+    (static_cast<Fl_Menu_Button*>(menu_button))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Menu_Button, Fl_Menu_Button_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Menu_Button* menu_button = new Fl_Menu_Button(x,y,w,h,label);+    return (static_cast<fl_Menu_Button>(menu_button));+  }+  FL_EXPORT_C(fl_Menu_Button, Fl_Menu_Button_New)(int x, int y, int w, int h) {+    Fl_Menu_Button* menu_button = new Fl_Menu_Button(x,y,w,h,0);+    return (fl_Menu_Button)menu_button;+  }+  FL_EXPORT_C(void   , Fl_Menu_Button_Destroy)(fl_Menu_Button menu_button){+    delete (static_cast<Fl_Menu_Button*>(menu_button));+  }+  FL_EXPORT_C(int,Fl_Menu_Button_item_pathname_with_finditem)(fl_Menu_Button menu_button,char* name,int namelen,fl_Menu_Item finditem){+    return (static_cast<Fl_Menu_Button*>(menu_button))->item_pathname(name,namelen,(static_cast<Fl_Menu_Item*>(finditem)));+  }+  FL_EXPORT_C(int,Fl_Menu_Button_item_pathname)(fl_Menu_Button menu_button,char* name,int namelen){+    return (static_cast<Fl_Menu_Button*>(menu_button))->item_pathname(name,namelen);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Button_picked)(fl_Menu_Button menu_button,fl_Menu_Item item){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Button*>(menu_button))->picked((static_cast<Fl_Menu_Item*>(item)));+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Button_find_item_with_name)(fl_Menu_Button menu_button,char* name){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Button*>(menu_button))->find_item(name);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_find_index_with_name)(fl_Menu_Button menu_button,char* name){+    return (static_cast<Fl_Menu_Button*>(menu_button))->find_index(name);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_find_index_with_item)(fl_Menu_Button menu_button,fl_Menu_Item item){+    return (static_cast<Fl_Menu_Button*>(menu_button))->find_index((static_cast<Fl_Menu_Item*>(item)));+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Button_test_shortcut)(fl_Menu_Button menu_button){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Button*>(menu_button))->test_shortcut();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_global)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->global();+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Button_menu)(fl_Menu_Button menu_button){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Button*>(menu_button))->menu();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_menu_with_m)(fl_Menu_Button menu_button,fl_Menu_Item* item, int size){+    Fl_Menu_Item* converted = convert(item,size);+    return (static_cast<Fl_Menu_Button*>(menu_button))->menu(converted);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_copy)(fl_Menu_Button menu_button,fl_Menu_Item m){+    return (static_cast<Fl_Menu_Button*>(menu_button))->copy((static_cast<Fl_Menu_Item*>(m)));+  }+  FL_EXPORT_C(void,Fl_Menu_Button_copy_with_user_data)(fl_Menu_Button menu_button,fl_Menu_Item m,void* user_data){+    return (static_cast<Fl_Menu_Button*>(menu_button))->copy((static_cast<Fl_Menu_Item*>(m)),user_data);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_insert)(fl_Menu_Button menu_button,int index,char* name,int shortcut,fl_Callback* cb){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_insert((static_cast<Fl_Menu_Button*>(menu_button)),index,name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_insert_with_flags)(fl_Menu_Button menu_button,int index,char* name,int shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_insert((static_cast<Fl_Menu_Button*>(menu_button)),index,name,shortcut, flags);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_insert_with_user_data_flags)(fl_Menu_Button menu_button,int index,char* name,int shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_insert((static_cast<Fl_Menu_Button*>(menu_button)),index,name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_add)(fl_Menu_Button menu_button,char* name,int shortcut,fl_Callback* cb){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Button*>(menu_button)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_add_with_user_data)(fl_Menu_Button menu_button,char* name,int shortcut,fl_Callback* cb,void* user_data){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Button*>(menu_button)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_add_with_flags)(fl_Menu_Button menu_button,char* name,int shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Button*>(menu_button)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_add_with_user_data_flags)(fl_Menu_Button menu_button,char* name,int shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Button*>(menu_button)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_add_with_shortcutname)(fl_Menu_Button menu_button,char* name,char* shortcut,fl_Callback* cb){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Button*>(menu_button)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_add_with_shortcutname_user_data)(fl_Menu_Button menu_button,char* name,char* shortcut,fl_Callback* cb,void* user_data){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Button*>(menu_button)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_add_with_shortcutname_flags)(fl_Menu_Button menu_button,char* name,char* shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Button*>(menu_button)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_add_with_shortcutname_user_data_flags)(fl_Menu_Button menu_button,char* name,char* shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Button*>(menu_button)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_size)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->size();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_size)(fl_Menu_Button menu_button,int W,int H){+    (static_cast<Fl_Menu_Button*>(menu_button))->size(W,H);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_clear)(fl_Menu_Button menu_button){+    (static_cast<Fl_Menu_Button*>(menu_button))->clear();+  }+  FL_EXPORT_C(int,Fl_Menu_Button_clear_submenu)(fl_Menu_Button menu_button,int index){+    return (static_cast<Fl_Menu_Button*>(menu_button))->clear_submenu(index);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_replace)(fl_Menu_Button menu_button,int i,char* name){+    (static_cast<Fl_Menu_Button*>(menu_button))->replace(i,name);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_remove)(fl_Menu_Button menu_button,int i ){+    (static_cast<Fl_Menu_Button*>(menu_button))->remove(i);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_shortcut)(fl_Menu_Button menu_button,int i,int s){+    (static_cast<Fl_Menu_Button*>(menu_button))->shortcut(i,s);+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_mode)(fl_Menu_Button menu_button,int i,int fl){+    (static_cast<Fl_Menu_Button*>(menu_button))->mode(i,fl);+  }+  FL_EXPORT_C(int,Fl_Menu_Button_mode)(fl_Menu_Button menu_button,int i){+    return (static_cast<Fl_Menu_Button*>(menu_button))->mode(i);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Button_mvalue)(fl_Menu_Button menu_button){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Button*>(menu_button))->mvalue();+  }+  FL_EXPORT_C(int,Fl_Menu_Button_value)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->value();+  }+  FL_EXPORT_C(int,Fl_Menu_Button_value_with_item)(fl_Menu_Button menu_button,fl_Menu_Item item){+    return (static_cast<Fl_Menu_Button*>(menu_button))->value(static_cast<Fl_Menu_Item*>(item));+  }+  FL_EXPORT_C(int,Fl_Menu_Button_value_with_index)(fl_Menu_Button menu_button,int index){+    return (static_cast<Fl_Menu_Button*>(menu_button))->value(index);+  }+  FL_EXPORT_C(char*,Fl_Menu_Button_text)(fl_Menu_Button menu_button){+    return (char*)(static_cast<Fl_Menu_Button*>(menu_button))->text();+  }+  FL_EXPORT_C(char*,Fl_Menu_Button_text_with_index)(fl_Menu_Button menu_button,int i){+    return (char*)(static_cast<Fl_Menu_Button*>(menu_button))->text(i);+  }+  FL_EXPORT_C(Fl_Font,Fl_Menu_Button_textfont)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->textfont();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_textfont)(fl_Menu_Button menu_button,Fl_Font c){+    (static_cast<Fl_Menu_Button*>(menu_button))->textfont(c);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Menu_Button_textsize)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->textsize();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_textsize)(fl_Menu_Button menu_button,Fl_Fontsize c){+    (static_cast<Fl_Menu_Button*>(menu_button))->textsize(c);+  }+  FL_EXPORT_C(Fl_Color,Fl_Menu_Button_textcolor)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_textcolor)(fl_Menu_Button menu_button,Fl_Color c){+    (static_cast<Fl_Menu_Button*>(menu_button))->textcolor(c);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Menu_Button_down_box)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->down_box();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_down_box)(fl_Menu_Button menu_button,Fl_Boxtype b){+    (static_cast<Fl_Menu_Button*>(menu_button))->down_box(b);+  }+  FL_EXPORT_C(Fl_Color,Fl_Menu_Button_down_color)(fl_Menu_Button menu_button){+    return (static_cast<Fl_Menu_Button*>(menu_button))->down_color();+  }+  FL_EXPORT_C(void,Fl_Menu_Button_set_down_color)(fl_Menu_Button menu_button,unsigned c){+    (static_cast<Fl_Menu_Button*>(menu_button))->down_color(c);+  }+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Button_popup)(fl_Menu_Button menu_button) {+    return (fl_Menu_Item)(static_cast<Fl_Menu_Button*>(menu_button))->popup();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Menu_ButtonC.h view
@@ -0,0 +1,165 @@+#ifndef __FL_MENU_BUTTON_C__+#define __FL_MENU_BUTTON_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Menu_Button.H"+#include "Fl_CallbackC.h"+#include "Fl_Menu_C.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,          Fl_Menu_Button_handle)(fl_Group self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Menu_Button_parent)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_parent)(fl_Menu_Button menu_button, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Menu_Button_type)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_type)(fl_Menu_Button menu_button, uchar t);++  FL_EXPORT_C(int,          Fl_Menu_Button_x)(fl_Menu_Button menu_button);+  FL_EXPORT_C(int,          Fl_Menu_Button_y)(fl_Menu_Button menu_button);+  FL_EXPORT_C(int,          Fl_Menu_Button_w)(fl_Menu_Button menu_button);+  FL_EXPORT_C(int,          Fl_Menu_Button_h)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_align)(fl_Menu_Button menu_button, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Menu_Button_align)(fl_Menu_Button menu_button);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Menu_Button_box)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_box)(fl_Menu_Button menu_button, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Menu_Button_color)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_color)(fl_Menu_Button menu_button, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_color_with_bg_sel)(fl_Menu_Button menu_button,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Menu_Button_selection_color)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_selection_color)(fl_Menu_Button menu_button, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Menu_Button_label)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_copy_label)(fl_Menu_Button menu_button, const char* new_label);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_label)(fl_Menu_Button menu_button, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Menu_Button_labeltype)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_labeltype)(fl_Menu_Button menu_button, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Menu_Button_labelcolor)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_labelcolor)(fl_Menu_Button menu_button, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Menu_Button_item_labelfont)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_item_labelfont)(fl_Menu_Button menu_button, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Menu_Button_item_labelsize)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_item_labelsize)(fl_Menu_Button menu_button, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Menu_Button_image)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_image)(fl_Menu_Button menu_button, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Menu_Button_deimage)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_deimage)(fl_Menu_Button menu_button, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Menu_Button_tooltip)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_copy_tooltip)(fl_Menu_Button menu_button, const char* text);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_tooltip)(fl_Menu_Button menu_button, const char* text);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_callback_with_user_data)(fl_Menu_Button menu_button, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_callback)(fl_Menu_Button menu_button, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Menu_Button_other_data)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_other_data)(fl_Menu_Button menu_button, void* v);+  FL_EXPORT_C(void*,        Fl_Menu_Button_user_data)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_user_data)(fl_Menu_Button menu_button, void* v);+  FL_EXPORT_C(long,         Fl_Menu_Button_argument)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_argument)(fl_Menu_Button menu_button, long v);+  FL_EXPORT_C(Fl_When,      Fl_Menu_Button_when)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_when)(fl_Menu_Button menu_button, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Menu_Button_visible)(fl_Menu_Button menu_button);+  FL_EXPORT_C(int,          Fl_Menu_Button_visible_r)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_show)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_hide)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_visible)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_clear_visible)(fl_Menu_Button menu_button);+  FL_EXPORT_C(unsigned int, Fl_Menu_Button_active)(fl_Menu_Button menu_button);+  FL_EXPORT_C(int,          Fl_Menu_Button_active_r)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_activate)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_deactivate)(fl_Menu_Button menu_button);+  FL_EXPORT_C(unsigned int, Fl_Menu_Button_output)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_output)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_clear_output)(fl_Menu_Button menu_button);+  FL_EXPORT_C(unsigned int, Fl_Menu_Button_takesevents)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_changed)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_clear_changed)(fl_Menu_Button menu_button);+  FL_EXPORT_C(int,          Fl_Menu_Button_take_focus)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_set_visible_focus)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_clear_visible_focus)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_modify_visible_focus)(fl_Menu_Button menu_button, int v);+  FL_EXPORT_C(unsigned int, Fl_Menu_Button_visible_focus)(fl_Menu_Button menu_button);+  FL_EXPORT_C(int,          Fl_Menu_Button_contains)(fl_Menu_Button menu_button, fl_Group w);+  FL_EXPORT_C(int,          Fl_Menu_Button_inside)(fl_Menu_Button menu_button, fl_Group w);+  FL_EXPORT_C(void,         Fl_Menu_Button_redraw)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_redraw_label)(fl_Menu_Button menu_button);+  FL_EXPORT_C(uchar,        Fl_Menu_Button_damage)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_clear_damage_with_bitmask)(fl_Menu_Button menu_button, uchar c);+  FL_EXPORT_C(void,         Fl_Menu_Button_clear_damage)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_damage_with_text)(fl_Menu_Button menu_button, uchar c);+  FL_EXPORT_C(void,         Fl_Menu_Button_damage_inside_group)(fl_Menu_Button menu_button, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Menu_Button_draw_label_with_xywh_alignment)(fl_Menu_Button menu_button, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Menu_Button_measure_label)(fl_Menu_Button menu_button, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Menu_Button_window)(fl_Menu_Button menu_button);+  FL_EXPORT_C(fl_Window,    Fl_Menu_Button_top_window)(fl_Menu_Button menu_button);+  FL_EXPORT_C(fl_Window ,   Fl_Menu_Button_top_window_offset)(fl_Menu_Button menu_button, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Menu_Button_as_group)(fl_Menu_Button menu_button);+  FL_EXPORT_C(fl_Gl_Window, Fl_Menu_Button_as_gl_window)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void,         Fl_Menu_Button_resize)(fl_Menu_Button menu_button,int X, int Y, int W, int H);++  /* Fl_Menu_Button specific */+  FL_EXPORT_C(fl_Menu_Button,    Fl_Menu_Button_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Menu_Button, Fl_Menu_Button_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void, Fl_Menu_Button_Destroy)(fl_Menu_Button menu_button);++  FL_EXPORT_C(int, Fl_Menu_Button_item_pathname_with_finditem)(fl_Menu_Button menu_button, char* name, int namelen,  fl_Menu_Item finditem);+  FL_EXPORT_C(int, Fl_Menu_Button_item_pathname)(fl_Menu_Button menu_button, char* name, int namelen);+  FL_EXPORT_C( fl_Menu_Item, Fl_Menu_Button_picked)(fl_Menu_Button menu_button,  const fl_Menu_Item item);+  FL_EXPORT_C( fl_Menu_Item, Fl_Menu_Button_find_item_with_name)(fl_Menu_Button menu_button,  char* name);+  //  FL_EXPORT_C( fl_Menu_Item, Fl_Menu_Button_find_item_with_cb)(fl_Menu_Button menu_button, fl_Callback cb); Don't know how to do this+  FL_EXPORT_C(int, Fl_Menu_Button_find_index_with_name)(fl_Menu_Button menu_button,  char* name);+  FL_EXPORT_C(int, Fl_Menu_Button_find_index_with_item)(fl_Menu_Button menu_button,  fl_Menu_Item item);+  //  FL_EXPORT_C(int, Fl_Menu_Button_find_index_with_cb)(fl_Menu_Button menu_button, fl_Callback cb); Don't know how to do this+  FL_EXPORT_C( fl_Menu_Item, Fl_Menu_Button_test_shortcut)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void, Fl_Menu_Button_global)(fl_Menu_Button menu_button);+  FL_EXPORT_C( fl_Menu_Item, Fl_Menu_Button_menu)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void, Fl_Menu_Button_menu_with_m)(fl_Menu_Button menu_button,  fl_Menu_Item* items, int size);+  FL_EXPORT_C(void, Fl_Menu_Button_copy)(fl_Menu_Button menu_button,  fl_Menu_Item m);+  FL_EXPORT_C(void, Fl_Menu_Button_copy_with_user_data)(fl_Menu_Button menu_button,  fl_Menu_Item m, void* user_data);+  FL_EXPORT_C(int, Fl_Menu_Button_insert)(fl_Menu_Button menu_button, int index,  char* name, int shortcut, fl_Callback cb);+  FL_EXPORT_C(int, Fl_Menu_Button_insert_with_user_data)(fl_Menu_Button menu_button, int index,  char*, int shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Menu_Button_insert_with_flags)(fl_Menu_Button menu_button, int index,  char* name, int shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Menu_Button_insert_with_user_data_flags)(fl_Menu_Button menu_button, int index,  char* name, int shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Menu_Button_insert_with_shortcutname)(fl_Menu_Button menu_button, int index,  char* name, char* shortcut);+  FL_EXPORT_C(int, Fl_Menu_Button_insert_with_shortcutname_user_data)(fl_Menu_Button menu_button, int index,  char* name,   char* shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Menu_Button_insert_with_shortcutname_flags)(fl_Menu_Button menu_button, int index,  char* name,   char* shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Menu_Button_insert_with_shortcutname_user_data_flags)(fl_Menu_Button menu_button, int index,  char* name,   char* shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Menu_Button_add)(fl_Menu_Button menu_button, char* name, int shortcut, fl_Callback);+  FL_EXPORT_C(int, Fl_Menu_Button_add_with_user_data)(fl_Menu_Button menu_button, char* name, int shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Menu_Button_add_with_flags)(fl_Menu_Button menu_button, char* name, int shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Menu_Button_add_with_user_data_flags)(fl_Menu_Button menu_button, char* name, int shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Menu_Button_add_with_shortcutname)(fl_Menu_Button menu_button, char* name,   char* shortcut, fl_Callback* cb);+  FL_EXPORT_C(int, Fl_Menu_Button_add_with_shortcutname_user_data)(fl_Menu_Button menu_button, char* name,   char* shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Menu_Button_add_with_shortcutname_flags)(fl_Menu_Button menu_button, char* name,   char* shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Menu_Button_add_with_shortcutname_user_data_flags)(fl_Menu_Button menu_button, char* name,  char* shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Menu_Button_add_with_name)(fl_Menu_Button menu_button,  char* name);+  FL_EXPORT_C(int , Fl_Menu_Button_size)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void, Fl_Menu_Button_set_size)(fl_Menu_Button menu_button, int W, int H);+  FL_EXPORT_C(void, Fl_Menu_Button_clear)(fl_Menu_Button menu_button);+  FL_EXPORT_C(int, Fl_Menu_Button_clear_submenu)(fl_Menu_Button menu_button, int index);+  FL_EXPORT_C(void, Fl_Menu_Button_replace)(fl_Menu_Button menu_button, int, char* name);+  FL_EXPORT_C(void, Fl_Menu_Button_remove)(fl_Menu_Button menu_button, int);+  FL_EXPORT_C(void, Fl_Menu_Button_shortcut)(fl_Menu_Button menu_button, int i, int s);+  FL_EXPORT_C(void, Fl_Menu_Button_set_mode)(fl_Menu_Button menu_button, int i,int fl);+  FL_EXPORT_C(int , Fl_Menu_Button_mode)(fl_Menu_Button menu_button, int i);+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Button_mvalue)(fl_Menu_Button menu_button);+  FL_EXPORT_C(int, Fl_Menu_Button_value)(fl_Menu_Button menu_button);+  FL_EXPORT_C(int, Fl_Menu_Button_value_with_item)(fl_Menu_Button menu_button,  fl_Menu_Item item);+  FL_EXPORT_C(int, Fl_Menu_Button_value_with_index)(fl_Menu_Button menu_button, int index);+  FL_EXPORT_C(char*, Fl_Menu_Button_text)(fl_Menu_Button menu_button);+  FL_EXPORT_C(char*, Fl_Menu_Button_text_with_index)(fl_Menu_Button menu_button, int i);+  FL_EXPORT_C(Fl_Font, Fl_Menu_Button_textfont)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void, Fl_Menu_Button_set_textfont)(fl_Menu_Button menu_button, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize, Fl_Menu_Button_textsize)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void, Fl_Menu_Button_set_textsize)(fl_Menu_Button menu_button, Fl_Fontsize c);+  FL_EXPORT_C(Fl_Color, Fl_Menu_Button_textcolor)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void, Fl_Menu_Button_set_textcolor)(fl_Menu_Button menu_button, Fl_Color c);+  FL_EXPORT_C(Fl_Boxtype, Fl_Menu_Button_down_box)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void, Fl_Menu_Button_set_down_box)(fl_Menu_Button menu_button, Fl_Boxtype b);+  FL_EXPORT_C(Fl_Color, Fl_Menu_Button_down_color)(fl_Menu_Button menu_button);+  FL_EXPORT_C(void, Fl_Menu_Button_set_down_color)(fl_Menu_Button menu_button, unsigned c);+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Button_popup)(fl_Menu_Button menu_button);+#ifdef __cplusplus+}+#endif+#endif /* __FL_MENU_BUTTON_C__ */
+ c-src/Fl_Menu_C.cpp view
@@ -0,0 +1,613 @@+#include "Fl_Menu_C.h"+#include "Utils.h"+#ifdef __cplusplus+Fl_DerivedMenu_::Fl_DerivedMenu_(int X, int Y, int W, int H, const char *l, fl_Menu__Virtual_Funcs* funcs) : Fl_Menu_(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = 0;+ }+Fl_DerivedMenu_::Fl_DerivedMenu_(int X, int Y, int W, int H, fl_Menu__Virtual_Funcs* funcs):Fl_Menu_(X,Y,W,H,0){+    overriddenFuncs = funcs;+    other_data = 0;+  }+Fl_DerivedMenu_::~Fl_DerivedMenu_(){+  destroy_data();+  free(overriddenFuncs);+}+void* Fl_DerivedMenu_::get_other_data(){+  return this->other_data;+}+void Fl_DerivedMenu_::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedMenu_::destroy_data(){+  if (this->overriddenFuncs->destroy_data != NULL){+    this->overriddenFuncs->destroy_data((fl_Menu_) this);+  }+}+int Fl_DerivedMenu_::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Menu_) this,event);+  }+  else {+    i = Fl_Menu_::handle(event);+  }+  return i;+}+void Fl_DerivedMenu_::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Menu_) this,x,y,w,h);+  }+  else {+    Fl_Menu_::resize(x,y,w,h);+  }+}+void Fl_DerivedMenu_::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Menu_) this);+  }+  else {+    Fl_Menu_::show();+  }+}+void Fl_DerivedMenu_::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Menu_) this);+  }+  else {+    Fl_Menu_::hide();+  }+}+void Fl_DerivedMenu_::draw(){+  this->overriddenFuncs->draw((fl_Menu_) this);+}+void Fl_DerivedMenu_::draw_box(){+  Fl_Widget::draw_box();+}+Fl_Window* Fl_DerivedMenu_::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Menu_) this)));+  }+  else {+    win = Fl_Menu_::as_window();+  }+  return win;+}+Fl_Group* Fl_DerivedMenu_::as_group(){+  Fl_Group* win;+  if (this->overriddenFuncs->as_group != NULL) {+    win = (static_cast<Fl_Group*>(this->overriddenFuncs->as_group((fl_Menu_) this)));+  }+  else {+    win = Fl_Menu_::as_group();+  }+  return win;+}+Fl_Group* Fl_DerivedMenu_::as_group_super(){+  return Fl_Menu_::as_group();+}+Fl_Gl_Window* Fl_DerivedMenu_::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Menu_) this)));+  }+  else {+    win = Fl_Menu_::as_gl_window();+  }+  return win;+}+EXPORT {+#endif+  FL_EXPORT_C(fl_Menu__Virtual_Funcs*, Fl_Menu__default_virtual_funcs)(){+    fl_Menu__Virtual_Funcs* ptr = (fl_Menu__Virtual_Funcs*)malloc(sizeof(fl_Menu__Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->hide = NULL;+    ptr->as_window = NULL;+    ptr->as_gl_window = NULL;+    ptr->destroy_data = NULL;+    return ptr;+  }+  FL_EXPORT_C(int,Fl_Menu__handle_super )(fl_Menu_ menu_,int event){+    return (static_cast<Fl_Menu_*>(menu_))->handle(event);+  }+  FL_EXPORT_C(int,Fl_Menu__handle )(fl_Menu_ menu_, int event){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Menu__resize_super )(fl_Menu_ menu_,int x, int y, int w, int h){+    (static_cast<Fl_Menu_*>(menu_))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Menu__resize )(fl_Menu_ menu_,int x, int y, int w, int h){+    (static_cast<Fl_DerivedMenu_*>(menu_))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Menu__show_super)(fl_Menu_ menu_){+    (static_cast<Fl_Menu_*>(menu_))->show();+  }+  FL_EXPORT_C(void,Fl_Menu__show )(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->show();+  }+  FL_EXPORT_C(void,Fl_Menu__hide_super)(fl_Menu_ menu_){+    (static_cast<Fl_Menu_*>(menu_))->hide();+  }+  FL_EXPORT_C(void,Fl_Menu__hide )(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Menu__as_window_super)(fl_Menu_ menu_){+    return (fl_Window)(static_cast<Fl_Menu_*>(menu_))->as_window();+  }+  FL_EXPORT_C(fl_Window,Fl_Menu__as_window )(fl_Menu_ menu_){+    return (fl_Window)(static_cast<Fl_DerivedMenu_*>(menu_))->as_window();+  }+  FL_EXPORT_C(fl_Group,Fl_Menu__as_group_super)(fl_Menu_ menu_){+    return (fl_Group)(static_cast<Fl_DerivedMenu_*>(menu_))->as_group_super();+  }+  FL_EXPORT_C(fl_Group,Fl_Menu__as_group )(fl_Menu_ menu_){+    return (fl_Group)(static_cast<Fl_DerivedMenu_*>(menu_))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Menu__as_gl_window_super)(fl_Menu_ menu_){+    return (fl_Gl_Window) (static_cast<Fl_Menu_*>(menu_))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Menu__as_gl_window )(fl_Menu_ menu_){+    return (fl_Gl_Window) (static_cast<Fl_DerivedMenu_*>(menu_))->as_gl_window();+  };+  FL_EXPORT_C(fl_Group,Fl_Menu__parent)(fl_Menu_ menu_){+    return (fl_Group) (static_cast<Fl_DerivedMenu_*>(menu_))->parent();+  }+  FL_EXPORT_C(void,Fl_Menu__set_parent)(fl_Menu_ menu_,fl_Group grp){+    (static_cast<Fl_DerivedMenu_*>(menu_))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Menu__type)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->type();+  }+  FL_EXPORT_C(void,Fl_Menu__set_type)(fl_Menu_ menu_,uchar t){+    (static_cast<Fl_DerivedMenu_*>(menu_))->type(t);+  }++// FL_EXPORT_C(void, Fl_Menu__draw_box)(fl_Menu_ Menu_){+//  (static_cast<Fl_DerivedMenu_*>(Menu_))->draw_box();+// }+// FL_EXPORT_C(void, Fl_Menu__draw_box_with_tc)(fl_Menu_ Menu_,Fl_Boxtype t, Fl_Color c){+//  (static_cast<Fl_DerivedMenu_*>(Menu_))->draw_box(t,c);+// }+// FL_EXPORT_C(void, Fl_Menu__draw_box_with_txywhc)(fl_Menu_ Menu_,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+//  (static_cast<Fl_DerivedMenu_*>(Menu_))->draw_box(t,x,y,w,h,c);+// }+// FL_EXPORT_C(void, Fl_Menu__draw_backdrop)(fl_Menu_ Menu_){+//  (static_cast<Fl_DerivedMenu_*>(Menu_))->draw_backdrop();+// }+// FL_EXPORT_C(void, Fl_Menu__draw_focus)(fl_Menu_ Menu_){+//  (static_cast<Fl_DerivedMenu_*>(Menu_))->draw_focus();+// }+// FL_EXPORT_C(void, Fl_Menu__draw_focus_with_txywh)(fl_Menu_ Menu_,Fl_Boxtype t, int x,int y,int w,int h){+//  (static_cast<Fl_DerivedMenu_*>(Menu_))->draw_focus(t,x,y,w,h);+// }+// FL_EXPORT_C(void, Fl_Menu__draw_label)(fl_Menu_ Menu_){+//  (static_cast<Fl_DerivedMenu_*>(Menu_))->draw_label();+// }+  FL_EXPORT_C(int,Fl_Menu__x)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->x();+  }+  FL_EXPORT_C(int,Fl_Menu__y)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->y();+  }+  FL_EXPORT_C(int,Fl_Menu__w)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->w();+  }+  FL_EXPORT_C(int,Fl_Menu__h)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->h();+  }+  FL_EXPORT_C(void,Fl_Menu__set_align)(fl_Menu_ menu_, Fl_Align alignment){+    (static_cast<Fl_DerivedMenu_*>(menu_))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Menu__align)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Menu__box)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->box();+  }+  FL_EXPORT_C(void,Fl_Menu__set_box)(fl_Menu_ menu_,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedMenu_*>(menu_))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Menu__color)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->color();+  }+  FL_EXPORT_C(void,Fl_Menu__set_color)(fl_Menu_ menu_,Fl_Color bg){+    (static_cast<Fl_DerivedMenu_*>(menu_))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Menu__set_color_with_bg_sel)(fl_Menu_ menu_,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedMenu_*>(menu_))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Menu__selection_color)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Menu__set_selection_color)(fl_Menu_ menu_,Fl_Color a){+    (static_cast<Fl_DerivedMenu_*>(menu_))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Menu__label)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->label();+  }+  FL_EXPORT_C(void,Fl_Menu__copy_label)(fl_Menu_ menu_,const char* new_label){+    (static_cast<Fl_DerivedMenu_*>(menu_))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Menu__set_label)(fl_Menu_ menu_,const char* text){+    (static_cast<Fl_DerivedMenu_*>(menu_))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Menu__labeltype)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Menu__set_labeltype)(fl_Menu_ menu_,Fl_Labeltype a){+    (static_cast<Fl_DerivedMenu_*>(menu_))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Menu__set_labelcolor)(fl_Menu_ menu_,Fl_Color c){+    (static_cast<Fl_DerivedMenu_*>(menu_))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Menu__labelcolor)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Menu__labelfont)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Menu__set_labelfont)(fl_Menu_ menu_,Fl_Font c){+    (static_cast<Fl_DerivedMenu_*>(menu_))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Menu__labelsize)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Menu__set_labelsize)(fl_Menu_ menu_,Fl_Fontsize pix){+    (static_cast<Fl_DerivedMenu_*>(menu_))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Menu__image)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->image();+  }+  FL_EXPORT_C(void,Fl_Menu__set_image)(fl_Menu_ menu_,fl_Image pix){+    (static_cast<Fl_DerivedMenu_*>(menu_))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Menu__deimage)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->deimage();+  }+  FL_EXPORT_C(void,Fl_Menu__set_deimage)(fl_Menu_ menu_,fl_Image pix){+    (static_cast<Fl_DerivedMenu_*>(menu_))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Menu__tooltip)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Menu__copy_tooltip)(fl_Menu_ menu_,const char* text){+    (static_cast<Fl_DerivedMenu_*>(menu_))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Menu__set_tooltip)(fl_Menu_ menu_,const char* text){+    (static_cast<Fl_DerivedMenu_*>(menu_))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Menu__set_callback_with_user_data)(fl_Menu_ menu_,fl_Callback cb,void* p){+    Fl_Menu_* castedMenu_ = (static_cast<Fl_DerivedMenu_*>(menu_));+    new C_to_Fl_Callback(castedMenu_, cb, p);+  }+  FL_EXPORT_C(void,Fl_Menu__set_callback)(fl_Menu_ menu_,fl_Callback cb){+    Fl_Menu_* castedMenu_ = (static_cast<Fl_DerivedMenu_*>(menu_));+    new C_to_Fl_Callback(castedMenu_, cb);+  }+  FL_EXPORT_C(void*,Fl_Menu__user_data)(fl_Menu_ menu_){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedMenu_*>(menu_))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedMenu_*>(menu_))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Menu__set_user_data)(fl_Menu_ menu_,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Menu_*>(menu_))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Menu_*>(menu_))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Menu_*>(menu_))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Menu__argument)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->argument();+  }+  FL_EXPORT_C(void,Fl_Menu__set_argument)(fl_Menu_ menu_,long v){+    (static_cast<Fl_DerivedMenu_*>(menu_))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Menu__when)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->when();+  }+  FL_EXPORT_C(void,Fl_Menu__set_when)(fl_Menu_ menu_,uchar i){+    (static_cast<Fl_DerivedMenu_*>(menu_))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Menu__visible)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->visible();+  }+  FL_EXPORT_C(int,Fl_Menu__visible_r)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Menu__set_visible)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->visible();+  }+  FL_EXPORT_C(void,Fl_Menu__clear_visible)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Menu__active)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->active();+  }+  FL_EXPORT_C(int,Fl_Menu__active_r)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->active_r();+  }+  FL_EXPORT_C(void,Fl_Menu__activate)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->activate();+  }+  FL_EXPORT_C(void,Fl_Menu__deactivate)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Menu__output)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->output();+  }+  FL_EXPORT_C(void,Fl_Menu__set_output)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->output();+  }+  FL_EXPORT_C(void,Fl_Menu__clear_output)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Menu__takesevents)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Menu__set_changed)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->changed();+  }+  FL_EXPORT_C(void,Fl_Menu__clear_changed)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Menu__take_focus)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Menu__set_visible_focus)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Menu__clear_visible_focus)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Menu__modify_visible_focus)(fl_Menu_ menu_,int v){+    (static_cast<Fl_DerivedMenu_*>(menu_))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Menu__visible_focus)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Menu__do_callback)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Menu__do_callback_with_widget_and_user_data)(fl_Menu_ menu_,fl_Widget w,long arg){+    (static_cast<Fl_DerivedMenu_*>(menu_))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Menu__do_callback_with_widget_and_default_user_data)(fl_Menu_ menu_,fl_Widget w){+    (static_cast<Fl_DerivedMenu_*>(menu_))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Menu__contains)(fl_Menu_ menu_,fl_Widget w){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Menu__inside)(fl_Menu_ menu_,fl_Widget w){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Menu__redraw)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->redraw();+  }+  FL_EXPORT_C(void,Fl_Menu__redraw_label)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Menu__damage)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->damage();+  }+  FL_EXPORT_C(void,Fl_Menu__clear_damage_with_bitmask)(fl_Menu_ menu_,uchar c){+    (static_cast<Fl_DerivedMenu_*>(menu_))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Menu__clear_damage)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Menu__damage_with_text)(fl_Menu_ menu_,uchar c){+    (static_cast<Fl_DerivedMenu_*>(menu_))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Menu__damage_inside_widget)(fl_Menu_ menu_,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedMenu_*>(menu_))->damage(c,x,y,w,h);+  }+  // FL_EXPORT_C(void,Fl_Menu__draw_label_with_xywh_alignment)(fl_Menu_ menu_,int x,int y,int w,int h,Fl_Align alignment){+  //   (static_cast<Fl_DerivedMenu_*>(menu_))->draw_label(x,y,w,h,alignment);+  // }+  FL_EXPORT_C(void,Fl_Menu__measure_label)(fl_Menu_ menu_,int* ww,int* hh){+    (static_cast<Fl_DerivedMenu_*>(menu_))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(void*, Fl_Menu__other_data)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->get_other_data();+  }+  FL_EXPORT_C(void, Fl_Menu__set_other_data)(fl_Menu_ menu_, void* v){+    (static_cast<Fl_DerivedMenu_*>(menu_))->set_other_data(v);+  }+  FL_EXPORT_C(fl_Menu_, Fl_Menu__New_WithLabel)(int x, int y, int w, int h, const char* label) {+    fl_Menu__Virtual_Funcs* funcs = Fl_Menu__default_virtual_funcs();+    Fl_DerivedMenu_* menu_ = new Fl_DerivedMenu_(x,y,w,h,label,funcs);+    return (static_cast<fl_Menu_>(menu_));+  }+  FL_EXPORT_C(fl_Menu_, Fl_OverriddenMenu__New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Menu__Virtual_Funcs* funcs) {+    Fl_DerivedMenu_* box = new Fl_DerivedMenu_(x,y,w,h,label,funcs);+    return (static_cast<fl_Menu_>(box));+  }+  FL_EXPORT_C(fl_Menu_, Fl_Menu__New)(int x, int y, int w, int h) {+    fl_Menu__Virtual_Funcs* funcs = Fl_Menu__default_virtual_funcs();+    Fl_DerivedMenu_* menu_ = new Fl_DerivedMenu_(x,y,w,h,0,funcs);+    return (fl_Menu_)menu_;+  }+  FL_EXPORT_C(fl_Menu_   , Fl_OverriddenMenu__New)(int x, int y, int w, int h, fl_Menu__Virtual_Funcs* funcs){+    Fl_DerivedMenu_* menu_ = new Fl_DerivedMenu_(x,y,w,h,0,funcs);+    return (fl_Menu_)menu_;+  }+  FL_EXPORT_C(void   , Fl_Menu__Destroy)(fl_Menu_ menu_){+    delete (static_cast<Fl_DerivedMenu_*>(menu_));+  }+  FL_EXPORT_C(int,Fl_Menu__item_pathname_with_finditem)(fl_Menu_ menu_,char* name,int namelen,fl_Menu_Item finditem){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->item_pathname(name,namelen,(static_cast<Fl_Menu_Item*>(finditem)));+  }+  FL_EXPORT_C(int,Fl_Menu__item_pathname)(fl_Menu_ menu_,char* name,int namelen){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->item_pathname(name,namelen);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu__picked)(fl_Menu_ menu_,fl_Menu_Item item){+    return (fl_Menu_Item)(static_cast<Fl_DerivedMenu_*>(menu_))->picked((static_cast<Fl_Menu_Item*>(item)));+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu__find_item_with_name)(fl_Menu_ menu_,char* name){+    return (fl_Menu_Item)(static_cast<Fl_DerivedMenu_*>(menu_))->find_item(name);+  }+  FL_EXPORT_C(int,Fl_Menu__find_index_with_name)(fl_Menu_ menu_,char* name){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->find_index(name);+  }+  FL_EXPORT_C(int,Fl_Menu__find_index_with_item)(fl_Menu_ menu_,fl_Menu_Item item){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->find_index((static_cast<Fl_Menu_Item*>(item)));+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu__test_shortcut)(fl_Menu_ menu_){+    return (fl_Menu_Item)(static_cast<Fl_DerivedMenu_*>(menu_))->test_shortcut();+  }+  FL_EXPORT_C(void,Fl_Menu__global)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->global();+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu__menu)(fl_Menu_ menu_){+    return (fl_Menu_Item)(static_cast<Fl_DerivedMenu_*>(menu_))->menu();+  }+  FL_EXPORT_C(void,Fl_Menu__menu_with_m)(fl_Menu_ menu_,fl_Menu_Item* item, int size){+    Fl_Menu_Item* converted_item = convert(item, size);+    return (static_cast<Fl_DerivedMenu_*>(menu_))->menu(converted_item);+  }+  FL_EXPORT_C(void,Fl_Menu__copy)(fl_Menu_ menu_,fl_Menu_Item m){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->copy((static_cast<Fl_Menu_Item*>(m)));+  }+  FL_EXPORT_C(void,Fl_Menu__copy_with_user_data)(fl_Menu_ menu_,fl_Menu_Item m,void* user_data){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->copy((static_cast<Fl_Menu_Item*>(m)),user_data);+  }+  FL_EXPORT_C(int,Fl_Menu__insert)(fl_Menu_ menu_,int index,char* name,int shortcut,fl_Callback* cb){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_insert((static_cast<Fl_DerivedMenu_*>(menu_)),index,name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu__insert_with_flags)(fl_Menu_ menu_,int index,char* name,int shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_insert((static_cast<Fl_DerivedMenu_*>(menu_)),index,name,shortcut, flags);+  }+  FL_EXPORT_C(int,Fl_Menu__insert_with_shortcutname)(fl_Menu_ menu_,int index,char* name,char* shortcut,fl_Callback* cb){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_insert((static_cast<Fl_DerivedMenu_*>(menu_)),index, name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu__insert_with_shortcutname_flags)(fl_Menu_ menu_,int index,char* name,char* shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_insert((static_cast<Fl_DerivedMenu_*>(menu_)),index, name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu__insert_with_user_data_flags)(fl_Menu_ menu_,int index,char* name,int shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_insert((static_cast<Fl_DerivedMenu_*>(menu_)),index,name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu__add_with_user_data)(fl_Menu_ menu_,char* name,int shortcut,fl_Callback* cb,void* user_data){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_DerivedMenu_*>(menu_)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu__add_with_flags)(fl_Menu_ menu_,char* name,int shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_DerivedMenu_*>(menu_)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu__add_with_user_data_flags)(fl_Menu_ menu_,char* name,int shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_DerivedMenu_*>(menu_)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu__add_with_shortcutname)(fl_Menu_ menu_,char* name,char* shortcut,fl_Callback* cb){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_DerivedMenu_*>(menu_)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu__add_with_shortcutname_user_data)(fl_Menu_ menu_,char* name,char* shortcut,fl_Callback* cb,void* user_data){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_DerivedMenu_*>(menu_)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu__add_with_shortcutname_flags)(fl_Menu_ menu_,char* name,char* shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_DerivedMenu_*>(menu_)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu__add_with_shortcutname_user_data_flags)(fl_Menu_ menu_,char* name,char* shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_DerivedMenu_*>(menu_)),name,shortcut,flags);+  }+  FL_EXPORT_C(int, Fl_Menu__add_with_name)(fl_Menu_ menu_,  char* name){+    return (static_cast<Fl_Menu_*>(menu_))->add(name);+  }+  FL_EXPORT_C(int,Fl_Menu__size)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->size();+  }+  FL_EXPORT_C(void,Fl_Menu__set_size)(fl_Menu_ menu_,int W,int H){+    (static_cast<Fl_DerivedMenu_*>(menu_))->size(W,H);+  }+  FL_EXPORT_C(void,Fl_Menu__clear)(fl_Menu_ menu_){+    (static_cast<Fl_DerivedMenu_*>(menu_))->clear();+  }+  FL_EXPORT_C(int,Fl_Menu__clear_submenu)(fl_Menu_ menu_,int index){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->clear_submenu(index);+  }+  FL_EXPORT_C(void,Fl_Menu__replace)(fl_Menu_ menu_,int i,char* name){+    (static_cast<Fl_DerivedMenu_*>(menu_))->replace(i,name);+  }+  FL_EXPORT_C(void,Fl_Menu__remove)(fl_Menu_ menu_,int i ){+    (static_cast<Fl_DerivedMenu_*>(menu_))->remove(i);+  }+  FL_EXPORT_C(void,Fl_Menu__shortcut)(fl_Menu_ menu_,int i,int s){+    (static_cast<Fl_DerivedMenu_*>(menu_))->shortcut(i,s);+  }+  FL_EXPORT_C(void,Fl_Menu__set_mode)(fl_Menu_ menu_,int i,int fl){+    (static_cast<Fl_DerivedMenu_*>(menu_))->mode(i,fl);+  }+  FL_EXPORT_C(int,Fl_Menu__mode)(fl_Menu_ menu_,int i){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->mode(i);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu__mvalue)(fl_Menu_ menu_){+    return (fl_Menu_Item)(static_cast<Fl_DerivedMenu_*>(menu_))->mvalue();+  }+  FL_EXPORT_C(int,Fl_Menu__value)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->value();+  }+  FL_EXPORT_C(int,Fl_Menu__value_with_item)(fl_Menu_ menu_,fl_Menu_Item item){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->value(static_cast<Fl_Menu_Item*>(item));+  }+  FL_EXPORT_C(int,Fl_Menu__value_with_index)(fl_Menu_ menu_,int index){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->value(index);+  }+  FL_EXPORT_C(char*,Fl_Menu__text)(fl_Menu_ menu_){+    return (char*)(static_cast<Fl_DerivedMenu_*>(menu_))->text();+  }+  FL_EXPORT_C(char*,Fl_Menu__text_with_index)(fl_Menu_ menu_,int i){+    return (char*)(static_cast<Fl_DerivedMenu_*>(menu_))->text(i);+  }+  FL_EXPORT_C(Fl_Font,Fl_Menu__textfont)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->textfont();+  }+  FL_EXPORT_C(void,Fl_Menu__set_textfont)(fl_Menu_ menu_,Fl_Font c){+    (static_cast<Fl_DerivedMenu_*>(menu_))->textfont(c);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Menu__textsize)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->textsize();+  }+  FL_EXPORT_C(void,Fl_Menu__set_textsize)(fl_Menu_ menu_,Fl_Fontsize c){+    (static_cast<Fl_DerivedMenu_*>(menu_))->textsize(c);+  }+  FL_EXPORT_C(Fl_Color,Fl_Menu__textcolor)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Menu__set_textcolor)(fl_Menu_ menu_,Fl_Color c){+    (static_cast<Fl_DerivedMenu_*>(menu_))->textcolor(c);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Menu__down_box)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->down_box();+  }+  FL_EXPORT_C(void,Fl_Menu__set_down_box)(fl_Menu_ menu_,Fl_Boxtype b){+    (static_cast<Fl_DerivedMenu_*>(menu_))->down_box(b);+  }+  FL_EXPORT_C(Fl_Color,Fl_Menu__down_color)(fl_Menu_ menu_){+    return (static_cast<Fl_DerivedMenu_*>(menu_))->down_color();+  }+  FL_EXPORT_C(void,Fl_Menu__set_down_color)(fl_Menu_ menu_,unsigned c){+    (static_cast<Fl_DerivedMenu_*>(menu_))->down_color(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Menu_C.h view
@@ -0,0 +1,211 @@+#ifndef __FL_MENU__C__+#define __FL_MENU__C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Menu_.H"+#include "Fl_CallbackC.h"+EXPORT {+  class Fl_DerivedMenu_ : public Fl_Menu_ {+    fl_Menu__Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void destroy_data();+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    virtual int handle(int event);+    void resize_super(int x, int y, int w, int h);+    virtual void resize(int x, int y, int w, int h);+    virtual void show();+    virtual void hide();+    virtual Fl_Window* as_window();+    virtual Fl_Gl_Window* as_gl_window();+    virtual Fl_Group* as_group();+    virtual Fl_Group* as_group_super();+    Fl_DerivedMenu_(int X, int Y, int W, int H, const char *l, fl_Menu__Virtual_Funcs* funcs);+    Fl_DerivedMenu_(int X, int Y, int W, int H, fl_Menu__Virtual_Funcs* funcs);+    ~Fl_DerivedMenu_();+  };+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,          Fl_Menu__handle_super)(fl_Group self, int event);+  FL_EXPORT_C(int,          Fl_Menu__handle)(fl_Group self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Menu__parent)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_parent)(fl_Menu_ menu_, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Menu__type)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_type)(fl_Menu_ menu_, uchar t);++  FL_EXPORT_C(void, Fl_Menu__draw_box)(fl_Menu_ Menu_);+  FL_EXPORT_C(void, Fl_Menu__draw_box_with_tc)(fl_Menu_ Menu_,Fl_Boxtype t, Fl_Color c);+  FL_EXPORT_C(void, Fl_Menu__draw_box_with_txywhc)(fl_Menu_ Menu_,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+  FL_EXPORT_C(void, Fl_Menu__draw_backdrop)(fl_Menu_ Menu_);+  FL_EXPORT_C(void, Fl_Menu__draw_focus)(fl_Menu_ Menu_);+  FL_EXPORT_C(void, Fl_Menu__draw_focus_with_txywh)(fl_Menu_ Menu_,Fl_Boxtype t, int x,int y,int w,int h);+  FL_EXPORT_C(void, Fl_Menu__draw_label)(fl_Menu_ Menu_);+  FL_EXPORT_C(int,          Fl_Menu__x)(fl_Menu_ menu_);+  FL_EXPORT_C(int,          Fl_Menu__y)(fl_Menu_ menu_);+  FL_EXPORT_C(int,          Fl_Menu__w)(fl_Menu_ menu_);+  FL_EXPORT_C(int,          Fl_Menu__h)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_align)(fl_Menu_ menu_, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Menu__align)(fl_Menu_ menu_);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Menu__box)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_box)(fl_Menu_ menu_, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Menu__color)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_color)(fl_Menu_ menu_, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Menu__set_color_with_bg_sel)(fl_Menu_ menu_,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Menu__selection_color)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_selection_color)(fl_Menu_ menu_, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Menu__label)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__copy_label)(fl_Menu_ menu_, const char* new_label);+  FL_EXPORT_C(void,         Fl_Menu__set_label)(fl_Menu_ menu_, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Menu__labeltype)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_labeltype)(fl_Menu_ menu_, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Menu__labelcolor)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_labelcolor)(fl_Menu_ menu_, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Menu__item_labelfont)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_item_labelfont)(fl_Menu_ menu_, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Menu__item_labelsize)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_item_labelsize)(fl_Menu_ menu_, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Menu__image)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_image)(fl_Menu_ menu_, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Menu__deimage)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_deimage)(fl_Menu_ menu_, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Menu__tooltip)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__copy_tooltip)(fl_Menu_ menu_, const char* text);+  FL_EXPORT_C(void,         Fl_Menu__set_tooltip)(fl_Menu_ menu_, const char* text);+  FL_EXPORT_C(void,         Fl_Menu__set_callback_with_user_data)(fl_Menu_ menu_, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Menu__set_callback)(fl_Menu_ menu_, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Menu__other_data)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_other_data)(fl_Menu_ menu_, void* v);+  FL_EXPORT_C(void*,        Fl_Menu__user_data)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_user_data)(fl_Menu_ menu_, void* v);+  FL_EXPORT_C(long,         Fl_Menu__argument)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_argument)(fl_Menu_ menu_, long v);+  FL_EXPORT_C(Fl_When,      Fl_Menu__when)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_when)(fl_Menu_ menu_, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Menu__visible)(fl_Menu_ menu_);+  FL_EXPORT_C(int,          Fl_Menu__visible_r)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__show_super)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__show)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__hide_super)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__hide)(fl_Menu_ menu_);+  FL_EXPORT_C(fl_Window,    Fl_Menu__as_window_super)(fl_Menu_ menu_);+  FL_EXPORT_C(fl_Window,    Fl_Menu__as_window )(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_visible)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__clear_visible)(fl_Menu_ menu_);+  FL_EXPORT_C(unsigned int, Fl_Menu__active)(fl_Menu_ menu_);+  FL_EXPORT_C(int,          Fl_Menu__active_r)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__activate)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__deactivate)(fl_Menu_ menu_);+  FL_EXPORT_C(unsigned int, Fl_Menu__output)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_output)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__clear_output)(fl_Menu_ menu_);+  FL_EXPORT_C(unsigned int, Fl_Menu__takesevents)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_changed)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__clear_changed)(fl_Menu_ menu_);+  FL_EXPORT_C(int,          Fl_Menu__take_focus)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__set_visible_focus)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__clear_visible_focus)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__modify_visible_focus)(fl_Menu_ menu_, int v);+  FL_EXPORT_C(unsigned int, Fl_Menu__visible_focus)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu_do_callback)(fl_Menu menu);+  FL_EXPORT_C(void,         Fl_Menu_do_callback_with_widget_and_user_data)(fl_Menu menu, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Menu_do_callback_with_widget_and_default_user_data)(fl_Menu menu, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Menu__contains)(fl_Menu_ menu_, fl_Group w);+  FL_EXPORT_C(int,          Fl_Menu__inside)(fl_Menu_ menu_, fl_Group w);+  FL_EXPORT_C(void,         Fl_Menu__redraw)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__redraw_label)(fl_Menu_ menu_);+  FL_EXPORT_C(uchar,        Fl_Menu__damage)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__clear_damage_with_bitmask)(fl_Menu_ menu_, uchar c);+  FL_EXPORT_C(void,         Fl_Menu__clear_damage)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__damage_with_text)(fl_Menu_ menu_, uchar c);+  FL_EXPORT_C(void,         Fl_Menu__damage_inside_group)(fl_Menu_ menu_, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Menu__draw_label_with_xywh_alignment)(fl_Menu_ menu_, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Menu__measure_label)(fl_Menu_ menu_, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Menu__window)(fl_Menu_ menu_);+  FL_EXPORT_C(fl_Window,    Fl_Menu__top_window)(fl_Menu_ menu_);+  FL_EXPORT_C(fl_Window ,   Fl_Menu__top_window_offset)(fl_Menu_ menu_, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Menu__as_group_super)(fl_Menu_ menu_);+  FL_EXPORT_C(fl_Group,     Fl_Menu__as_group)(fl_Menu_ menu_);+  FL_EXPORT_C(fl_Gl_Window, Fl_Menu__as_gl_window_super)(fl_Menu_ menu_);+  FL_EXPORT_C(fl_Gl_Window, Fl_Menu__as_gl_window)(fl_Menu_ menu_);+  FL_EXPORT_C(void,         Fl_Menu__resize_super)(fl_Menu_ menu_,int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Menu__resize)(fl_Menu_ menu_,int X, int Y, int W, int H);++  /* Fl_Menu_ specific */+  FL_EXPORT_C(void*, Fl_Menu__other_data)(fl_Menu_ menu_);+  FL_EXPORT_C(void, Fl_Menu__set_other_data)(fl_Menu_ menu_, void* v);+  FL_EXPORT_C(fl_Menu_,    Fl_Menu__New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Menu_, Fl_OverriddenMenu__New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Menu__Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Menu_   , Fl_Menu__New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Menu_   , Fl_OverriddenMenu__New)(int x, int y, int w, int h, fl_Menu__Virtual_Funcs* funcs);+  FL_EXPORT_C(void   , Fl_Menu__Destroy)(fl_Menu_ menu_);+  FL_EXPORT_C(int, Fl_Menu__item_pathname_with_finditem)(fl_Menu_ menu_, char* name, int namelen,  fl_Menu_Item finditem);+  FL_EXPORT_C(int, Fl_Menu__item_pathname)(fl_Menu_ menu_, char* name, int namelen);+  FL_EXPORT_C( fl_Menu_Item, Fl_Menu__picked)(fl_Menu_ menu_,  const fl_Menu_Item item);+  FL_EXPORT_C( fl_Menu_Item, Fl_Menu__find_item_with_name)(fl_Menu_ menu_,  char* name);+  //  FL_EXPORT_C( fl_Menu_Item, Fl_Menu__find_item_with_cb)(fl_Menu_ menu_, fl_Callback cb); Don't know how to do this+  FL_EXPORT_C(int, Fl_Menu__find_index_with_name)(fl_Menu_ menu_,  char* name);+  FL_EXPORT_C(int, Fl_Menu__find_index_with_item)(fl_Menu_ menu_,  fl_Menu_Item item);+  //  FL_EXPORT_C(int, Fl_Menu__find_index_with_cb)(fl_Menu_ menu_, fl_Callback cb); Don't know how to do this+  FL_EXPORT_C( fl_Menu_Item, Fl_Menu__test_shortcut)(fl_Menu_ menu_);+  FL_EXPORT_C(void, Fl_Menu__global)(fl_Menu_ menu_);+  FL_EXPORT_C( fl_Menu_Item, Fl_Menu__menu)(fl_Menu_ menu_);+  FL_EXPORT_C(void, Fl_Menu__menu_with_m)(fl_Menu_ menu_,  fl_Menu_Item* item, int size);+  FL_EXPORT_C(void, Fl_Menu__copy)(fl_Menu_ menu_,  fl_Menu_Item m);+  FL_EXPORT_C(void, Fl_Menu__copy_with_user_data)(fl_Menu_ menu_,  fl_Menu_Item m, void* user_data);+  FL_EXPORT_C(int, Fl_Menu__insert)(fl_Menu_ menu_, int index,  char* name, int shortcut, fl_Callback cb);+  FL_EXPORT_C(int, Fl_Menu__insert_with_user_data)(fl_Menu_ menu_, int index,  char*, int shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Menu__insert_with_flags)(fl_Menu_ menu_, int index,  char* name, int shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Menu__insert_with_user_data_flags)(fl_Menu_ menu_, int index,  char* name, int shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Menu__insert_with_shortcutname)(fl_Menu_ menu_, int index,  char* name, char* shortcut, fl_Callback* cb);+  FL_EXPORT_C(int, Fl_Menu__insert_with_shortcutname_flags)(fl_Menu_ menu_, int index,  char* name,   char* shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Menu__add)(fl_Menu_ menu_, char* name, int shortcut, fl_Callback);+  FL_EXPORT_C(int, Fl_Menu__add_with_user_data)(fl_Menu_ menu_, char* name, int shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Menu__add_with_flags)(fl_Menu_ menu_, char* name, int shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Menu__add_with_user_data_flags)(fl_Menu_ menu_, char* name, int shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Menu__add_with_shortcutname)(fl_Menu_ menu_, char* name,   char* shortcut, fl_Callback* cb);+  FL_EXPORT_C(int, Fl_Menu__add_with_shortcutname_user_data)(fl_Menu_ menu_, char* name,   char* shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Menu__add_with_shortcutname_flags)(fl_Menu_ menu_, char* name,   char* shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Menu__add_with_shortcutname_user_data_flags)(fl_Menu_ menu_, char* name,  char* shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Menu__add_with_name)(fl_Menu_ menu_,  char* name);+  FL_EXPORT_C(int , Fl_Menu__size)(fl_Menu_ menu_);+  FL_EXPORT_C(void, Fl_Menu__set_size)(fl_Menu_ menu_, int W, int H);+  FL_EXPORT_C(void, Fl_Menu__clear)(fl_Menu_ menu_);+  FL_EXPORT_C(int, Fl_Menu__clear_submenu)(fl_Menu_ menu_, int index);+  FL_EXPORT_C(void, Fl_Menu__replace)(fl_Menu_ menu_, int, char* name);+  FL_EXPORT_C(void, Fl_Menu__remove)(fl_Menu_ menu_, int);+  FL_EXPORT_C(void, Fl_Menu__shortcut)(fl_Menu_ menu_, int i, int s);+  FL_EXPORT_C(void, Fl_Menu__set_mode)(fl_Menu_ menu_, int i,int fl);+  FL_EXPORT_C(int , Fl_Menu__mode)(fl_Menu_ menu_, int i);+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu__mvalue)(fl_Menu_ menu_);+  FL_EXPORT_C(int, Fl_Menu__value)(fl_Menu_ menu_);+  FL_EXPORT_C(int, Fl_Menu__value_with_item)(fl_Menu_ menu_,  fl_Menu_Item item);+  FL_EXPORT_C(int, Fl_Menu__value_with_index)(fl_Menu_ menu_, int index);+  FL_EXPORT_C(char*, Fl_Menu__text)(fl_Menu_ menu_);+  FL_EXPORT_C(char*, Fl_Menu__text_with_index)(fl_Menu_ menu_, int i);+  FL_EXPORT_C(Fl_Font, Fl_Menu__textfont)(fl_Menu_ menu_);+  FL_EXPORT_C(void, Fl_Menu__set_textfont)(fl_Menu_ menu_, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize, Fl_Menu__textsize)(fl_Menu_ menu_);+  FL_EXPORT_C(void, Fl_Menu__set_textsize)(fl_Menu_ menu_, Fl_Fontsize c);+  FL_EXPORT_C(Fl_Color, Fl_Menu__textcolor)(fl_Menu_ menu_);+  FL_EXPORT_C(void, Fl_Menu__set_textcolor)(fl_Menu_ menu_, Fl_Color c);+  FL_EXPORT_C(Fl_Boxtype, Fl_Menu__down_box)(fl_Menu_ menu_);+  FL_EXPORT_C(void, Fl_Menu__set_down_box)(fl_Menu_ menu_, Fl_Boxtype b);+  FL_EXPORT_C(Fl_Color, Fl_Menu__down_color)(fl_Menu_ menu_);+  FL_EXPORT_C(void, Fl_Menu__set_down_color)(fl_Menu_ menu_, unsigned c);+#ifdef __cplusplus+}+#endif+#endif /* __FL_MENU__C__ */
+ c-src/Fl_Menu_ItemC.cpp view
@@ -0,0 +1,232 @@+#include "Fl_Menu_ItemC.h"++#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_next_with_step)(fl_Menu_Item menu_item,int step){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Item*>(menu_item))->next(step);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_next)(fl_Menu_Item menu_item){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Item*>(menu_item))->next();+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_first)(fl_Menu_Item menu_item){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Item*>(menu_item))->first();+  }+  FL_EXPORT_C(const char*,Fl_Menu_Item_label)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->label();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_set_label)(fl_Menu_Item menu_item,const char* a){+    return (static_cast<Fl_Menu_Item*>(menu_item))->label(a);+  }+  FL_EXPORT_C(void,Fl_Menu_Item_set_label_with_labeltype)(fl_Menu_Item menu_item,Fl_Labeltype labeltype,const char* b){+    return (static_cast<Fl_Menu_Item*>(menu_item))->label(labeltype,b);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Menu_Item_labeltype)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_set_labeltype)(fl_Menu_Item menu_item,Fl_Labeltype a){+    return (static_cast<Fl_Menu_Item*>(menu_item))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Menu_Item_set_labelcolor)(fl_Menu_Item menu_item, Fl_Color c){+    (static_cast<Fl_Menu_Item*>(menu_item))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color,Fl_Menu_Item_labelcolor)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Menu_Item_labelfont)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_set_labelfont)(fl_Menu_Item menu_item,Fl_Font a){+    return (static_cast<Fl_Menu_Item*>(menu_item))->labelfont(a);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Menu_Item_labelsize)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_set_labelsize)(fl_Menu_Item menu_item,Fl_Fontsize a){+    return (static_cast<Fl_Menu_Item*>(menu_item))->labelsize(a);+  }+  FL_EXPORT_C(void,Fl_Menu_Item_set_callback_with_user_data)(fl_Menu_Item menu_item,fl_Callback* c,void* user_data){+    C_to_Fl_Callback* callback = new C_to_Fl_Callback(c, user_data);+    callback->set_callback(static_cast<Fl_Menu_Item*>(menu_item));+  }+  FL_EXPORT_C(void,Fl_Menu_Item_set_callback)(fl_Menu_Item menu_item,fl_Callback* c){+    C_to_Fl_Callback* callback = new C_to_Fl_Callback(c);+    callback->set_callback(static_cast<Fl_Menu_Item*>(menu_item));+  }+  FL_EXPORT_C(void*,Fl_Menu_Item_user_data)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->user_data();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_set_user_data)(fl_Menu_Item menu_item,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Menu_Item*>(menu_item))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Menu_Item*>(menu_item))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Menu_Item*>(menu_item))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Menu_Item_argument)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->argument();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_set_argument)(fl_Menu_Item menu_item,long v){+    return (static_cast<Fl_Menu_Item*>(menu_item))->argument(v);+  }+  FL_EXPORT_C(int,Fl_Menu_Item_shortcut)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_set_shortcut)(fl_Menu_Item menu_item,int s){+    return (static_cast<Fl_Menu_Item*>(menu_item))->shortcut(s);+  }+  FL_EXPORT_C(int,Fl_Menu_Item_submenu)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->submenu();+  }+  FL_EXPORT_C(int,Fl_Menu_Item_checkbox)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->checkbox();+  }+  FL_EXPORT_C(int,Fl_Menu_Item_radio)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->radio();+  }+  FL_EXPORT_C(int,Fl_Menu_Item_value)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->value();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_set)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->set();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_clear)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->clear();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_setonly)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->setonly();+  }+  FL_EXPORT_C(int,Fl_Menu_Item_visible)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->visible();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_show)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->show();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_hide)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->hide();+  }+  FL_EXPORT_C(int,Fl_Menu_Item_active)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->active();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_activate)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->activate();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_deactivate)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->deactivate();+  }+  FL_EXPORT_C(int,Fl_Menu_Item_activevisible)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->activevisible();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_image)(fl_Menu_Item menu_item,fl_Image a){+    return (static_cast<Fl_Menu_Item*>(menu_item))->image((static_cast<Fl_Image*>(a)));+  }+  FL_EXPORT_C(int,Fl_Menu_Item_measure)(fl_Menu_Item menu_item,int* h,fl_Menu_ menu){+    return (static_cast<Fl_Menu_Item*>(menu_item))->measure(h,(static_cast<Fl_Menu_*>(menu)));+  }+  FL_EXPORT_C(void,Fl_Menu_Item_draw_with_t)(fl_Menu_Item menu_item,int x,int y,int w,int h,fl_Menu_ menu ,int t){+    return (static_cast<Fl_Menu_Item*>(menu_item))->draw(x,y,w,h,(static_cast<Fl_Menu_*>(menu)),t);+  }+  FL_EXPORT_C(void,Fl_Menu_Item_draw)(fl_Menu_Item menu_item,int x,int y,int w,int h,fl_Menu_ menu){+    return (static_cast<Fl_Menu_Item*>(menu_item))->draw(x,y,w,h,(static_cast<Fl_Menu_*>(menu)));+  }+  FL_EXPORT_C(int, Fl_Menu_Item_flags)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->flags;+  }+  FL_EXPORT_C(void, Fl_Menu_Item_set_flags)(fl_Menu_Item menu_item, int flags){+    (static_cast<Fl_Menu_Item*>(menu_item))->flags = flags;+  }+  FL_EXPORT_C(char*, Fl_Menu_Item_text)(fl_Menu_Item menu_item){+    return (char*)(static_cast<Fl_Menu_Item*>(menu_item))->text;+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_popup)(fl_Menu_Item menu_item,int X,int Y){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Item*>(menu_item))->popup(X,Y);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_pulldown)(fl_Menu_Item menu_item,int X,int Y,int W,int H){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Item*>(menu_item))->pulldown(X,Y,W,H);+  }++  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_popup_with_args)(fl_Menu_Item menu_item,int X,int Y, char* title, fl_Menu_Item picked, fl_Menu_ menu){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Item*>(menu_item))->popup(X,Y,title, (static_cast<Fl_Menu_Item*>(picked)), (static_cast<Fl_Menu_*>(menu)));+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_pulldown_with_args)(fl_Menu_Item menu_item,int X,int Y,int W, int H, fl_Menu_Item picked, fl_Menu_ menu, fl_Menu_Item title, int menubar){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Item*>(menu_item))->pulldown(X,Y,W,H,(static_cast<Fl_Menu_Item*>(picked)), (static_cast<Fl_Menu_*>(menu)), (static_cast<Fl_Menu_Item*>(title)), menubar);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_test_shortcut)(fl_Menu_Item menu_item){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Item*>(menu_item))->test_shortcut();+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_find_shortcut_with_ip_require_alt)(fl_Menu_Item menu_item,int* ip,int require_alt){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Item*>(menu_item))->find_shortcut(ip,require_alt ? true : false);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_find_shortcut_with_ip)(fl_Menu_Item menu_item,int* ip){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Item*>(menu_item))->find_shortcut(ip);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_find_shortcut_with_require_alt)(fl_Menu_Item menu_item,int require_alt){+    return (fl_Menu_Item)(static_cast<Fl_Menu_Item*>(menu_item))->find_shortcut(0,require_alt ? true : false);+  }+  FL_EXPORT_C(void,Fl_Menu_Item_do_callback)(fl_Menu_Item menu_item,fl_Widget o){+    return (static_cast<Fl_Menu_Item*>(menu_item))->do_callback((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Menu_Item_do_callback_with_user_data)(fl_Menu_Item menu_item,fl_Widget o,void* arg){+    return (static_cast<Fl_Menu_Item*>(menu_item))->do_callback((static_cast<Fl_Widget*>(o)),arg);+  }+  FL_EXPORT_C(int,Fl_Menu_Item_checked)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->checked();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_check)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->check();+  }+  FL_EXPORT_C(void,Fl_Menu_Item_uncheck)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->uncheck();+  }+  FL_EXPORT_C(int,Fl_Menu_Item_insert)(fl_Menu_Item menu_item,int index,char* name,int shortcut,fl_Callback* cb){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_insert((static_cast<Fl_Menu_Item*>(menu_item)),index,name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu_Item_insert_with_flags)(fl_Menu_Item menu_item,int index,char* name,int shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_insert((static_cast<Fl_Menu_Item*>(menu_item)),index,name,shortcut, flags);+  }+  FL_EXPORT_C(int,Fl_Menu_Item_insert_with_user_data_flags)(fl_Menu_Item menu_item,int index,char* name,int shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_insert((static_cast<Fl_Menu_Item*>(menu_item)),index,name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu_Item_add_with_user_data)(fl_Menu_Item menu_item,char* name,int shortcut,fl_Callback* cb,void* user_data){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Item*>(menu_item)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu_Item_add_with_flags)(fl_Menu_Item menu_item,char* name,int shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Item*>(menu_item)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu_Item_add_with_user_data_flags)(fl_Menu_Item menu_item,char* name,int shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Item*>(menu_item)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu_Item_add_with_shortcutname_user_data)(fl_Menu_Item menu_item,char* name,char* shortcut,fl_Callback* cb,void* user_data){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Item*>(menu_item)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Menu_Item_add_with_shortcutname_flags)(fl_Menu_Item menu_item,char* name,char* shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Item*>(menu_item)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Menu_Item_add_with_shortcutname_user_data_flags)(fl_Menu_Item menu_item,char* name,char* shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Menu_Item*>(menu_item)),name,shortcut,flags);+  }+  FL_EXPORT_C(int, Fl_Menu_Item_size)(fl_Menu_Item menu_item){+    return (static_cast<Fl_Menu_Item*>(menu_item))->size();+  }+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Item_New)(){+    Fl_Menu_Item* i = new Fl_Menu_Item();+    return (fl_Menu_Item)i;+  }+  FL_EXPORT_C(void, Fl_Menu_Item_Destroy)(fl_Menu_Item menu_item){+    delete (static_cast<Fl_Menu_Item*>(menu_item));+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Menu_ItemC.h view
@@ -0,0 +1,86 @@+#ifndef __FL_MENU_ITEM_C__+#define __FL_MENU_ITEM_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Menu_Item.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Item_next_with_step)(fl_Menu_Item menu_item, int step);+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Item_next)(fl_Menu_Item menu_item);+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Item_first)(fl_Menu_Item menu_item);+  FL_EXPORT_C(const char*, Fl_Menu_Item_label)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_set_label)(fl_Menu_Item menu_item, const char* a);+  FL_EXPORT_C(void, Fl_Menu_Item_set_label_with_labeltype)(fl_Menu_Item menu_item, Fl_Labeltype labeltype,const char* b);+  FL_EXPORT_C(Fl_Labeltype, Fl_Menu_Item_labeltype)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_set_labeltype)(fl_Menu_Item menu_item, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color, Fl_Menu_Item_labelcolor)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_set_labelcolor)(fl_Menu_Item menu_item, Fl_Color a);+  FL_EXPORT_C(Fl_Font, Fl_Menu_Item_labelfont)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_set_labelfont)(fl_Menu_Item menu_item, Fl_Font a);+  FL_EXPORT_C(Fl_Fontsize, Fl_Menu_Item_labelsize)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_set_labelsize)(fl_Menu_Item menu_item, Fl_Fontsize a);+  //  fl_Callback* callback(); commented until I figure out how to do this+  FL_EXPORT_C(void, Fl_Menu_Item_set_callback_with_user_data)(fl_Menu_Item menu_item, fl_Callback* c, void* user_data);+  FL_EXPORT_C(void, Fl_Menu_Item_set_callback)(fl_Menu_Item menu_item, fl_Callback* c);+  FL_EXPORT_C(void*, Fl_Menu_Item_user_data)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_set_user_data)(fl_Menu_Item menu_item, void* v);+  FL_EXPORT_C(long, Fl_Menu_Item_argument)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_set_argument)(fl_Menu_Item menu_item, long v);+  FL_EXPORT_C(int, Fl_Menu_Item_shortcut)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_set_shortcut)(fl_Menu_Item menu_item, int s);+  FL_EXPORT_C(int, Fl_Menu_Item_submenu)(fl_Menu_Item menu_item);+  FL_EXPORT_C(int, Fl_Menu_Item_checkbox)(fl_Menu_Item menu_item);+  FL_EXPORT_C(int, Fl_Menu_Item_radio)(fl_Menu_Item menu_item);+  FL_EXPORT_C(int, Fl_Menu_Item_value)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_set)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_clear)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_setonly)(fl_Menu_Item menu_item);+  FL_EXPORT_C(int, Fl_Menu_Item_visible)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_show)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_hide)(fl_Menu_Item menu_item);+  FL_EXPORT_C(int, Fl_Menu_Item_active)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_activate)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_deactivate)(fl_Menu_Item menu_item);+  FL_EXPORT_C(int, Fl_Menu_Item_activevisible)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_image)(fl_Menu_Item menu_item, fl_Image a);+  FL_EXPORT_C(int, Fl_Menu_Item_measure)(fl_Menu_Item menu_item, int* h, fl_Menu_ menu);+  FL_EXPORT_C(void, Fl_Menu_Item_draw_with_t)(fl_Menu_Item menu_item, int x, int y, int w, int h, fl_Menu_, int t);+  FL_EXPORT_C(void, Fl_Menu_Item_draw)(fl_Menu_Item menu_item, int x, int y, int w, int h, fl_Menu_ menu);+  FL_EXPORT_C(int, Fl_Menu_Item_flags)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_set_flags)(fl_Menu_Item menu_item,int flags);+  FL_EXPORT_C(char*, Fl_Menu_Item_text)(fl_Menu_Item menu_item);+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Item_popup)(fl_Menu_Item menu_item, int X, int Y);+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Item_pulldown)(fl_Menu_Item menu_item, int X, int Y, int W, int H);+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_popup_with_args)(fl_Menu_Item menu_item,int X,int Y, char* title, fl_Menu_Item picked, fl_Menu_ menu);+  FL_EXPORT_C(fl_Menu_Item,Fl_Menu_Item_pulldown_with_args)(fl_Menu_Item menu_item,int X,int Y,int W, int H, fl_Menu_Item picked, fl_Menu_ menu, fl_Menu_Item title, int menubar);+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Item_test_shortcut)(fl_Menu_Item menu_item);+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Item_find_shortcut_with_ip_require_alt)(fl_Menu_Item menu_item, int* ip, int require_alt);+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Item_find_shortcut_with_ip)(fl_Menu_Item menu_item, int* ip);+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Item_find_shortcut_with_require_alt)(fl_Menu_Item menu_item, int require_alt);+  FL_EXPORT_C(void, Fl_Menu_Item_do_callback)(fl_Menu_Item menu_item, fl_Widget o);+  FL_EXPORT_C(void, Fl_Menu_Item_do_callback_with_user_data)(fl_Menu_Item menu_item, fl_Widget o,void* arg);+  FL_EXPORT_C(int, Fl_Menu_Item_checked)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_check)(fl_Menu_Item menu_item);+  FL_EXPORT_C(void, Fl_Menu_Item_uncheck)(fl_Menu_Item menu_item);+  FL_EXPORT_C(int, Fl_Menu_Item_insert)(fl_Menu_Item menu_item, int index,  char* name , int shortcut, fl_Callback* cb);+  FL_EXPORT_C(int, Fl_Menu_Item_insert_with_user_data)(fl_Menu_Item menu_item, int index,  char* name, int shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Menu_Item_insert_with_flags)(fl_Menu_Item menu_item, int index,  char* name, int shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Menu_Item_insert_with_user_data_flags)(fl_Menu_Item menu_item, int index,  char* name, int shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Menu_Item_add)(fl_Menu_Item menu_item, char* name, int shortcut, fl_Callback* cb);+  FL_EXPORT_C(int, Fl_Menu_Item_add_with_user_data)(fl_Menu_Item menu_item,   char* name, int shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Menu_Item_add_with_flags)(fl_Menu_Item menu_item,   char* name, int shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Menu_Item_add_with_user_data_flags)(fl_Menu_Item menu_item,   char* name, int shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Menu_Item_add_with_shortcutname_user_data)(fl_Menu_Item menu_item,   char* name,   char* shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Menu_Item_add_with_shortcutname_flags)(fl_Menu_Item menu_item,   char* name,   char* shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Menu_Item_add_with_shortcutname_user_data_flags)(fl_Menu_Item menu_item,   char* name,   char* shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Menu_Item_size)(fl_Menu_Item menu_item);+  FL_EXPORT_C(fl_Menu_Item, Fl_Menu_Item_New)();+  FL_EXPORT_C(void, Fl_Menu_Item_Destroy)(fl_Menu_Item menu_item);+#ifdef __cplusplus+}+#endif+#endif /* __FL_MENU_ITEM_C__ */
+ c-src/Fl_Multi_BrowserC.cpp view
@@ -0,0 +1,688 @@+#include "Fl_Multi_BrowserC.h"+#ifdef __cplusplus+Fl_DerivedMulti_Browser::Fl_DerivedMulti_Browser(int X, int Y, int W, int H, const char *l, fl_Multi_Browser_Virtual_Funcs* funcs) : Fl_Multi_Browser(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = (void*)0;+ }+Fl_DerivedMulti_Browser::Fl_DerivedMulti_Browser(int X, int Y, int W, int H, fl_Multi_Browser_Virtual_Funcs* funcs):Fl_Multi_Browser(X,Y,W,H,0){+    overriddenFuncs = funcs;+    other_data = (void*)0;+}+Fl_DerivedMulti_Browser::~Fl_DerivedMulti_Browser(){+  free(overriddenFuncs);+  free(other_data);+}+void* Fl_DerivedMulti_Browser::get_other_data(){+  return this->other_data;+}+void Fl_DerivedMulti_Browser::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedMulti_Browser::draw(){+  if (this->overriddenFuncs->draw != NULL) {+    this->overriddenFuncs->draw((fl_Multi_Browser) this);+  }+  else {+    Fl_Multi_Browser::draw();+  }+}+void Fl_DerivedMulti_Browser::draw_box(){+  Fl_Multi_Browser::draw_box();+}+void Fl_DerivedMulti_Browser::draw_box(Fl_Boxtype t, Fl_Color c){+  Fl_Multi_Browser::draw_box(t,c);+}+void Fl_DerivedMulti_Browser::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+  Fl_Multi_Browser::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedMulti_Browser::draw_backdrop(){+  Fl_Multi_Browser::draw_backdrop();+}+void Fl_DerivedMulti_Browser::draw_focus(){+  Fl_Multi_Browser::draw_focus();+}+void Fl_DerivedMulti_Browser::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+  Fl_Multi_Browser::draw_focus(t,x,y,w,h);+}+void Fl_DerivedMulti_Browser::draw_label(){+  Fl_Multi_Browser::draw_label();+}+void Fl_DerivedMulti_Browser::draw_label(int x,int y,int w,int h,Fl_Align alignment){+  Fl_Multi_Browser::draw_label(x,y,w,h,alignment);+}+int Fl_DerivedMulti_Browser::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Multi_Browser) this,event);+  }+  else {+    i = Fl_Multi_Browser::handle(event);+  }+  return i;+}+void Fl_DerivedMulti_Browser::resize_super(int x, int y, int w, int h){+  Fl_Multi_Browser::resize(x,y,w,h);+}+void Fl_DerivedMulti_Browser::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Multi_Browser) this,x,y,w,h);+  }+  else {+    Fl_Multi_Browser::resize(x,y,w,h);+  }+}+void Fl_DerivedMulti_Browser::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Multi_Browser) this);+  }+  else {+    Fl_Multi_Browser::show();+  }+}+void Fl_DerivedMulti_Browser::show(int val){+  if (this->overriddenFuncs->show_with_line != NULL) {+    this->overriddenFuncs->show_with_line((fl_Multi_Browser) this, val);+  }+  else {+    Fl_Multi_Browser::show(val);+  }+}+void Fl_DerivedMulti_Browser::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Multi_Browser) this);+  }+  else {+    Fl_Multi_Browser::hide();+  }+}+void Fl_DerivedMulti_Browser::hide(int line){+  if (this->overriddenFuncs->hide_with_line != NULL) {+    this->overriddenFuncs->hide_with_line((fl_Multi_Browser) this, line);+  }+  else {+    Fl_Multi_Browser::hide(line);+  }+}+Fl_Group* Fl_DerivedMulti_Browser::as_group(){+  Fl_Group* grp;+  if (this->overriddenFuncs->as_group != NULL) {+    grp = (static_cast<Fl_Group*>(this->overriddenFuncs->as_group((fl_Multi_Browser) this)));+  }+  else {+    grp = Fl_Multi_Browser::as_group();+  }+  return grp;+}+Fl_Window* Fl_DerivedMulti_Browser::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Multi_Browser) this)));+  }+  else {+    win = Fl_Multi_Browser::as_window();+  }+  return win;+}+Fl_Gl_Window* Fl_DerivedMulti_Browser::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Multi_Browser) this)));+  }+  else {+    win = Fl_Multi_Browser::as_gl_window();+  }+  return win;+}+EXPORT {+#endif+  FL_EXPORT_C(fl_Multi_Browser_Virtual_Funcs*, Fl_Multi_Browser_default_virtual_funcs)(){+    fl_Multi_Browser_Virtual_Funcs* ptr = (fl_Multi_Browser_Virtual_Funcs*)malloc(sizeof(fl_Multi_Browser_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->show_with_line = NULL;+    ptr->hide = NULL;+    ptr->hide_with_line = NULL;+    ptr->as_group = NULL;+    ptr->as_window = NULL;+    ptr->as_gl_window = NULL;+    return ptr;+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_handle)(fl_Multi_Browser self, int event){+    return (static_cast<Fl_DerivedMulti_Browser*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Multi_Browser_parent)(fl_Multi_Browser multi_browser){+    return (fl_Group) (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->parent();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_parent)(fl_Multi_Browser multi_browser,fl_Group grp){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Multi_Browser_type)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->type();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_type)(fl_Multi_Browser multi_browser,uchar t){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->type(t);+  }++FL_EXPORT_C(void, Fl_Multi_Browser_draw_box)(fl_Multi_Browser Multi_Browser){+ (static_cast<Fl_DerivedMulti_Browser*>(Multi_Browser))->draw_box();+}+FL_EXPORT_C(void, Fl_Multi_Browser_draw_box_with_tc)(fl_Multi_Browser Multi_Browser,Fl_Boxtype t, Fl_Color c){+ (static_cast<Fl_DerivedMulti_Browser*>(Multi_Browser))->draw_box(t,c);+}+FL_EXPORT_C(void, Fl_Multi_Browser_draw_box_with_txywhc)(fl_Multi_Browser Multi_Browser,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+ (static_cast<Fl_DerivedMulti_Browser*>(Multi_Browser))->draw_box(t,x,y,w,h,c);+}+FL_EXPORT_C(void, Fl_Multi_Browser_draw_backdrop)(fl_Multi_Browser Multi_Browser){+ (static_cast<Fl_DerivedMulti_Browser*>(Multi_Browser))->draw_backdrop();+}+FL_EXPORT_C(void, Fl_Multi_Browser_draw_focus)(fl_Multi_Browser Multi_Browser){+ (static_cast<Fl_DerivedMulti_Browser*>(Multi_Browser))->draw_focus();+}+FL_EXPORT_C(void, Fl_Multi_Browser_draw_focus_with_txywh)(fl_Multi_Browser Multi_Browser,Fl_Boxtype t, int x,int y,int w,int h){+ (static_cast<Fl_DerivedMulti_Browser*>(Multi_Browser))->draw_focus(t,x,y,w,h);+}+FL_EXPORT_C(void, Fl_Multi_Browser_draw_label)(fl_Multi_Browser Multi_Browser){+ (static_cast<Fl_DerivedMulti_Browser*>(Multi_Browser))->draw_label();+}+  FL_EXPORT_C(int,Fl_Multi_Browser_x)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->x();+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_y)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->y();+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_w)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->w();+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_h)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->h();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_align)(fl_Multi_Browser multi_browser, Fl_Align alignment){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Multi_Browser_align)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Multi_Browser_box)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->box();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_box)(fl_Multi_Browser multi_browser,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Multi_Browser_color)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->color();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_color)(fl_Multi_Browser multi_browser,Fl_Color bg){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_color_with_bg_sel)(fl_Multi_Browser multi_browser,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Multi_Browser_selection_color)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_selection_color)(fl_Multi_Browser multi_browser,Fl_Color a){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Multi_Browser_label)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->label();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_copy_label)(fl_Multi_Browser multi_browser,const char* new_label){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_label)(fl_Multi_Browser multi_browser,const char* text){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Multi_Browser_labeltype)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_labeltype)(fl_Multi_Browser multi_browser,Fl_Labeltype a){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_labelcolor)(fl_Multi_Browser multi_browser,Fl_Color c){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Multi_Browser_labelcolor)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Multi_Browser_labelfont)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_labelfont)(fl_Multi_Browser multi_browser,Fl_Font c){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Multi_Browser_labelsize)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_labelsize)(fl_Multi_Browser multi_browser,Fl_Fontsize pix){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Multi_Browser_image)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->image();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_image)(fl_Multi_Browser multi_browser,fl_Image pix){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Multi_Browser_deimage)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->deimage();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_deimage)(fl_Multi_Browser multi_browser,fl_Image pix){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Multi_Browser_tooltip)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_copy_tooltip)(fl_Multi_Browser multi_browser,const char* text){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_tooltip)(fl_Multi_Browser multi_browser,const char* text){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_callback_with_user_data)(fl_Multi_Browser multi_browser,fl_Callback* cb,void* p){+    Fl_DerivedMulti_Browser* castedWindow = (static_cast<Fl_DerivedMulti_Browser*>(multi_browser));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_callback)(fl_Multi_Browser multi_browser,fl_Callback* cb){+    Fl_DerivedMulti_Browser* castedWindow = (static_cast<Fl_DerivedMulti_Browser*>(multi_browser));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Multi_Browser_other_data)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->get_other_data();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_other_data)(fl_Multi_Browser multi_browser,void* v){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->set_other_data(v);+  }+  FL_EXPORT_C(void*,Fl_Multi_Browser_user_data)(fl_Multi_Browser multi_browser){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_user_data)(fl_Multi_Browser multi_browser,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Multi_Browser*>(multi_browser))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Multi_Browser*>(multi_browser))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Multi_Browser*>(multi_browser))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Multi_Browser_argument)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->argument();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_argument)(fl_Multi_Browser multi_browser,long v){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Multi_Browser_when)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->when();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_when)(fl_Multi_Browser multi_browser,uchar i){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->when(i);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_visible_r)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_show_super)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_Multi_Browser*>(multi_browser))->show();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_hide_super)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_Multi_Browser*>(multi_browser))->hide();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_clear_visible)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Multi_Browser_active)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->active();+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_active_r)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->active_r();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_activate)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->activate();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_deactivate)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Multi_Browser_output)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->output();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_output)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->output();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_clear_output)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Multi_Browser_takesevents)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_changed)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->changed();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_clear_changed)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_take_focus)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_visible_focus)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_clear_visible_focus)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_modify_visible_focus)(fl_Multi_Browser multi_browser,int v){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Multi_Browser_visible_focus)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_contains)(fl_Multi_Browser multi_browser,fl_Widget w){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_inside)(fl_Multi_Browser multi_browser,fl_Widget w){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_redraw)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->redraw();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_redraw_label)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Multi_Browser_damage)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->damage();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_clear_damage_with_bitmask)(fl_Multi_Browser multi_browser,uchar c){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_clear_damage)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_damage_with_text)(fl_Multi_Browser multi_browser,uchar c){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_damage_inside_widget)(fl_Multi_Browser multi_browser,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_draw_label_with_xywh_alignment)(fl_Multi_Browser multi_browser,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_measure_label)(fl_Multi_Browser multi_browser,int* ww,int* hh){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Multi_Browser_window)(fl_Multi_Browser multi_browser){+    return (fl_Window) (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Multi_Browser_top_window)(fl_Multi_Browser multi_browser){+    return (fl_Window) (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Multi_Browser_top_window_offset)(fl_Multi_Browser multi_browser, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Multi_Browser_as_group_super)(fl_Multi_Browser multi_browser){+    return (fl_Group) (static_cast<Fl_Multi_Browser*>(multi_browser))->as_group();+  }+  FL_EXPORT_C(fl_Group,Fl_Multi_Browser_as_group)(fl_Multi_Browser multi_browser){+    return (fl_Group) (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Multi_Browser_as_gl_window_super)(fl_Multi_Browser multi_browser){+    return (fl_Gl_Window) (static_cast<Fl_Multi_Browser*>(multi_browser))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Multi_Browser_as_gl_window)(fl_Multi_Browser multi_browser){+    return (fl_Gl_Window) (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_resizable_by_reference)(fl_Multi_Browser multi_browser,fl_Widget o){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_resizable)(fl_Multi_Browser multi_browser,fl_Widget o){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Multi_Browser_resizable)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->resizable();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_add_resizable)(fl_Multi_Browser multi_browser,fl_Widget o){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_clip_children)(fl_Multi_Browser multi_browser,int c){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Multi_Browser_clip_children)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_focus)(fl_Multi_Browser multi_browser, fl_Widget W){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Multi_Browser__ddfdesign_kludge)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->_ddfdesign_kludge();+  }+  // FL_EXPORT_C(void,Fl_Multi_Browser_forms_end)(fl_Multi_Browser self){+  //   (static_cast<Fl_DerivedMulti_Browser*>(self))->forms_end();+  // }++  FL_EXPORT_C(fl_Multi_Browser, Fl_Multi_Browser_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    fl_Multi_Browser_Virtual_Funcs* funcs = Fl_Multi_Browser_default_virtual_funcs();+    Fl_DerivedMulti_Browser* multi_browser = new Fl_DerivedMulti_Browser(x,y,w,h,label,funcs);+    return (static_cast<fl_Multi_Browser>(multi_browser));+  }+  FL_EXPORT_C(fl_Multi_Browser, Fl_Multi_Browser_New)(int x, int y, int w, int h) {+    fl_Multi_Browser_Virtual_Funcs* funcs = Fl_Multi_Browser_default_virtual_funcs();+    Fl_DerivedMulti_Browser* multi_browser = new Fl_DerivedMulti_Browser(x,y,w,h,0,funcs);+    return (fl_Multi_Browser)multi_browser;+  }+  FL_EXPORT_C(fl_Multi_Browser, Fl_OverriddenMulti_Browser_New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Multi_Browser_Virtual_Funcs* funcs) {+    Fl_DerivedMulti_Browser* multi_browser = new Fl_DerivedMulti_Browser(x,y,w,h,label,funcs);+    return (static_cast<fl_Multi_Browser>(multi_browser));+  }+  FL_EXPORT_C(fl_Multi_Browser, Fl_OverriddenMulti_Browser_New)(int x, int y, int w, int h, fl_Multi_Browser_Virtual_Funcs* funcs) {+    Fl_DerivedMulti_Browser* multi_browser = new Fl_DerivedMulti_Browser(x,y,w,h,0,funcs);+    return (fl_Multi_Browser)multi_browser;+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_Destroy)(fl_Multi_Browser multi_browser){+    delete (static_cast<Fl_DerivedMulti_Browser*>(multi_browser));+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_remove)(fl_Multi_Browser multi_browser,int line){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->remove(line);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_add)(fl_Multi_Browser multi_browser,const char* newtext){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->add(newtext);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_add_with_d)(fl_Multi_Browser multi_browser,const char* newtext,void* d){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->add(newtext,d);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_insert)(fl_Multi_Browser multi_browser,int line,const char* newtext){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->insert(line,newtext);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_insert_with_d)(fl_Multi_Browser multi_browser,int line,const char* newtext,void* d){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->insert(line,newtext,d);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_move)(fl_Multi_Browser multi_browser,int to,int from){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->move(to,from);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_load)(fl_Multi_Browser multi_browser,const char* filename){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->load(filename);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_clear)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->clear();+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_size)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->size();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_size)(fl_Multi_Browser multi_browser,int W,int H){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_topline)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->topline();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_lineposition)(fl_Multi_Browser multi_browser,int line,Fl_Line_Position pos){+    Fl_Multi_Browser::Fl_Line_Position p = (Fl_Multi_Browser::Fl_Line_Position)-1;+    switch(p){+    case TOP :    {p = Fl_Multi_Browser::TOP; break;}+    case BOTTOM : {p = Fl_Multi_Browser::BOTTOM; break;}+    case MIDDLE : {p = Fl_Multi_Browser::MIDDLE; break;}+    default:      {p = (Fl_Multi_Browser::Fl_Line_Position)-1; break;}+    }+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->lineposition(line,p);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_topline)(fl_Multi_Browser multi_browser,int line){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->topline(line);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_bottomline)(fl_Multi_Browser multi_browser,int line){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->bottomline(line);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_middleline)(fl_Multi_Browser multi_browser,int line){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->middleline(line);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_select)(fl_Multi_Browser multi_browser,int line){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->select(line);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_select_with_val)(fl_Multi_Browser multi_browser,int line,int val){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->select(line,val);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_selected)(fl_Multi_Browser multi_browser,int line){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->selected(line);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_show_with_line)(fl_Multi_Browser multi_browser,int line){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->show(line);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_show)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->show();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_hide_with_line)(fl_Multi_Browser multi_browser,int line){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->hide(line);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_hide)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->hide();+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_visible)(fl_Multi_Browser multi_browser,int line){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->visible(line);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_value)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->value();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_value)(fl_Multi_Browser multi_browser,int line){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->value(line);+  }+  FL_EXPORT_C(const char*,Fl_Multi_Browser_text)(fl_Multi_Browser multi_browser,int line){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->text(line);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_text)(fl_Multi_Browser multi_browser,int line,const char* newtext){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->text(line,newtext);+  }+  FL_EXPORT_C(void*,Fl_Multi_Browser_data)(fl_Multi_Browser multi_browser,int line){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->data(line);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_data)(fl_Multi_Browser multi_browser,int line,void* d){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->data(line,d);+  }+  FL_EXPORT_C(char,Fl_Multi_Browser_format_char)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->format_char();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_format_char)(fl_Multi_Browser multi_browser,char c){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->format_char(c);+  }+  FL_EXPORT_C(char,Fl_Multi_Browser_column_char)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->column_char();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_column_char)(fl_Multi_Browser multi_browser,char c){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->column_char(c);+  }+  FL_EXPORT_C(const int*,Fl_Multi_Browser_column_widths)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->column_widths();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_column_widths)(fl_Multi_Browser multi_browser,const int* arr){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->column_widths(arr);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_displayed)(fl_Multi_Browser multi_browser,int line){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->displayed(line);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_make_visible)(fl_Multi_Browser multi_browser,int line){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->make_visible(line);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_icon)(fl_Multi_Browser multi_browser,int line,fl_Image icon){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->icon(line,(static_cast<Fl_Image*>(icon)));+  }+  FL_EXPORT_C(fl_Image,Fl_Multi_Browser_icon)(fl_Multi_Browser multi_browser,int line){+    return (fl_Image)(static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->icon(line);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_remove_icon)(fl_Multi_Browser multi_browser,int line){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->remove_icon(line);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_select_only)(fl_Multi_Browser multi_browser,void *item){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->select_only(item);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_select_only_with_docallbacks)(fl_Multi_Browser multi_browser,void *item,int docallbacks){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->select_only(item,docallbacks);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_deselect)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->deselect();+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_deselect_with_docallbacks)(fl_Multi_Browser multi_browser,int docallbacks){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->deselect(docallbacks);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_position)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->position();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_position)(fl_Multi_Browser multi_browser,int pos){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->position(pos);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_hposition)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->hposition();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_hposition)(fl_Multi_Browser multi_browser,int ){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->hposition();+  }+  FL_EXPORT_C(uchar,Fl_Multi_Browser_has_scrollbar)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->has_scrollbar();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_has_scrollbar)(fl_Multi_Browser multi_browser,uchar mode){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->has_scrollbar(mode);+  }+  FL_EXPORT_C(Fl_Font,Fl_Multi_Browser_textfont)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->textfont();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_textfont)(fl_Multi_Browser multi_browser,Fl_Font font){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->textfont(font);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Multi_Browser_textsize)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->textsize();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_textsize)(fl_Multi_Browser multi_browser,Fl_Fontsize newSize){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->textsize(newSize);+  }+  FL_EXPORT_C(Fl_Color,Fl_Multi_Browser_textcolor)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_textcolor)(fl_Multi_Browser multi_browser,Fl_Color col){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->textcolor(col);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_scrollbar_size)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->scrollbar_size();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_scrollbar_size)(fl_Multi_Browser multi_browser,int newSize){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->scrollbar_size(newSize);+  }+  FL_EXPORT_C(int,Fl_Multi_Browser_scrollbar_width)(fl_Multi_Browser multi_browser){+    return (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->scrollbar_width();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_scrollbar_width)(fl_Multi_Browser multi_browser,int width){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->scrollbar_width(width);+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_scrollbar_right)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->scrollbar_right();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_set_scrollbar_left)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->scrollbar_left();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_sort)(fl_Multi_Browser multi_browser){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->sort();+  }+  FL_EXPORT_C(void,Fl_Multi_Browser_sort_with_flags)(fl_Multi_Browser multi_browser,int flags){+    (static_cast<Fl_DerivedMulti_Browser*>(multi_browser))->sort(flags);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Multi_BrowserC.h view
@@ -0,0 +1,242 @@+#ifndef __FL_MULTI_BROWSER_C__+#define __FL_MULTI_BROWSER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Multi_Browser.H"+#include "Fl_CallbackC.h"+EXPORT {+  class Fl_DerivedMulti_Browser : public Fl_Multi_Browser {+    fl_Multi_Browser_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    virtual int handle(int event);+    void resize_super(int x, int y, int w, int h);+    virtual void resize(int x, int y, int w, int h);+    virtual void show();+    virtual void show(int val);+    virtual void hide();+    virtual void hide(int val);+    virtual Fl_Window* as_window();+    virtual Fl_Gl_Window* as_gl_window();+    virtual Fl_Group* as_group();+    Fl_DerivedMulti_Browser(int X, int Y, int W, int H, const char *l, fl_Multi_Browser_Virtual_Funcs* funcs);+    Fl_DerivedMulti_Browser(int X, int Y, int W, int H, fl_Multi_Browser_Virtual_Funcs* funcs);+    ~Fl_DerivedMulti_Browser();+  };+#endif++  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int ,         Fl_Multi_Browser_handle_super)(fl_Multi_Browser multi_browser,int event);+  FL_EXPORT_C(int ,         Fl_Multi_Browser_handle )(fl_Multi_Browser multi_browser,int event);+  FL_EXPORT_C(void,         Fl_Multi_Browser_resize_super)(fl_Multi_Browser multi_browser,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Multi_Browser_resize )(fl_Multi_Browser multi_browser,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Multi_Browser_show_super)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_show )(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_hide_super)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_hide )(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(fl_Window,    Fl_Multi_Browser_as_window_super)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(fl_Window,    Fl_Multi_Browser_as_window )(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Multi_Browser_as_gl_window_super)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Multi_Browser_as_gl_window)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(fl_Group,     Fl_Multi_Browser_parent)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_parent)(fl_Multi_Browser multi_browser, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Multi_Browser_type)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_type)(fl_Multi_Browser multi_browser, uchar t);++FL_EXPORT_C(void, Fl_Multi_Browser_draw_box)(fl_Multi_Browser Multi_Browser);+FL_EXPORT_C(void, Fl_Multi_Browser_draw_box_with_tc)(fl_Multi_Browser Multi_Browser,Fl_Boxtype t, Fl_Color c);+FL_EXPORT_C(void, Fl_Multi_Browser_draw_box_with_txywhc)(fl_Multi_Browser Multi_Browser,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+FL_EXPORT_C(void, Fl_Multi_Browser_draw_backdrop)(fl_Multi_Browser Multi_Browser);+FL_EXPORT_C(void, Fl_Multi_Browser_draw_focus)(fl_Multi_Browser Multi_Browser);+FL_EXPORT_C(void, Fl_Multi_Browser_draw_focus_with_txywh)(fl_Multi_Browser Multi_Browser,Fl_Boxtype t, int x,int y,int w,int h);+FL_EXPORT_C(void, Fl_Multi_Browser_draw_label)(fl_Multi_Browser Multi_Browser);+  FL_EXPORT_C(int,          Fl_Multi_Browser_x)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(int,          Fl_Multi_Browser_y)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(int,          Fl_Multi_Browser_w)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(int,          Fl_Multi_Browser_h)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_align)(fl_Multi_Browser multi_browser, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Multi_Browser_align)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Multi_Browser_box)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_box)(fl_Multi_Browser multi_browser, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Multi_Browser_color)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_color)(fl_Multi_Browser multi_browser, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_color_with_bg_sel)(fl_Multi_Browser multi_browser,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Multi_Browser_selection_color)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_selection_color)(fl_Multi_Browser multi_browser, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Multi_Browser_label)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_copy_label)(fl_Multi_Browser multi_browser, const char* new_label);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_label)(fl_Multi_Browser multi_browser, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Multi_Browser_labeltype)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_labeltype)(fl_Multi_Browser multi_browser, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Multi_Browser_labelcolor)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_labelcolor)(fl_Multi_Browser multi_browser, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Multi_Browser_labelfont)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_labelfont)(fl_Multi_Browser multi_browser, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Multi_Browser_labelsize)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_labelsize)(fl_Multi_Browser multi_browser, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Multi_Browser_image)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_image)(fl_Multi_Browser multi_browser, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Multi_Browser_deimage)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_deimage)(fl_Multi_Browser multi_browser, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Multi_Browser_tooltip)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_copy_tooltip)(fl_Multi_Browser multi_browser, const char* text);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_tooltip)(fl_Multi_Browser multi_browser, const char* text);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_callback_with_user_data)(fl_Multi_Browser multi_browser, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_callback)(fl_Multi_Browser multi_browser, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Multi_Browser_user_data)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_user_data)(fl_Multi_Browser multi_browser, void* v);+  FL_EXPORT_C(long,         Fl_Multi_Browser_argument)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_argument)(fl_Multi_Browser multi_browser, long v);+  FL_EXPORT_C(Fl_When,      Fl_Multi_Browser_when)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_when)(fl_Multi_Browser multi_browser, uchar i);+  FL_EXPORT_C(int,          Fl_Multi_Browser_visible_r)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_visible)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_clear_visible)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(unsigned int, Fl_Multi_Browser_active)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(int,          Fl_Multi_Browser_active_r)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_activate)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_deactivate)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(unsigned int, Fl_Multi_Browser_output)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_output)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_clear_output)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(unsigned int, Fl_Multi_Browser_takesevents)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_changed)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_clear_changed)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(int,          Fl_Multi_Browser_take_focus)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_visible_focus)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_clear_visible_focus)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_modify_visible_focus)(fl_Multi_Browser multi_browser, int v);+  FL_EXPORT_C(unsigned int, Fl_Multi_Browser_visible_focus)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_do_callback)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_do_callback_with_widget_and_user_data)(fl_Multi_Browser multi_browser, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Multi_Browser_do_callback_with_widget_and_default_user_data)(fl_Multi_Browser multi_browser, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Multi_Browser_contains)(fl_Multi_Browser multi_browser, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Multi_Browser_inside)(fl_Multi_Browser multi_browser, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Multi_Browser_redraw)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_redraw_label)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(uchar,        Fl_Multi_Browser_damage)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_clear_damage_with_bitmask)(fl_Multi_Browser multi_browser, uchar c);+  FL_EXPORT_C(void,         Fl_Multi_Browser_clear_damage)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,         Fl_Multi_Browser_damage_with_text)(fl_Multi_Browser multi_browser, uchar c);+  FL_EXPORT_C(void,         Fl_Multi_Browser_damage_inside_widget)(fl_Multi_Browser multi_browser, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Multi_Browser_draw_label_with_xywh_alignment)(fl_Multi_Browser multi_browser, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Multi_Browser_measure_label)(fl_Multi_Browser multi_browser, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Multi_Browser_window)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(fl_Window,    Fl_Multi_Browser_top_window)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(fl_Window ,   Fl_Multi_Browser_top_window_offset)(fl_Multi_Browser multi_browser, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Multi_Browser_as_group)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Multi_Browser_as_gl_window)(fl_Multi_Browser multi_browser);++  /* Inherited from Fl_Group */+  FL_EXPORT_C(void,         Fl_Multi_Browser_begin)(fl_Multi_Browser self);+  FL_EXPORT_C(void,         Fl_Multi_Browser_end)(fl_Multi_Browser self);+  FL_EXPORT_C(int,          Fl_Multi_Browser_find)(fl_Multi_Browser self, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Multi_Browser_remove_index)(fl_Multi_Browser self, int index);+  FL_EXPORT_C(void,         Fl_Multi_Browser_remove_widget)(fl_Multi_Browser self, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Multi_Browser_clear)(fl_Multi_Browser self);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_resizable_by_reference)(fl_Multi_Browser self,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_resizable)(fl_Multi_Browser self,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Multi_Browser_resizable)(fl_Multi_Browser self);+  FL_EXPORT_C(void,         Fl_Multi_Browser_add_resizable)(fl_Multi_Browser self,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Multi_Browser_init_sizes)(fl_Multi_Browser self);+  FL_EXPORT_C(int,          Fl_Multi_Browser_children)(fl_Multi_Browser self);+  FL_EXPORT_C(void,         Fl_Multi_Browser_set_clip_children)(fl_Multi_Browser self,int c);+  FL_EXPORT_C(unsigned int, Fl_Multi_Browser_clip_children)(fl_Multi_Browser self);+  FL_EXPORT_C(void,         Fl_Multi_Browser_focus)(fl_Multi_Browser self,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Multi_Browser__ddfdesign_kludge)(fl_Multi_Browser self);+  FL_EXPORT_C(void,         Fl_Multi_Browser_insert_with_before)(fl_Multi_Browser self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Multi_Browser_array)(fl_Multi_Browser self);+  FL_EXPORT_C(fl_Widget,    Fl_Multi_Browser_child)(fl_Multi_Browser self, int n);+  FL_EXPORT_C(void,         Fl_Multi_Browser_forms_end)(fl_Multi_Browser self);++  /* Fl_Multi_Browser specific functions */+  FL_EXPORT_C(void*, Fl_Multi_Browser_other_data)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void, Fl_Multi_Browser_set_other_data)(fl_Multi_Browser multi_browser, void* v);+  FL_EXPORT_C(fl_Multi_Browser, Fl_Multi_Browser_New_WithLabel)(int x, int y, int w, int h, const char* label); +  FL_EXPORT_C(fl_Multi_Browser, Fl_Multi_Browser_New)(int x, int y, int w, int h); +  FL_EXPORT_C(fl_Multi_Browser, Fl_OverriddenMulti_Browser_New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Multi_Browser_Virtual_Funcs* funcs); +  FL_EXPORT_C(fl_Multi_Browser, Fl_OverriddenMulti_Browser_New)(int x, int y, int w, int h, fl_Multi_Browser_Virtual_Funcs* funcs); +  FL_EXPORT_C(void,Fl_Multi_Browser_Destroy)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void,Fl_Multi_Browser_remove)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(void, Fl_Multi_Browser_add)(fl_Multi_Browser multi_browser, const char* newtext);+  FL_EXPORT_C(void, Fl_Multi_Browser_add_with_d)(fl_Multi_Browser multi_browser, const char* newtext, void* d);+  FL_EXPORT_C(void, Fl_Multi_Browser_insert)(fl_Multi_Browser multi_browser, int line, const char* newtext);+  FL_EXPORT_C(void, Fl_Multi_Browser_insert_with_d)(fl_Multi_Browser multi_browser, int line, const char* newtext, void* d);+  FL_EXPORT_C(void, Fl_Multi_Browser_move)(fl_Multi_Browser multi_browser, int to, int from);+  FL_EXPORT_C(int , Fl_Multi_Browser_load)(fl_Multi_Browser multi_browser, const char* filename);+  FL_EXPORT_C(void, Fl_Multi_Browser_swap)(fl_Multi_Browser multi_browser, int a, int b);+  FL_EXPORT_C(void, Fl_Multi_Browser_clear)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(int, Fl_Multi_Browser_size)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void, Fl_Multi_Browser_set_size)(fl_Multi_Browser multi_browser, int W, int H);+  FL_EXPORT_C(int, Fl_Multi_Browser_topline)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void, Fl_Multi_Browser_lineposition)(fl_Multi_Browser multi_browser, int line, Fl_Line_Position pos);+  FL_EXPORT_C(void, Fl_Multi_Browser_set_topline)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(void, Fl_Multi_Browser_bottomline)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(void, Fl_Multi_Browser_middleline)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(int, Fl_Multi_Browser_select)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(int, Fl_Multi_Browser_select_with_val)(fl_Multi_Browser multi_browser, int line, int val);+  FL_EXPORT_C(int, Fl_Multi_Browser_selected)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(void, Fl_Multi_Browser_show_with_line)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(void, Fl_Multi_Browser_show)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void, Fl_Multi_Browser_hide_with_line)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(void, Fl_Multi_Browser_hide)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(int, Fl_Multi_Browser_visible)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(int, Fl_Multi_Browser_value)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void, Fl_Multi_Browser_set_value)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(const char*, Fl_Multi_Browser_text)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(void, Fl_Multi_Browser_set_text)(fl_Multi_Browser multi_browser, int line, const char* newtext);+  FL_EXPORT_C(void*, Fl_Multi_Browser_data)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(void, Fl_Multi_Browser_set_data)(fl_Multi_Browser multi_browser, int line, void* d);+  FL_EXPORT_C(char, Fl_Multi_Browser_format_char)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void, Fl_Multi_Browser_set_format_char)(fl_Multi_Browser multi_browser, char c);+  FL_EXPORT_C(char, Fl_Multi_Browser_column_char)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void, Fl_Multi_Browser_set_column_char)(fl_Multi_Browser multi_browser, char c);+  FL_EXPORT_C(const int*, Fl_Multi_Browser_column_widths)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void, Fl_Multi_Browser_set_column_widths)(fl_Multi_Browser multi_browser, const int* arr);+  FL_EXPORT_C(int, Fl_Multi_Browser_displayed)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(void, Fl_Multi_Browser_make_visible)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(void, Fl_Multi_Browser_set_icon)(fl_Multi_Browser multi_browser, int line, fl_Image icon);+  FL_EXPORT_C(fl_Image, Fl_Multi_Browser_icon)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(void, Fl_Multi_Browser_remove_icon)(fl_Multi_Browser multi_browser, int line);+  FL_EXPORT_C(int, Fl_Multi_Browser_select_only)(fl_Multi_Browser multi_browser,void *item);+  FL_EXPORT_C(int, Fl_Multi_Browser_select_only_with_docallbacks)(fl_Multi_Browser multi_browser,void *item,int docallbacks);+  FL_EXPORT_C(int, Fl_Multi_Browser_deselect)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(int, Fl_Multi_Browser_deselect_with_docallbacks)(fl_Multi_Browser multi_browser,int docallbacks);+  FL_EXPORT_C(int, Fl_Multi_Browser_position)(fl_Multi_Browser multi_browser); +  FL_EXPORT_C(void, Fl_Multi_Browser_set_position)(fl_Multi_Browser multi_browser,int pos); // scroll to here+  FL_EXPORT_C(int, Fl_Multi_Browser_hposition)(fl_Multi_Browser multi_browser); +  FL_EXPORT_C(void, Fl_Multi_Browser_set_hposition)(fl_Multi_Browser multi_browser,int); // pan to here+  FL_EXPORT_C(uchar, Fl_Multi_Browser_has_scrollbar)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void, Fl_Multi_Browser_set_has_scrollbar)(fl_Multi_Browser multi_browser,uchar mode); +  FL_EXPORT_C(Fl_Font, Fl_Multi_Browser_textfont)(fl_Multi_Browser multi_browser); +  FL_EXPORT_C(void, Fl_Multi_Browser_set_textfont)(fl_Multi_Browser multi_browser,Fl_Font font); +  FL_EXPORT_C(Fl_Fontsize, Fl_Multi_Browser_textsize)(fl_Multi_Browser multi_browser);  +  FL_EXPORT_C(void, Fl_Multi_Browser_set_textsize)(fl_Multi_Browser multi_browser,Fl_Fontsize newSize); +  FL_EXPORT_C(Fl_Color, Fl_Multi_Browser_textcolor)(fl_Multi_Browser multi_browser); +  FL_EXPORT_C(void, Fl_Multi_Browser_set_textcolor)(fl_Multi_Browser multi_browser,Fl_Color col); +  FL_EXPORT_C(int, Fl_Multi_Browser_scrollbar_size)(fl_Multi_Browser multi_browser); +  FL_EXPORT_C(void, Fl_Multi_Browser_set_scrollbar_size)(fl_Multi_Browser multi_browser,int newSize); +  FL_EXPORT_C(int, Fl_Multi_Browser_scrollbar_width)(fl_Multi_Browser multi_browser); +  FL_EXPORT_C(void, Fl_Multi_Browser_set_scrollbar_width)(fl_Multi_Browser multi_browser,int width); +  FL_EXPORT_C(void, Fl_Multi_Browser_scrollbar_right)(fl_Multi_Browser multi_browser); +  FL_EXPORT_C(void, Fl_Multi_Browser_set_scrollbar_left)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void, Fl_Multi_Browser_sort)(fl_Multi_Browser multi_browser);+  FL_EXPORT_C(void, Fl_Multi_Browser_sort_with_flags)(fl_Multi_Browser multi_browser,int flags);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_MULTI_BROWSER_C__*/
+ c-src/Fl_Multiline_InputC.cpp view
@@ -0,0 +1,416 @@+#include "Fl_Multiline_InputC.h"++#ifdef __cplusplus+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Multiline_Input_handle)(fl_Multiline_Input self, int event){+    return (static_cast<Fl_Multiline_Input*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Multiline_Input_parent)(fl_Multiline_Input multiline_input){+    return (fl_Group) (static_cast<Fl_Multiline_Input*>(multiline_input))->parent();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_parent)(fl_Multiline_Input multiline_input,fl_Group grp){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Multiline_Input_type)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->type();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_type)(fl_Multiline_Input multiline_input,uchar t){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->type(t);+  }++  FL_EXPORT_C(int,Fl_Multiline_Input_x)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->x();+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_y)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->y();+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_w)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->w();+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_h)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->h();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_align)(fl_Multiline_Input multiline_input, Fl_Align alignment){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Multiline_Input_align)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Multiline_Input_box)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->box();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_box)(fl_Multiline_Input multiline_input,Fl_Boxtype new_box){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Multiline_Input_color)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->color();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_color)(fl_Multiline_Input multiline_input,Fl_Color bg){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_color_with_bg_sel)(fl_Multiline_Input multiline_input,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Multiline_Input_selection_color)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_selection_color)(fl_Multiline_Input multiline_input,Fl_Color a){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Multiline_Input_label)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->label();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_copy_label)(fl_Multiline_Input multiline_input,const char* new_label){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_label)(fl_Multiline_Input multiline_input,const char* text){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Multiline_Input_labeltype)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_labeltype)(fl_Multiline_Input multiline_input,Fl_Labeltype a){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_labelcolor)(fl_Multiline_Input multiline_input,Fl_Color c){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Multiline_Input_labelcolor)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Multiline_Input_labelfont)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_labelfont)(fl_Multiline_Input multiline_input,Fl_Font c){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Multiline_Input_labelsize)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_labelsize)(fl_Multiline_Input multiline_input,Fl_Fontsize pix){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Multiline_Input_image)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->image();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_image)(fl_Multiline_Input multiline_input,fl_Image pix){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Multiline_Input_deimage)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->deimage();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_deimage)(fl_Multiline_Input multiline_input,fl_Image pix){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Multiline_Input_tooltip)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_copy_tooltip)(fl_Multiline_Input multiline_input,const char* text){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_tooltip)(fl_Multiline_Input multiline_input,const char* text){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_callback_with_user_data)(fl_Multiline_Input multiline_input,fl_Callback* cb,void* p){+    Fl_Multiline_Input* castedInput_dow = (static_cast<Fl_Multiline_Input*>(multiline_input));+    new C_to_Fl_Callback(castedInput_dow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_callback)(fl_Multiline_Input multiline_input,fl_Callback* cb){+    Fl_Multiline_Input* castedInput_dow = (static_cast<Fl_Multiline_Input*>(multiline_input));+    new C_to_Fl_Callback(castedInput_dow, cb);+  }+  FL_EXPORT_C(void*,Fl_Multiline_Input_user_data)(fl_Multiline_Input multiline_input){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Multiline_Input*>(multiline_input))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Multiline_Input*>(multiline_input))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_user_data)(fl_Multiline_Input multiline_input,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Multiline_Input*>(multiline_input))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Multiline_Input*>(multiline_input))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Multiline_Input*>(multiline_input))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Multiline_Input_argument)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->argument();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_argument)(fl_Multiline_Input multiline_input,long v){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Multiline_Input_when)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->when();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_when)(fl_Multiline_Input multiline_input,uchar i){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Multiline_Input_visible)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->visible();+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_visible_r)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_visible)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->visible();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_clear_visible)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Multiline_Input_active)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->active();+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_active_r)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->active_r();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_activate)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->activate();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_deactivate)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Multiline_Input_output)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->output();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_output)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->output();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_clear_output)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Multiline_Input_takesevents)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_changed)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->changed();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_clear_changed)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_take_focus)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_visible_focus)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_clear_visible_focus)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_modify_visible_focus)(fl_Multiline_Input multiline_input,int v){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Multiline_Input_visible_focus)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_do_callback)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_do_callback_with_widget_and_user_data)(fl_Multiline_Input multiline_input,fl_Widget w,long arg){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_do_callback_with_widget_and_default_user_data)(fl_Multiline_Input multiline_input,fl_Widget w){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_contains)(fl_Multiline_Input multiline_input,fl_Widget w){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_inside)(fl_Multiline_Input multiline_input,fl_Widget w){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_redraw)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->redraw();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_redraw_label)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Multiline_Input_damage)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->damage();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_clear_damage_with_bitmask)(fl_Multiline_Input multiline_input,uchar c){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_clear_damage)(fl_Multiline_Input multiline_input){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_damage_with_text)(fl_Multiline_Input multiline_input,uchar c){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_damage_inside_widget)(fl_Multiline_Input multiline_input,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_draw_label_with_xywh_alignment)(fl_Multiline_Input multiline_input,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_measure_label)(fl_Multiline_Input multiline_input,int* ww,int* hh){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Multiline_Input_window)(fl_Multiline_Input multiline_input){+    return (fl_Window) (static_cast<Fl_Multiline_Input*>(multiline_input))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Multiline_Input_top_window)(fl_Multiline_Input multiline_input){+    return (fl_Window) (static_cast<Fl_Multiline_Input*>(multiline_input))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Multiline_Input_top_window_offset)(fl_Multiline_Input multiline_input, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Multiline_Input*>(multiline_input))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Multiline_Input_as_group)(fl_Multiline_Input multiline_input){+    return (fl_Group) (static_cast<Fl_Multiline_Input*>(multiline_input))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Multiline_Input_as_gl_window)(fl_Multiline_Input multiline_input){+    return (fl_Gl_Window) (static_cast<Fl_Multiline_Input*>(multiline_input))->as_gl_window();+  }+  /* Fl_Multiline_Input specific functions */+  FL_EXPORT_C(fl_Multiline_Input, Fl_Multiline_Input_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Multiline_Input* multiline_input = new Fl_Multiline_Input(x,y,w,h,label);+    return (static_cast<fl_Multiline_Input>(multiline_input));+  }+  FL_EXPORT_C(fl_Multiline_Input, Fl_Multiline_Input_New)(int x, int y, int w, int h) {+    Fl_Multiline_Input* multiline_input = new Fl_Multiline_Input(x,y,w,h,0);+    return (static_cast<fl_Multiline_Input>(multiline_input));+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_Destroy)(fl_Multiline_Input multiline_input){+    delete (static_cast<Fl_Multiline_Input*>(multiline_input));+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_resize)(fl_Multiline_Input multiline_input,int X,int Y,int W,int H){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_set_value)(fl_Multiline_Input multiline_input,const char* text){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->value(text);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_set_value_with_length)(fl_Multiline_Input multiline_input,const char* text,int length){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->value(text,length);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_static_value)(fl_Multiline_Input multiline_input,const char* text){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->static_value(text);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_static_value_with_length)(fl_Multiline_Input multiline_input,const char* text,int length){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->static_value(text,length);+  }+  FL_EXPORT_C(const char*,Fl_Multiline_Input_value)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->value();+  }+  FL_EXPORT_C(Fl_Char,Fl_Multiline_Input_index)(fl_Multiline_Input multiline_input,int i){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->index(i);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_size)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->size();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_size)(fl_Multiline_Input multiline_input,int W,int H){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_maximum_size)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->maximum_size();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_maximum_size)(fl_Multiline_Input multiline_input,int m){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->maximum_size(m);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_position)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->position();+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_mark)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->mark();+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_set_position_with_cursor_mark)(fl_Multiline_Input multiline_input,int p,int m){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->position(p,m);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_set_position_n_n)(fl_Multiline_Input multiline_input,int p){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->position(p);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_set_mark)(fl_Multiline_Input multiline_input,int m){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->mark(m);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_replace)(fl_Multiline_Input multiline_input,int b,int e,const char* text){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->replace(b,e,text);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_replace_with_ilen)(fl_Multiline_Input multiline_input,int b,int e,const char* text,int ilen){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->replace(b,e,text,ilen);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_cut)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->cut();+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_cut_bytes)(fl_Multiline_Input multiline_input,int n){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->cut(n);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_cut_range)(fl_Multiline_Input multiline_input,int a,int b){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->cut(a,b);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_insert)(fl_Multiline_Input multiline_input,const char* t){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->insert(t);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_insert_with_length)(fl_Multiline_Input multiline_input,const char* t,int l){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->insert(t,l);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_copy)(fl_Multiline_Input multiline_input,int clipboard){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->copy(clipboard);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_undo)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->undo();+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_copy_cuts)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->copy_cuts();+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_shortcut)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_shortcut)(fl_Multiline_Input multiline_input,int s){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Font,Fl_Multiline_Input_textfont)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->textfont();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_textfont)(fl_Multiline_Input multiline_input,Fl_Font s){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->textfont(s);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Multiline_Input_textsize)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->textsize();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_textsize)(fl_Multiline_Input multiline_input,Fl_Fontsize s){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->textsize(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_Multiline_Input_textcolor)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_textcolor)(fl_Multiline_Input multiline_input,Fl_Color n){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->textcolor(n);+  }+  FL_EXPORT_C(Fl_Color,Fl_Multiline_Input_cursor_color)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->cursor_color();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_cursor_color)(fl_Multiline_Input multiline_input,Fl_Color n){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->cursor_color(n);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_input_type)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->input_type();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_input_type)(fl_Multiline_Input multiline_input,int t){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->input_type(t);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_readonly)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->readonly();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_readonly)(fl_Multiline_Input multiline_input,int b){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->readonly(b);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_wrap)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->wrap();+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_set_wrap)(fl_Multiline_Input multiline_input,int b){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->wrap(b);+  }+  FL_EXPORT_C(void,Fl_Multiline_Input_tab_nav)(fl_Multiline_Input multiline_input,int val){+    (static_cast<Fl_Multiline_Input*>(multiline_input))->tab_nav(val);+  }+  FL_EXPORT_C(int,Fl_Multiline_Input_set_tab_nav)(fl_Multiline_Input multiline_input){+    return (static_cast<Fl_Multiline_Input*>(multiline_input))->tab_nav();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Multiline_InputC.h view
@@ -0,0 +1,150 @@+#ifndef __FL_MULTILINE_INPUT_C__+#define __FL_MULTILINE_INPUT_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Multiline_Input.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Multiline_Input_handle)(fl_Multiline_Input self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Multiline_Input_parent)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_parent)(fl_Multiline_Input multiline_input, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Multiline_Input_type)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_type)(fl_Multiline_Input multiline_input, uchar t);++  FL_EXPORT_C(int,          Fl_Multiline_Input_x)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(int,          Fl_Multiline_Input_y)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(int,          Fl_Multiline_Input_w)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(int,          Fl_Multiline_Input_h)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_align)(fl_Multiline_Input multiline_input, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Multiline_Input_align)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Multiline_Input_box)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_box)(fl_Multiline_Input multiline_input, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Multiline_Input_color)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_color)(fl_Multiline_Input multiline_input, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_color_with_bg_sel)(fl_Multiline_Input multiline_input,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Multiline_Input_selection_color)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_selection_color)(fl_Multiline_Input multiline_input, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Multiline_Input_label)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_copy_label)(fl_Multiline_Input multiline_input, const char* new_label);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_label)(fl_Multiline_Input multiline_input, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Multiline_Input_labeltype)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_labeltype)(fl_Multiline_Input multiline_input, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Multiline_Input_labelcolor)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_labelcolor)(fl_Multiline_Input multiline_input, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Multiline_Input_labelfont)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_labelfont)(fl_Multiline_Input multiline_input, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Multiline_Input_labelsize)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_labelsize)(fl_Multiline_Input multiline_input, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Multiline_Input_image)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_image)(fl_Multiline_Input multiline_input, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Multiline_Input_deimage)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_deimage)(fl_Multiline_Input multiline_input, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Multiline_Input_tooltip)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_copy_tooltip)(fl_Multiline_Input multiline_input, const char* text);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_tooltip)(fl_Multiline_Input multiline_input, const char* text);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_callback_with_user_data)(fl_Multiline_Input multiline_input, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_callback)(fl_Multiline_Input multiline_input, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Multiline_Input_user_data)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_user_data)(fl_Multiline_Input multiline_input, void* v);+  FL_EXPORT_C(long,         Fl_Multiline_Input_argument)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_argument)(fl_Multiline_Input multiline_input, long v);+  FL_EXPORT_C(Fl_When,      Fl_Multiline_Input_when)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_when)(fl_Multiline_Input multiline_input, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Multiline_Input_visible)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(int,          Fl_Multiline_Input_visible_r)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_visible)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_clear_visible)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(unsigned int, Fl_Multiline_Input_active)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(int,          Fl_Multiline_Input_active_r)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_activate)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_deactivate)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(unsigned int, Fl_Multiline_Input_output)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_output)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_clear_output)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(unsigned int, Fl_Multiline_Input_takesevents)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_changed)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_clear_changed)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(int,          Fl_Multiline_Input_take_focus)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_visible_focus)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_clear_visible_focus)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_modify_visible_focus)(fl_Multiline_Input multiline_input, int v);+  FL_EXPORT_C(unsigned int, Fl_Multiline_Input_visible_focus)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_do_callback)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_do_callback_with_widget_and_user_data)(fl_Multiline_Input multiline_input, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Multiline_Input_do_callback_with_widget_and_default_user_data)(fl_Multiline_Input multiline_input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Multiline_Input_contains)(fl_Multiline_Input multiline_input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Multiline_Input_inside)(fl_Multiline_Input multiline_input, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Multiline_Input_redraw)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_redraw_label)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(uchar,        Fl_Multiline_Input_damage)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_clear_damage_with_bitmask)(fl_Multiline_Input multiline_input, uchar c);+  FL_EXPORT_C(void,         Fl_Multiline_Input_clear_damage)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_damage_with_text)(fl_Multiline_Input multiline_input, uchar c);+  FL_EXPORT_C(void,         Fl_Multiline_Input_damage_inside_widget)(fl_Multiline_Input multiline_input, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Multiline_Input_draw_label_with_xywh_alignment)(fl_Multiline_Input multiline_input, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Multiline_Input_measure_label)(fl_Multiline_Input multiline_input, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Multiline_Input_window)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(fl_Window,    Fl_Multiline_Input_top_window)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(fl_Window ,   Fl_Multiline_Input_top_window_offset)(fl_Multiline_Input multiline_input, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Multiline_Input_as_group)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(fl_Gl_Window, Fl_Multiline_Input_as_gl_window)(fl_Multiline_Input multiline_input);+  /* Fl_Multiline_Input specific functions */+  FL_EXPORT_C(int,      Fl_Multiline_Input_handle)(fl_Multiline_Input multiline_input, int event);+  FL_EXPORT_C(fl_Float_Input, Fl_Multiline_Input_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Float_Input, Fl_Multiline_Input_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,     Fl_Multiline_Input_Destroy)(fl_Multiline_Input multiline_input);++  FL_EXPORT_C(void,         Fl_Multiline_Input_resize)(fl_Multiline_Input multiline_input, int X, int Y, int W, int H);+  FL_EXPORT_C(int,          Fl_Multiline_Input_set_value)(fl_Multiline_Input multiline_input, const char*);+  FL_EXPORT_C(int,          Fl_Multiline_Input_set_value_with_length)(fl_Multiline_Input multiline_input, const char* text, int length);+  FL_EXPORT_C(int,          Fl_Multiline_Input_static_value)(fl_Multiline_Input multiline_input, const char* text);+  FL_EXPORT_C(int,          Fl_Multiline_Input_static_value_with_length)(fl_Multiline_Input multiline_input, const char* text, int length);+  FL_EXPORT_C(const char*,  Fl_Multiline_Input_value)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(Fl_Char,      Fl_Multiline_Input_index)(fl_Multiline_Input multiline_input, int i);+  FL_EXPORT_C(int,          Fl_Multiline_Input_size)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_size)(fl_Multiline_Input multiline_input, int W, int H);+  FL_EXPORT_C(int,          Fl_Multiline_Input_maximum_size)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_maximum_size)(fl_Multiline_Input multiline_input, int m);+  FL_EXPORT_C(int,          Fl_Multiline_Input_position)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(int,          Fl_Multiline_Input_mark)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(int,          Fl_Multiline_Input_set_position_with_cursor_mark)(fl_Multiline_Input multiline_input,int p, int m);+  FL_EXPORT_C(int,          Fl_Multiline_Input_set_position_n_n)(fl_Multiline_Input multiline_input,int p);+  FL_EXPORT_C(int,          Fl_Multiline_Input_set_mark)(fl_Multiline_Input multiline_input,int m);+  FL_EXPORT_C(int,          Fl_Multiline_Input_replace)(fl_Multiline_Input multiline_input,int b, int e, const char *text);+  FL_EXPORT_C(int,          Fl_Multiline_Input_replace_with_ilen)(fl_Multiline_Input multiline_input,int b, int e, const char *text, int ilen);+  FL_EXPORT_C(int,          Fl_Multiline_Input_cut)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(int,          Fl_Multiline_Input_cut_bytes)(fl_Multiline_Input multiline_input,int n);+  FL_EXPORT_C(int,          Fl_Multiline_Input_cut_range)(fl_Multiline_Input multiline_input,int a, int b);+  FL_EXPORT_C(int,          Fl_Multiline_Input_insert)(fl_Multiline_Input multiline_input,const char* t);+  FL_EXPORT_C(int,          Fl_Multiline_Input_insert_with_length)(fl_Multiline_Input multiline_input,const char* t, int l);+  FL_EXPORT_C(int,          Fl_Multiline_Input_copy)(fl_Multiline_Input multiline_input,int clipboard);+  FL_EXPORT_C(int,          Fl_Multiline_Input_undo)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(int,          Fl_Multiline_Input_copy_cuts)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(int,          Fl_Multiline_Input_shortcut)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_shortcut)(fl_Multiline_Input multiline_input,int s);+  FL_EXPORT_C(Fl_Font,      Fl_Multiline_Input_textfont)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_textfont)(fl_Multiline_Input multiline_input,Fl_Font s);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Multiline_Input_textsize)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_textsize)(fl_Multiline_Input multiline_input,Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color,     Fl_Multiline_Input_textcolor)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_textcolor)(fl_Multiline_Input multiline_input,Fl_Color n);+  FL_EXPORT_C(Fl_Color,     Fl_Multiline_Input_cursor_color)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_cursor_color)(fl_Multiline_Input multiline_input,Fl_Color n);+  FL_EXPORT_C(int,          Fl_Multiline_Input_input_type)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_input_type)(fl_Multiline_Input multiline_input,int t);+  FL_EXPORT_C(int,          Fl_Multiline_Input_readonly)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_readonly)(fl_Multiline_Input multiline_input,int b);+  FL_EXPORT_C(int,          Fl_Multiline_Input_wrap)(fl_Multiline_Input multiline_input);+  FL_EXPORT_C(void,         Fl_Multiline_Input_set_wrap)(fl_Multiline_Input multiline_input,int b);+  FL_EXPORT_C(void,         Fl_Multiline_Input_tab_nav)(fl_Multiline_Input multiline_input,int val);+  FL_EXPORT_C(int,          Fl_Multiline_Input_set_tab_nav)(fl_Multiline_Input multiline_input);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_MULTILINE_INPUT_C__*/
+ c-src/Fl_Multiline_OutputC.cpp view
@@ -0,0 +1,416 @@+#include "Fl_Multiline_OutputC.h"++#ifdef __cplusplus+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Multiline_Output_handle)(fl_Multiline_Output self, int event){+    return (static_cast<Fl_Multiline_Output*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Multiline_Output_parent)(fl_Multiline_Output multiline_output){+    return (fl_Group) (static_cast<Fl_Multiline_Output*>(multiline_output))->parent();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_parent)(fl_Multiline_Output multiline_output,fl_Group grp){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Multiline_Output_type)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->type();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_type)(fl_Multiline_Output multiline_output,uchar t){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->type(t);+  }++  FL_EXPORT_C(int,Fl_Multiline_Output_x)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->x();+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_y)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->y();+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_w)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->w();+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_h)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->h();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_align)(fl_Multiline_Output multiline_output, Fl_Align alignment){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Multiline_Output_align)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Multiline_Output_box)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->box();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_box)(fl_Multiline_Output multiline_output,Fl_Boxtype new_box){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Multiline_Output_color)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->color();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_color)(fl_Multiline_Output multiline_output,Fl_Color bg){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_color_with_bg_sel)(fl_Multiline_Output multiline_output,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Multiline_Output_selection_color)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_selection_color)(fl_Multiline_Output multiline_output,Fl_Color a){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Multiline_Output_label)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->label();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_copy_label)(fl_Multiline_Output multiline_output,const char* new_label){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_label)(fl_Multiline_Output multiline_output,const char* text){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Multiline_Output_labeltype)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_labeltype)(fl_Multiline_Output multiline_output,Fl_Labeltype a){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_labelcolor)(fl_Multiline_Output multiline_output,Fl_Color c){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Multiline_Output_labelcolor)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Multiline_Output_labelfont)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_labelfont)(fl_Multiline_Output multiline_output,Fl_Font c){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Multiline_Output_labelsize)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_labelsize)(fl_Multiline_Output multiline_output,Fl_Fontsize pix){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Multiline_Output_image)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->image();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_image)(fl_Multiline_Output multiline_output,fl_Image pix){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Multiline_Output_deimage)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->deimage();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_deimage)(fl_Multiline_Output multiline_output,fl_Image pix){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Multiline_Output_tooltip)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_copy_tooltip)(fl_Multiline_Output multiline_output,const char* text){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_tooltip)(fl_Multiline_Output multiline_output,const char* text){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_callback_with_user_data)(fl_Multiline_Output multiline_output,fl_Callback* cb,void* p){+    Fl_Multiline_Output* castedInput_dow = (static_cast<Fl_Multiline_Output*>(multiline_output));+    new C_to_Fl_Callback(castedInput_dow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_callback)(fl_Multiline_Output multiline_output,fl_Callback* cb){+    Fl_Multiline_Output* castedInput_dow = (static_cast<Fl_Multiline_Output*>(multiline_output));+    new C_to_Fl_Callback(castedInput_dow, cb);+  }+  FL_EXPORT_C(void*,Fl_Multiline_Output_user_data)(fl_Multiline_Output multiline_output){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Multiline_Output*>(multiline_output))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Multiline_Output*>(multiline_output))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_user_data)(fl_Multiline_Output multiline_output,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Multiline_Output*>(multiline_output))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Multiline_Output*>(multiline_output))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Multiline_Output*>(multiline_output))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Multiline_Output_argument)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->argument();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_argument)(fl_Multiline_Output multiline_output,long v){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Multiline_Output_when)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->when();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_when)(fl_Multiline_Output multiline_output,uchar i){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Multiline_Output_visible)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->visible();+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_visible_r)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_visible)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->visible();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_clear_visible)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Multiline_Output_active)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->active();+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_active_r)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->active_r();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_activate)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->activate();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_deactivate)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Multiline_Output_multiline_output)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->output();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_multiline_output)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->output();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_clear_multiline_output)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Multiline_Output_takesevents)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_changed)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->changed();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_clear_changed)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_take_focus)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_visible_focus)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_clear_visible_focus)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_modify_visible_focus)(fl_Multiline_Output multiline_output,int v){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Multiline_Output_visible_focus)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_do_callback)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_do_callback_with_widget_and_user_data)(fl_Multiline_Output multiline_output,fl_Widget w,long arg){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_do_callback_with_widget_and_default_user_data)(fl_Multiline_Output multiline_output,fl_Widget w){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_contains)(fl_Multiline_Output multiline_output,fl_Widget w){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_inside)(fl_Multiline_Output multiline_output,fl_Widget w){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_redraw)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->redraw();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_redraw_label)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Multiline_Output_damage)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->damage();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_clear_damage_with_bitmask)(fl_Multiline_Output multiline_output,uchar c){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_clear_damage)(fl_Multiline_Output multiline_output){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_damage_with_text)(fl_Multiline_Output multiline_output,uchar c){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_damage_inside_widget)(fl_Multiline_Output multiline_output,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_draw_label_with_xywh_alignment)(fl_Multiline_Output multiline_output,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_measure_label)(fl_Multiline_Output multiline_output,int* ww,int* hh){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Multiline_Output_window)(fl_Multiline_Output multiline_output){+    return (fl_Window) (static_cast<Fl_Multiline_Output*>(multiline_output))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Multiline_Output_top_window)(fl_Multiline_Output multiline_output){+    return (fl_Window) (static_cast<Fl_Multiline_Output*>(multiline_output))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Multiline_Output_top_window_offset)(fl_Multiline_Output multiline_output, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Multiline_Output*>(multiline_output))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Multiline_Output_as_group)(fl_Multiline_Output multiline_output){+    return (fl_Group) (static_cast<Fl_Multiline_Output*>(multiline_output))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Multiline_Output_as_gl_window)(fl_Multiline_Output multiline_output){+    return (fl_Gl_Window) (static_cast<Fl_Multiline_Output*>(multiline_output))->as_gl_window();+  }+  /* Fl_Multiline_Output specific functions */+  FL_EXPORT_C(fl_Multiline_Output, Fl_Multiline_Output_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Multiline_Output* multiline_output = new Fl_Multiline_Output(x,y,w,h,label);+    return (static_cast<fl_Multiline_Output>(multiline_output));+  }+  FL_EXPORT_C(fl_Multiline_Output, Fl_Multiline_Output_New)(int x, int y, int w, int h) {+    Fl_Multiline_Output* multiline_output = new Fl_Multiline_Output(x,y,w,h,0);+    return (fl_Multiline_Output)multiline_output;+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_Destroy)(fl_Multiline_Output multiline_output){+    delete (static_cast<Fl_Multiline_Output*>(multiline_output));+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_resize)(fl_Multiline_Output multiline_output,int X,int Y,int W,int H){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_set_value)(fl_Multiline_Output multiline_output,const char* text){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->value(text);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_set_value_with_length)(fl_Multiline_Output multiline_output,const char* text,int length){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->value(text,length);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_static_value)(fl_Multiline_Output multiline_output,const char* text){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->static_value(text);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_static_value_with_length)(fl_Multiline_Output multiline_output,const char* text,int length){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->static_value(text,length);+  }+  FL_EXPORT_C(const char*,Fl_Multiline_Output_value)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->value();+  }+  FL_EXPORT_C(Fl_Char,Fl_Multiline_Output_index)(fl_Multiline_Output multiline_output,int i){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->index(i);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_size)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->size();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_size)(fl_Multiline_Output multiline_output,int W,int H){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_maximum_size)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->maximum_size();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_maximum_size)(fl_Multiline_Output multiline_output,int m){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->maximum_size(m);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_position)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->position();+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_mark)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->mark();+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_set_position_with_cursor_mark)(fl_Multiline_Output multiline_output,int p,int m){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->position(p,m);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_set_position_n_n)(fl_Multiline_Output multiline_output,int p){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->position(p);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_set_mark)(fl_Multiline_Output multiline_output,int m){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->mark(m);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_replace)(fl_Multiline_Output multiline_output,int b,int e,const char* text){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->replace(b,e,text);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_replace_with_ilen)(fl_Multiline_Output multiline_output,int b,int e,const char* text,int ilen){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->replace(b,e,text,ilen);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_cut)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->cut();+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_cut_bytes)(fl_Multiline_Output multiline_output,int n){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->cut(n);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_cut_range)(fl_Multiline_Output multiline_output,int a,int b){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->cut(a,b);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_insert)(fl_Multiline_Output multiline_output,const char* t){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->insert(t);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_insert_with_length)(fl_Multiline_Output multiline_output,const char* t,int l){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->insert(t,l);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_copy)(fl_Multiline_Output multiline_output,int clipboard){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->copy(clipboard);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_undo)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->undo();+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_copy_cuts)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->copy_cuts();+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_shortcut)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_shortcut)(fl_Multiline_Output multiline_output,int s){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Font,Fl_Multiline_Output_textfont)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->textfont();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_textfont)(fl_Multiline_Output multiline_output,Fl_Font s){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->textfont(s);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Multiline_Output_textsize)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->textsize();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_textsize)(fl_Multiline_Output multiline_output,Fl_Fontsize s){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->textsize(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_Multiline_Output_textcolor)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_textcolor)(fl_Multiline_Output multiline_output,Fl_Color n){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->textcolor(n);+  }+  FL_EXPORT_C(Fl_Color,Fl_Multiline_Output_cursor_color)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->cursor_color();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_cursor_color)(fl_Multiline_Output multiline_output,Fl_Color n){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->cursor_color(n);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_input_type)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->input_type();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_input_type)(fl_Multiline_Output multiline_output,int t){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->input_type(t);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_readonly)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->readonly();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_readonly)(fl_Multiline_Output multiline_output,int b){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->readonly(b);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_wrap)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->wrap();+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_set_wrap)(fl_Multiline_Output multiline_output,int b){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->wrap(b);+  }+  FL_EXPORT_C(void,Fl_Multiline_Output_tab_nav)(fl_Multiline_Output multiline_output,int val){+    (static_cast<Fl_Multiline_Output*>(multiline_output))->tab_nav(val);+  }+  FL_EXPORT_C(int,Fl_Multiline_Output_set_tab_nav)(fl_Multiline_Output multiline_output){+    return (static_cast<Fl_Multiline_Output*>(multiline_output))->tab_nav();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Multiline_OutputC.h view
@@ -0,0 +1,150 @@+#ifndef __FL_MULTILINE_OUTPUT_C__+#define __FL_MULTILINE_OUTPUT_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Multiline_Output.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Multiline_Output_handle)(fl_Multiline_Output self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Multiline_Output_parent)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_parent)(fl_Multiline_Output multiline_output, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Multiline_Output_type)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_type)(fl_Multiline_Output multiline_output, uchar t);++  FL_EXPORT_C(int,          Fl_Multiline_Output_x)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(int,          Fl_Multiline_Output_y)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(int,          Fl_Multiline_Output_w)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(int,          Fl_Multiline_Output_h)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_align)(fl_Multiline_Output multiline_output, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Multiline_Output_align)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Multiline_Output_box)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_box)(fl_Multiline_Output multiline_output, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Multiline_Output_color)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_color)(fl_Multiline_Output multiline_output, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_color_with_bg_sel)(fl_Multiline_Output multiline_output,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Multiline_Output_selection_color)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_selection_color)(fl_Multiline_Output multiline_output, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Multiline_Output_label)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_copy_label)(fl_Multiline_Output multiline_output, const char* new_label);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_label)(fl_Multiline_Output multiline_output, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Multiline_Output_labeltype)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_labeltype)(fl_Multiline_Output multiline_output, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Multiline_Output_labelcolor)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_labelcolor)(fl_Multiline_Output multiline_output, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Multiline_Output_labelfont)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_labelfont)(fl_Multiline_Output multiline_output, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Multiline_Output_labelsize)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_labelsize)(fl_Multiline_Output multiline_output, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Multiline_Output_image)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_image)(fl_Multiline_Output multiline_output, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Multiline_Output_deimage)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_deimage)(fl_Multiline_Output multiline_output, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Multiline_Output_tooltip)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_copy_tooltip)(fl_Multiline_Output multiline_output, const char* text);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_tooltip)(fl_Multiline_Output multiline_output, const char* text);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_callback_with_user_data)(fl_Multiline_Output multiline_output, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_callback)(fl_Multiline_Output multiline_output, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Multiline_Output_user_data)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_user_data)(fl_Multiline_Output multiline_output, void* v);+  FL_EXPORT_C(long,         Fl_Multiline_Output_argument)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_argument)(fl_Multiline_Output multiline_output, long v);+  FL_EXPORT_C(Fl_When,      Fl_Multiline_Output_when)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_when)(fl_Multiline_Output multiline_output, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Multiline_Output_visible)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(int,          Fl_Multiline_Output_visible_r)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_visible)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_clear_visible)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(unsigned int, Fl_Multiline_Output_active)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(int,          Fl_Multiline_Output_active_r)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_activate)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_deactivate)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(unsigned int, Fl_Multiline_Output_multiline_output)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_multiline_output)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_clear_multiline_output)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(unsigned int, Fl_Multiline_Output_takesevents)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_changed)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_clear_changed)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(int,          Fl_Multiline_Output_take_focus)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_visible_focus)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_clear_visible_focus)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_modify_visible_focus)(fl_Multiline_Output multiline_output, int v);+  FL_EXPORT_C(unsigned int, Fl_Multiline_Output_visible_focus)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_do_callback)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_do_callback_with_widget_and_user_data)(fl_Multiline_Output multiline_output, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Multiline_Output_do_callback_with_widget_and_default_user_data)(fl_Multiline_Output multiline_output, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Multiline_Output_contains)(fl_Multiline_Output multiline_output, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Multiline_Output_inside)(fl_Multiline_Output multiline_output, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Multiline_Output_redraw)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_redraw_label)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(uchar,        Fl_Multiline_Output_damage)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_clear_damage_with_bitmask)(fl_Multiline_Output multiline_output, uchar c);+  FL_EXPORT_C(void,         Fl_Multiline_Output_clear_damage)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_damage_with_text)(fl_Multiline_Output multiline_output, uchar c);+  FL_EXPORT_C(void,         Fl_Multiline_Output_damage_inside_widget)(fl_Multiline_Output multiline_output, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Multiline_Output_draw_label_with_xywh_alignment)(fl_Multiline_Output multiline_output, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Multiline_Output_measure_label)(fl_Multiline_Output multiline_output, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Multiline_Output_window)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(fl_Window,    Fl_Multiline_Output_top_window)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(fl_Window ,   Fl_Multiline_Output_top_window_offset)(fl_Multiline_Output multiline_output, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Multiline_Output_as_group)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(fl_Gl_Window, Fl_Multiline_Output_as_gl_window)(fl_Multiline_Output multiline_output);+  /* Fl_Multiline_Output specific functions */+  FL_EXPORT_C(int,      Fl_Multiline_Output_handle)(fl_Multiline_Output multiline_output, int event);+  FL_EXPORT_C(fl_Multiline_Output, Fl_Multiline_Output_New_WithLabel)(int x, int y, int w, int h, const char* label); +  FL_EXPORT_C(fl_Multiline_Output, Fl_Multiline_Output_New)(int x, int y, int w, int h); +  FL_EXPORT_C(void,     Fl_Multiline_Output_Destroy)(fl_Multiline_Output multiline_output);+  +  FL_EXPORT_C(void,         Fl_Multiline_Output_resize)(fl_Multiline_Output multiline_output, int X, int Y, int W, int H);+  FL_EXPORT_C(int,          Fl_Multiline_Output_set_value)(fl_Multiline_Output multiline_output, const char*);+  FL_EXPORT_C(int,          Fl_Multiline_Output_set_value_with_length)(fl_Multiline_Output multiline_output, const char* text, int length);+  FL_EXPORT_C(int,          Fl_Multiline_Output_static_value)(fl_Multiline_Output multiline_output, const char* text);+  FL_EXPORT_C(int,          Fl_Multiline_Output_static_value_with_length)(fl_Multiline_Output multiline_output, const char* text, int length);+  FL_EXPORT_C(const char*,  Fl_Multiline_Output_value)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(Fl_Char,      Fl_Multiline_Output_index)(fl_Multiline_Output multiline_output, int i);+  FL_EXPORT_C(int,          Fl_Multiline_Output_size)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_size)(fl_Multiline_Output multiline_output, int W, int H);+  FL_EXPORT_C(int,          Fl_Multiline_Output_maximum_size)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_maximum_size)(fl_Multiline_Output multiline_output, int m);+  FL_EXPORT_C(int,          Fl_Multiline_Output_position)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(int,          Fl_Multiline_Output_mark)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(int,          Fl_Multiline_Output_set_position_with_cursor_mark)(fl_Multiline_Output multiline_output,int p, int m);+  FL_EXPORT_C(int,          Fl_Multiline_Output_set_position_n_n)(fl_Multiline_Output multiline_output,int p);+  FL_EXPORT_C(int,          Fl_Multiline_Output_set_mark)(fl_Multiline_Output multiline_output,int m);+  FL_EXPORT_C(int,          Fl_Multiline_Output_replace)(fl_Multiline_Output multiline_output,int b, int e, const char *text);+  FL_EXPORT_C(int,          Fl_Multiline_Output_replace_with_ilen)(fl_Multiline_Output multiline_output,int b, int e, const char *text, int ilen);+  FL_EXPORT_C(int,          Fl_Multiline_Output_cut)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(int,          Fl_Multiline_Output_cut_bytes)(fl_Multiline_Output multiline_output,int n);+  FL_EXPORT_C(int,          Fl_Multiline_Output_cut_range)(fl_Multiline_Output multiline_output,int a, int b);+  FL_EXPORT_C(int,          Fl_Multiline_Output_insert)(fl_Multiline_Output multiline_output,const char* t);+  FL_EXPORT_C(int,          Fl_Multiline_Output_insert_with_length)(fl_Multiline_Output multiline_output,const char* t, int l);+  FL_EXPORT_C(int,          Fl_Multiline_Output_copy)(fl_Multiline_Output multiline_output,int clipboard);+  FL_EXPORT_C(int,          Fl_Multiline_Output_undo)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(int,          Fl_Multiline_Output_copy_cuts)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(int,          Fl_Multiline_Output_shortcut)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_shortcut)(fl_Multiline_Output multiline_output,int s);+  FL_EXPORT_C(Fl_Font,      Fl_Multiline_Output_textfont)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_textfont)(fl_Multiline_Output multiline_output,Fl_Font s);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Multiline_Output_textsize)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_textsize)(fl_Multiline_Output multiline_output,Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color,     Fl_Multiline_Output_textcolor)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_textcolor)(fl_Multiline_Output multiline_output,Fl_Color n);+  FL_EXPORT_C(Fl_Color,     Fl_Multiline_Output_cursor_color)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_cursor_color)(fl_Multiline_Output multiline_output,Fl_Color n);+  FL_EXPORT_C(int,          Fl_Multiline_Output_input_type)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_input_type)(fl_Multiline_Output multiline_output,int t);+  FL_EXPORT_C(int,          Fl_Multiline_Output_readonly)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_readonly)(fl_Multiline_Output multiline_output,int b);+  FL_EXPORT_C(int,          Fl_Multiline_Output_wrap)(fl_Multiline_Output multiline_output);+  FL_EXPORT_C(void,         Fl_Multiline_Output_set_wrap)(fl_Multiline_Output multiline_output,int b);+  FL_EXPORT_C(void,         Fl_Multiline_Output_tab_nav)(fl_Multiline_Output multiline_output,int val);+  FL_EXPORT_C(int,          Fl_Multiline_Output_set_tab_nav)(fl_Multiline_Output multiline_output);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_MULTILINE_OUTPUT_C__*/
+ c-src/Fl_Native_File_ChooserC.cpp view
@@ -0,0 +1,75 @@+#ifdef __cplusplus+#include "Fl_Native_File_ChooserC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_Native_File_Chooser,Fl_Native_File_Chooser_New_WithVal)(int val){+  Fl_Native_File_Chooser* c = new Fl_Native_File_Chooser(val);+  return (fl_Native_File_Chooser) c;+}+  FL_EXPORT_C(fl_Native_File_Chooser,Fl_Native_File_Chooser_New)( ){+  Fl_Native_File_Chooser* c = new Fl_Native_File_Chooser();+  return (fl_Native_File_Chooser) c;+}+  FL_EXPORT_C(void,Fl_Native_File_Chooser_set_type)(fl_Native_File_Chooser chooser,int type){+  (static_cast<Fl_Native_File_Chooser*>(chooser))->type(type);+}+  FL_EXPORT_C(int,Fl_Native_File_Chooser_type)(fl_Native_File_Chooser chooser){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->type();+}+  FL_EXPORT_C(void,Fl_Native_File_Chooser_set_options)(fl_Native_File_Chooser chooser,int options){+  (static_cast<Fl_Native_File_Chooser*>(chooser))->options(options);+}+  FL_EXPORT_C(int,Fl_Native_File_Chooser_options)(fl_Native_File_Chooser chooser){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->options();+}+  FL_EXPORT_C(int,Fl_Native_File_Chooser_count)(fl_Native_File_Chooser chooser){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->count();+}+  FL_EXPORT_C(const char*,Fl_Native_File_Chooser_filename)(fl_Native_File_Chooser chooser){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->filename();+}+  FL_EXPORT_C(const char*,Fl_Native_File_Chooser_filename_with_i)(fl_Native_File_Chooser chooser,int i){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->filename(i);+}+  FL_EXPORT_C(void,Fl_Native_File_Chooser_set_directory)(fl_Native_File_Chooser chooser,const char *val){+  (static_cast<Fl_Native_File_Chooser*>(chooser))->directory(val);+}+  FL_EXPORT_C(const char*,Fl_Native_File_Chooser_directory)(fl_Native_File_Chooser chooser){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->directory();+}+  FL_EXPORT_C(void,Fl_Native_File_Chooser_set_title)(fl_Native_File_Chooser chooser,const char * title){+  (static_cast<Fl_Native_File_Chooser*>(chooser))->title(title);+}+  FL_EXPORT_C(const char*,Fl_Native_File_Chooser_title)(fl_Native_File_Chooser chooser){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->title();+}+  FL_EXPORT_C(const char*,Fl_Native_File_Chooser_filter)(fl_Native_File_Chooser chooser){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->filter();+}+  FL_EXPORT_C(void,Fl_Native_File_Chooser_set_filter)(fl_Native_File_Chooser chooser,const char * filter){+  (static_cast<Fl_Native_File_Chooser*>(chooser))->filter(filter);+}+  FL_EXPORT_C(int,Fl_Native_File_Chooser_filters)(fl_Native_File_Chooser chooser){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->filters();+}+  FL_EXPORT_C(void,Fl_Native_File_Chooser_set_filter_value)(fl_Native_File_Chooser chooser,int i){+  (static_cast<Fl_Native_File_Chooser*>(chooser))->filter_value(i);+}+  FL_EXPORT_C(int,Fl_Native_File_Chooser_filter_value)(fl_Native_File_Chooser chooser){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->filter_value();+}+  FL_EXPORT_C(void,Fl_Native_File_Chooser_set_preset_file)(fl_Native_File_Chooser chooser,const char* preset_file){+  (static_cast<Fl_Native_File_Chooser*>(chooser))->preset_file(preset_file);+}+  FL_EXPORT_C(const char*,Fl_Native_File_Chooser_preset_file)(fl_Native_File_Chooser chooser){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->preset_file();+}+  FL_EXPORT_C(const char*,Fl_Native_File_Chooser_errmsg)(fl_Native_File_Chooser chooser){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->errmsg();+}+  FL_EXPORT_C(int,Fl_Native_File_Chooser_show)(fl_Native_File_Chooser chooser){+  return (static_cast<Fl_Native_File_Chooser*>(chooser))->show();+}+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Native_File_ChooserC.h view
@@ -0,0 +1,54 @@+#ifndef __FL_NATIVE_FILE_CHOOSER_C__+#define __FL_NATIVE_FILE_CHOOSER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Native_File_Chooser.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+#ifndef INTERNAL_LINKAGE+  enum Type {+    BROWSE_FILE = 0,+    BROWSE_DIRECTORY,+    BROWSE_MULTI_FILE,+    BROWSE_MULTI_DIRECTORY,+    BROWSE_SAVE_FILE,+    BROWSE_SAVE_DIRECTORY+  };+  enum Option {+    NO_OPTIONS     = 0x0000,+    SAVEAS_CONFIRM = 0x0001,+    NEW_FOLDER     = 0x0002,+    PREVIEW        = 0x0004,+    USE_FILTER_EXT = 0x0008+  };+#endif+  FL_EXPORT_C(fl_Native_File_Chooser, Fl_Native_File_Chooser_New_WithVal)(int val);+  FL_EXPORT_C(fl_Native_File_Chooser, Fl_Native_File_Chooser_New)();+  FL_EXPORT_C(void, Fl_Native_File_Chooser_set_type)(fl_Native_File_Chooser chooser, int type);+  FL_EXPORT_C(int, Fl_Native_File_Chooser_type)(fl_Native_File_Chooser chooser);+  FL_EXPORT_C(void, Fl_Native_File_Chooser_set_options)(fl_Native_File_Chooser chooser, int options);+  FL_EXPORT_C(int, Fl_Native_File_Chooser_options)(fl_Native_File_Chooser chooser);+  FL_EXPORT_C(int, Fl_Native_File_Chooser_count)(fl_Native_File_Chooser chooser);+  FL_EXPORT_C(const char*, Fl_Native_File_Chooser_filename)(fl_Native_File_Chooser chooser);+  FL_EXPORT_C(const char*, Fl_Native_File_Chooser_filename_with_i)(fl_Native_File_Chooser chooser, int i);+  FL_EXPORT_C(void, Fl_Native_File_Chooser_set_directory)(fl_Native_File_Chooser chooser, const char *val);+  FL_EXPORT_C(const char*, Fl_Native_File_Chooser_directory)(fl_Native_File_Chooser chooser);+  FL_EXPORT_C(void, Fl_Native_File_Chooser_set_title)(fl_Native_File_Chooser chooser, const char *);+  FL_EXPORT_C(const char*, Fl_Native_File_Chooser_title)(fl_Native_File_Chooser chooser);+  FL_EXPORT_C(const char*, Fl_Native_File_Chooser_filter)(fl_Native_File_Chooser chooser);+  FL_EXPORT_C(void, Fl_Native_File_Chooser_set_filter)(fl_Native_File_Chooser chooser, const char *);+  FL_EXPORT_C(int, Fl_Native_File_Chooser_filters)(fl_Native_File_Chooser chooser);+  FL_EXPORT_C(void, Fl_Native_File_Chooser_set_filter_value)(fl_Native_File_Chooser chooser, int i);+  FL_EXPORT_C(int, Fl_Native_File_Chooser_filter_value)(fl_Native_File_Chooser chooser);+  FL_EXPORT_C(void, Fl_Native_File_Chooser_set_preset_file)(fl_Native_File_Chooser chooser, const char*);+  FL_EXPORT_C(const char*, Fl_Native_File_Chooser_preset_file)(fl_Native_File_Chooser chooser);+  FL_EXPORT_C(const char*, Fl_Native_File_Chooser_errmsg)(fl_Native_File_Chooser chooser);+  FL_EXPORT_C(int, Fl_Native_File_Chooser_show)(fl_Native_File_Chooser chooser);+#ifdef __cplusplus+}+#endif+#endif /* __FL_NATIVE_FILE_CHOOSER_C__ */
+ c-src/Fl_OutputC.cpp view
@@ -0,0 +1,416 @@+#include "Fl_OutputC.h"++#ifdef __cplusplus+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Output_handle)(fl_Output self, int event){+    return (static_cast<Fl_Output*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Output_parent)(fl_Output output){+    return (fl_Group) (static_cast<Fl_Output*>(output))->parent();+  }+  FL_EXPORT_C(void,Fl_Output_set_parent)(fl_Output output,fl_Group grp){+    (static_cast<Fl_Output*>(output))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Output_type)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->type();+  }+  FL_EXPORT_C(void,Fl_Output_set_type)(fl_Output output,uchar t){+    (static_cast<Fl_Output*>(output))->type(t);+  }++  FL_EXPORT_C(int,Fl_Output_x)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->x();+  }+  FL_EXPORT_C(int,Fl_Output_y)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->y();+  }+  FL_EXPORT_C(int,Fl_Output_w)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->w();+  }+  FL_EXPORT_C(int,Fl_Output_h)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->h();+  }+  FL_EXPORT_C(void,Fl_Output_set_align)(fl_Output output, Fl_Align alignment){+    (static_cast<Fl_Output*>(output))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Output_align)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Output_box)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->box();+  }+  FL_EXPORT_C(void,Fl_Output_set_box)(fl_Output output,Fl_Boxtype new_box){+    (static_cast<Fl_Output*>(output))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Output_color)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->color();+  }+  FL_EXPORT_C(void,Fl_Output_set_color)(fl_Output output,Fl_Color bg){+    (static_cast<Fl_Output*>(output))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Output_set_color_with_bg_sel)(fl_Output output,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Output*>(output))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Output_selection_color)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Output_set_selection_color)(fl_Output output,Fl_Color a){+    (static_cast<Fl_Output*>(output))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Output_label)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->label();+  }+  FL_EXPORT_C(void,Fl_Output_copy_label)(fl_Output output,const char* new_label){+    (static_cast<Fl_Output*>(output))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Output_set_label)(fl_Output output,const char* text){+    (static_cast<Fl_Output*>(output))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Output_labeltype)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Output_set_labeltype)(fl_Output output,Fl_Labeltype a){+    (static_cast<Fl_Output*>(output))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Output_set_labelcolor)(fl_Output output,Fl_Color c){+    (static_cast<Fl_Output*>(output))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Output_labelcolor)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Output_labelfont)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Output_set_labelfont)(fl_Output output,Fl_Font c){+    (static_cast<Fl_Output*>(output))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Output_labelsize)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Output_set_labelsize)(fl_Output output,Fl_Fontsize pix){+    (static_cast<Fl_Output*>(output))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Output_image)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->image();+  }+  FL_EXPORT_C(void,Fl_Output_set_image)(fl_Output output,fl_Image pix){+    (static_cast<Fl_Output*>(output))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Output_deimage)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->deimage();+  }+  FL_EXPORT_C(void,Fl_Output_set_deimage)(fl_Output output,fl_Image pix){+    (static_cast<Fl_Output*>(output))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Output_tooltip)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Output_copy_tooltip)(fl_Output output,const char* text){+    (static_cast<Fl_Output*>(output))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Output_set_tooltip)(fl_Output output,const char* text){+    (static_cast<Fl_Output*>(output))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Output_set_callback_with_user_data)(fl_Output output,fl_Callback* cb,void* p){+    Fl_Output* castedInput_dow = (static_cast<Fl_Output*>(output));+    new C_to_Fl_Callback(castedInput_dow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Output_set_callback)(fl_Output output,fl_Callback* cb){+    Fl_Output* castedInput_dow = (static_cast<Fl_Output*>(output));+    new C_to_Fl_Callback(castedInput_dow, cb);+  }+  FL_EXPORT_C(void*,Fl_Output_user_data)(fl_Output output){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Output*>(output))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Output*>(output))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Output_set_user_data)(fl_Output output,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Output*>(output))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Output*>(output))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Output*>(output))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Output_argument)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->argument();+  }+  FL_EXPORT_C(void,Fl_Output_set_argument)(fl_Output output,long v){+    (static_cast<Fl_Output*>(output))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Output_when)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->when();+  }+  FL_EXPORT_C(void,Fl_Output_set_when)(fl_Output output,uchar i){+    (static_cast<Fl_Output*>(output))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Output_visible)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->visible();+  }+  FL_EXPORT_C(int,Fl_Output_visible_r)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Output_set_visible)(fl_Output output){+    (static_cast<Fl_Output*>(output))->visible();+  }+  FL_EXPORT_C(void,Fl_Output_clear_visible)(fl_Output output){+    (static_cast<Fl_Output*>(output))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Output_active)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->active();+  }+  FL_EXPORT_C(int,Fl_Output_active_r)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->active_r();+  }+  FL_EXPORT_C(void,Fl_Output_activate)(fl_Output output){+    (static_cast<Fl_Output*>(output))->activate();+  }+  FL_EXPORT_C(void,Fl_Output_deactivate)(fl_Output output){+    (static_cast<Fl_Output*>(output))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Output_output)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->output();+  }+  FL_EXPORT_C(void,Fl_Output_set_output)(fl_Output output){+    (static_cast<Fl_Output*>(output))->output();+  }+  FL_EXPORT_C(void,Fl_Output_clear_output)(fl_Output output){+    (static_cast<Fl_Output*>(output))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Output_takesevents)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Output_set_changed)(fl_Output output){+    (static_cast<Fl_Output*>(output))->changed();+  }+  FL_EXPORT_C(void,Fl_Output_clear_changed)(fl_Output output){+    (static_cast<Fl_Output*>(output))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Output_take_focus)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Output_set_visible_focus)(fl_Output output){+    (static_cast<Fl_Output*>(output))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Output_clear_visible_focus)(fl_Output output){+    (static_cast<Fl_Output*>(output))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Output_modify_visible_focus)(fl_Output output,int v){+    (static_cast<Fl_Output*>(output))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Output_visible_focus)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Output_do_callback)(fl_Output output){+    (static_cast<Fl_Output*>(output))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Output_do_callback_with_widget_and_user_data)(fl_Output output,fl_Widget w,long arg){+    (static_cast<Fl_Output*>(output))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Output_do_callback_with_widget_and_default_user_data)(fl_Output output,fl_Widget w){+    (static_cast<Fl_Output*>(output))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Output_contains)(fl_Output output,fl_Widget w){+    return (static_cast<Fl_Output*>(output))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Output_inside)(fl_Output output,fl_Widget w){+    return (static_cast<Fl_Output*>(output))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Output_redraw)(fl_Output output){+    (static_cast<Fl_Output*>(output))->redraw();+  }+  FL_EXPORT_C(void,Fl_Output_redraw_label)(fl_Output output){+    (static_cast<Fl_Output*>(output))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Output_damage)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->damage();+  }+  FL_EXPORT_C(void,Fl_Output_clear_damage_with_bitmask)(fl_Output output,uchar c){+    (static_cast<Fl_Output*>(output))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Output_clear_damage)(fl_Output output){+    (static_cast<Fl_Output*>(output))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Output_damage_with_text)(fl_Output output,uchar c){+    (static_cast<Fl_Output*>(output))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Output_damage_inside_widget)(fl_Output output,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Output*>(output))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Output_draw_label_with_xywh_alignment)(fl_Output output,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Output*>(output))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Output_measure_label)(fl_Output output,int* ww,int* hh){+    (static_cast<Fl_Output*>(output))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Output_window)(fl_Output output){+    return (fl_Window) (static_cast<Fl_Output*>(output))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Output_top_window)(fl_Output output){+    return (fl_Window) (static_cast<Fl_Output*>(output))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Output_top_window_offset)(fl_Output output, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Output*>(output))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Output_as_group)(fl_Output output){+    return (fl_Group) (static_cast<Fl_Output*>(output))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Output_as_gl_window)(fl_Output output){+    return (fl_Gl_Window) (static_cast<Fl_Output*>(output))->as_gl_window();+  }+  /* Fl_Output specific functions */+  FL_EXPORT_C(fl_Output, Fl_Output_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Output* output = new Fl_Output(x,y,w,h,label);+    return (static_cast<fl_Output>(output));+  }+  FL_EXPORT_C(fl_Output, Fl_Output_New)(int x, int y, int w, int h) {+    Fl_Output* output = new Fl_Output(x,y,w,h,0);+    return (fl_Output)output;+  }+  FL_EXPORT_C(void,Fl_Output_Destroy)(fl_Output output){+    delete (static_cast<Fl_Output*>(output));+  }+  FL_EXPORT_C(void,Fl_Output_resize)(fl_Output output,int X,int Y,int W,int H){+    (static_cast<Fl_Output*>(output))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(int,Fl_Output_set_value)(fl_Output output,const char* text){+    return (static_cast<Fl_Output*>(output))->value(text);+  }+  FL_EXPORT_C(int,Fl_Output_set_value_with_length)(fl_Output output,const char* text,int length){+    return (static_cast<Fl_Output*>(output))->value(text,length);+  }+  FL_EXPORT_C(int,Fl_Output_static_value)(fl_Output output,const char* text){+    return (static_cast<Fl_Output*>(output))->static_value(text);+  }+  FL_EXPORT_C(int,Fl_Output_static_value_with_length)(fl_Output output,const char* text,int length){+    return (static_cast<Fl_Output*>(output))->static_value(text,length);+  }+  FL_EXPORT_C(const char*,Fl_Output_value)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->value();+  }+  FL_EXPORT_C(Fl_Char,Fl_Output_index)(fl_Output output,int i){+    return (static_cast<Fl_Output*>(output))->index(i);+  }+  FL_EXPORT_C(int,Fl_Output_size)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->size();+  }+  FL_EXPORT_C(void,Fl_Output_set_size)(fl_Output output,int W,int H){+    (static_cast<Fl_Output*>(output))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_Output_maximum_size)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->maximum_size();+  }+  FL_EXPORT_C(void,Fl_Output_set_maximum_size)(fl_Output output,int m){+    (static_cast<Fl_Output*>(output))->maximum_size(m);+  }+  FL_EXPORT_C(int,Fl_Output_position)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->position();+  }+  FL_EXPORT_C(int,Fl_Output_mark)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->mark();+  }+  FL_EXPORT_C(int,Fl_Output_set_position_with_cursor_mark)(fl_Output output,int p,int m){+    return (static_cast<Fl_Output*>(output))->position(p,m);+  }+  FL_EXPORT_C(int,Fl_Output_set_position_n_n)(fl_Output output,int p){+    return (static_cast<Fl_Output*>(output))->position(p);+  }+  FL_EXPORT_C(int,Fl_Output_set_mark)(fl_Output output,int m){+    return (static_cast<Fl_Output*>(output))->mark(m);+  }+  FL_EXPORT_C(int,Fl_Output_replace)(fl_Output output,int b,int e,const char* text){+    return (static_cast<Fl_Output*>(output))->replace(b,e,text);+  }+  FL_EXPORT_C(int,Fl_Output_replace_with_ilen)(fl_Output output,int b,int e,const char* text,int ilen){+    return (static_cast<Fl_Output*>(output))->replace(b,e,text,ilen);+  }+  FL_EXPORT_C(int,Fl_Output_cut)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->cut();+  }+  FL_EXPORT_C(int,Fl_Output_cut_bytes)(fl_Output output,int n){+    return (static_cast<Fl_Output*>(output))->cut(n);+  }+  FL_EXPORT_C(int,Fl_Output_cut_range)(fl_Output output,int a,int b){+    return (static_cast<Fl_Output*>(output))->cut(a,b);+  }+  FL_EXPORT_C(int,Fl_Output_insert)(fl_Output output,const char* t){+    return (static_cast<Fl_Output*>(output))->insert(t);+  }+  FL_EXPORT_C(int,Fl_Output_insert_with_length)(fl_Output output,const char* t,int l){+    return (static_cast<Fl_Output*>(output))->insert(t,l);+  }+  FL_EXPORT_C(int,Fl_Output_copy)(fl_Output output,int clipboard){+    return (static_cast<Fl_Output*>(output))->copy(clipboard);+  }+  FL_EXPORT_C(int,Fl_Output_undo)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->undo();+  }+  FL_EXPORT_C(int,Fl_Output_copy_cuts)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->copy_cuts();+  }+  FL_EXPORT_C(int,Fl_Output_shortcut)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Output_set_shortcut)(fl_Output output,int s){+    (static_cast<Fl_Output*>(output))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Font,Fl_Output_textfont)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->textfont();+  }+  FL_EXPORT_C(void,Fl_Output_set_textfont)(fl_Output output,Fl_Font s){+    (static_cast<Fl_Output*>(output))->textfont(s);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Output_textsize)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->textsize();+  }+  FL_EXPORT_C(void,Fl_Output_set_textsize)(fl_Output output,Fl_Fontsize s){+    (static_cast<Fl_Output*>(output))->textsize(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_Output_textcolor)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Output_set_textcolor)(fl_Output output,Fl_Color n){+    (static_cast<Fl_Output*>(output))->textcolor(n);+  }+  FL_EXPORT_C(Fl_Color,Fl_Output_cursor_color)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->cursor_color();+  }+  FL_EXPORT_C(void,Fl_Output_set_cursor_color)(fl_Output output,Fl_Color n){+    (static_cast<Fl_Output*>(output))->cursor_color(n);+  }+  FL_EXPORT_C(int,Fl_Output_input_type)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->input_type();+  }+  FL_EXPORT_C(void,Fl_Output_set_input_type)(fl_Output output,int t){+    (static_cast<Fl_Output*>(output))->input_type(t);+  }+  FL_EXPORT_C(int,Fl_Output_readonly)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->readonly();+  }+  FL_EXPORT_C(void,Fl_Output_set_readonly)(fl_Output output,int b){+    (static_cast<Fl_Output*>(output))->readonly(b);+  }+  FL_EXPORT_C(int,Fl_Output_wrap)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->wrap();+  }+  FL_EXPORT_C(void,Fl_Output_set_wrap)(fl_Output output,int b){+    (static_cast<Fl_Output*>(output))->wrap(b);+  }+  FL_EXPORT_C(void,Fl_Output_tab_nav)(fl_Output output,int val){+    (static_cast<Fl_Output*>(output))->tab_nav(val);+  }+  FL_EXPORT_C(int,Fl_Output_set_tab_nav)(fl_Output output){+    return (static_cast<Fl_Output*>(output))->tab_nav();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_OutputC.h view
@@ -0,0 +1,150 @@+#ifndef __FL_OUTPUT_C__+#define __FL_OUTPUT_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Output.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Output_handle)(fl_Output self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Output_parent)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_parent)(fl_Output output, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Output_type)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_type)(fl_Output output, uchar t);++  FL_EXPORT_C(int,          Fl_Output_x)(fl_Output output);+  FL_EXPORT_C(int,          Fl_Output_y)(fl_Output output);+  FL_EXPORT_C(int,          Fl_Output_w)(fl_Output output);+  FL_EXPORT_C(int,          Fl_Output_h)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_align)(fl_Output output, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Output_align)(fl_Output output);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Output_box)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_box)(fl_Output output, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Output_color)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_color)(fl_Output output, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Output_set_color_with_bg_sel)(fl_Output output,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Output_selection_color)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_selection_color)(fl_Output output, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Output_label)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_copy_label)(fl_Output output, const char* new_label);+  FL_EXPORT_C(void,         Fl_Output_set_label)(fl_Output output, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Output_labeltype)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_labeltype)(fl_Output output, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Output_labelcolor)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_labelcolor)(fl_Output output, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Output_labelfont)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_labelfont)(fl_Output output, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Output_labelsize)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_labelsize)(fl_Output output, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Output_image)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_image)(fl_Output output, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Output_deimage)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_deimage)(fl_Output output, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Output_tooltip)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_copy_tooltip)(fl_Output output, const char* text);+  FL_EXPORT_C(void,         Fl_Output_set_tooltip)(fl_Output output, const char* text);+  FL_EXPORT_C(void,         Fl_Output_set_callback_with_user_data)(fl_Output output, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Output_set_callback)(fl_Output output, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Output_user_data)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_user_data)(fl_Output output, void* v);+  FL_EXPORT_C(long,         Fl_Output_argument)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_argument)(fl_Output output, long v);+  FL_EXPORT_C(Fl_When,      Fl_Output_when)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_when)(fl_Output output, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Output_visible)(fl_Output output);+  FL_EXPORT_C(int,          Fl_Output_visible_r)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_visible)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_clear_visible)(fl_Output output);+  FL_EXPORT_C(unsigned int, Fl_Output_active)(fl_Output output);+  FL_EXPORT_C(int,          Fl_Output_active_r)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_activate)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_deactivate)(fl_Output output);+  FL_EXPORT_C(unsigned int, Fl_Output_output)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_output)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_clear_output)(fl_Output output);+  FL_EXPORT_C(unsigned int, Fl_Output_takesevents)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_changed)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_clear_changed)(fl_Output output);+  FL_EXPORT_C(int,          Fl_Output_take_focus)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_visible_focus)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_clear_visible_focus)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_modify_visible_focus)(fl_Output output, int v);+  FL_EXPORT_C(unsigned int, Fl_Output_visible_focus)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_do_callback)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_do_callback_with_widget_and_user_data)(fl_Output output, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Output_do_callback_with_widget_and_default_user_data)(fl_Output output, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Output_contains)(fl_Output output, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Output_inside)(fl_Output output, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Output_redraw)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_redraw_label)(fl_Output output);+  FL_EXPORT_C(uchar,        Fl_Output_damage)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_clear_damage_with_bitmask)(fl_Output output, uchar c);+  FL_EXPORT_C(void,         Fl_Output_clear_damage)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_damage_with_text)(fl_Output output, uchar c);+  FL_EXPORT_C(void,         Fl_Output_damage_inside_widget)(fl_Output output, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Output_draw_label_with_xywh_alignment)(fl_Output output, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Output_measure_label)(fl_Output output, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Output_window)(fl_Output output);+  FL_EXPORT_C(fl_Window,    Fl_Output_top_window)(fl_Output output);+  FL_EXPORT_C(fl_Window ,   Fl_Output_top_window_offset)(fl_Output output, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Output_as_group)(fl_Output output);+  FL_EXPORT_C(fl_Gl_Window, Fl_Output_as_gl_window)(fl_Output output);+  /* Fl_Output specific functions */+  FL_EXPORT_C(int,      Fl_Output_handle)(fl_Output output, int event);+  FL_EXPORT_C(fl_Output, Fl_Output_New_WithLabel)(int x, int y, int w, int h, const char* label); +  FL_EXPORT_C(fl_Output, Fl_Output_New)(int x, int y, int w, int h); +  FL_EXPORT_C(void,     Fl_Output_Destroy)(fl_Output output);+  +  FL_EXPORT_C(void,         Fl_Output_resize)(fl_Output output, int X, int Y, int W, int H);+  FL_EXPORT_C(int,          Fl_Output_set_value)(fl_Output output, const char*);+  FL_EXPORT_C(int,          Fl_Output_set_value_with_length)(fl_Output output, const char* text, int length);+  FL_EXPORT_C(int,          Fl_Output_static_value)(fl_Output output, const char* text);+  FL_EXPORT_C(int,          Fl_Output_static_value_with_length)(fl_Output output, const char* text, int length);+  FL_EXPORT_C(const char*,  Fl_Output_value)(fl_Output output);+  FL_EXPORT_C(Fl_Char,      Fl_Output_index)(fl_Output output, int i);+  FL_EXPORT_C(int,          Fl_Output_size)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_size)(fl_Output output, int W, int H);+  FL_EXPORT_C(int,          Fl_Output_maximum_size)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_maximum_size)(fl_Output output, int m);+  FL_EXPORT_C(int,          Fl_Output_position)(fl_Output output);+  FL_EXPORT_C(int,          Fl_Output_mark)(fl_Output output);+  FL_EXPORT_C(int,          Fl_Output_set_position_with_cursor_mark)(fl_Output output,int p, int m);+  FL_EXPORT_C(int,          Fl_Output_set_position_n_n)(fl_Output output,int p);+  FL_EXPORT_C(int,          Fl_Output_set_mark)(fl_Output output,int m);+  FL_EXPORT_C(int,          Fl_Output_replace)(fl_Output output,int b, int e, const char *text);+  FL_EXPORT_C(int,          Fl_Output_replace_with_ilen)(fl_Output output,int b, int e, const char *text, int ilen);+  FL_EXPORT_C(int,          Fl_Output_cut)(fl_Output output);+  FL_EXPORT_C(int,          Fl_Output_cut_bytes)(fl_Output output,int n);+  FL_EXPORT_C(int,          Fl_Output_cut_range)(fl_Output output,int a, int b);+  FL_EXPORT_C(int,          Fl_Output_insert)(fl_Output output,const char* t);+  FL_EXPORT_C(int,          Fl_Output_insert_with_length)(fl_Output output,const char* t, int l);+  FL_EXPORT_C(int,          Fl_Output_copy)(fl_Output output,int clipboard);+  FL_EXPORT_C(int,          Fl_Output_undo)(fl_Output output);+  FL_EXPORT_C(int,          Fl_Output_copy_cuts)(fl_Output output);+  FL_EXPORT_C(int,          Fl_Output_shortcut)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_shortcut)(fl_Output output,int s);+  FL_EXPORT_C(Fl_Font,      Fl_Output_textfont)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_textfont)(fl_Output output,Fl_Font s);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Output_textsize)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_textsize)(fl_Output output,Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color,     Fl_Output_textcolor)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_textcolor)(fl_Output output,Fl_Color n);+  FL_EXPORT_C(Fl_Color,     Fl_Output_cursor_color)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_cursor_color)(fl_Output output,Fl_Color n);+  FL_EXPORT_C(int,          Fl_Output_input_type)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_input_type)(fl_Output output,int t);+  FL_EXPORT_C(int,          Fl_Output_readonly)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_readonly)(fl_Output output,int b);+  FL_EXPORT_C(int,          Fl_Output_wrap)(fl_Output output);+  FL_EXPORT_C(void,         Fl_Output_set_wrap)(fl_Output output,int b);+  FL_EXPORT_C(void,         Fl_Output_tab_nav)(fl_Output output,int val);+  FL_EXPORT_C(int,          Fl_Output_set_tab_nav)(fl_Output output);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_OUTPUT_C__*/
+ c-src/Fl_Overlay_WindowC.cpp view
@@ -0,0 +1,545 @@+#include "Fl_WindowC.h"+#include "Fl_Overlay_WindowC.h"++#ifdef __cplusplus+Fl_DerivedOverlay_Window::Fl_DerivedOverlay_Window(int X, int Y, int W, int H, const char *l, void (*draw_overlay_fp)(fl_Overlay_Window)):Fl_Overlay_Window(X,Y,W,H,l){+  this->draw_overlay_fp = draw_overlay_fp;+}+Fl_DerivedOverlay_Window::Fl_DerivedOverlay_Window(int X, int Y, int W, int H, void (*draw_overlay_fp)(fl_Overlay_Window)):Fl_Overlay_Window(X,Y,W,H,0){+  this->draw_overlay_fp = draw_overlay_fp;+}+Fl_DerivedOverlay_Window::Fl_DerivedOverlay_Window(int W, int H, const char *l, void (*draw_overlay_fp)(fl_Overlay_Window)):Fl_Overlay_Window(W,H,l){+  this->draw_overlay_fp = draw_overlay_fp;+}+Fl_DerivedOverlay_Window::Fl_DerivedOverlay_Window(int W, int H, void (*draw_overlay_fp)(fl_Overlay_Window)):Fl_Overlay_Window(W,H,0) {+  this->draw_overlay_fp = draw_overlay_fp;+}+void Fl_DerivedOverlay_Window::draw_overlay() {+  (*draw_overlay_fp)((fl_Overlay_Window) this);+}+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Overlay_Window_handle)(fl_Overlay_Window self, int event){+    return (static_cast<Fl_DerivedOverlay_Window*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Overlay_Window_parent)(fl_Overlay_Window win){+    return (fl_Group) (static_cast<Fl_DerivedOverlay_Window*>(win))->parent();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_parent)(fl_Overlay_Window win,fl_Group grp){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Overlay_Window_type)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->type();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_type)(fl_Overlay_Window win,uchar t){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->type(t);+  }++  FL_EXPORT_C(int,Fl_Overlay_Window_x)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->x();+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_y)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->y();+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_w)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->w();+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_h)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->h();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_align)(fl_Overlay_Window double_window, Fl_Align alignment){+    (static_cast<Fl_DerivedOverlay_Window*>(double_window))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Overlay_Window_align)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Overlay_Window_box)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->box();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_box)(fl_Overlay_Window win,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Overlay_Window_color)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->color();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_color)(fl_Overlay_Window win,Fl_Color bg){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_color_with_bg_sel)(fl_Overlay_Window win,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Overlay_Window_selection_color)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_selection_color)(fl_Overlay_Window win,Fl_Color a){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Overlay_Window_label)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->label();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_copy_label)(fl_Overlay_Window win,const char* new_label){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_label)(fl_Overlay_Window win,const char* text){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Overlay_Window_labeltype)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_labeltype)(fl_Overlay_Window win,Fl_Labeltype a){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_labelcolor)(fl_Overlay_Window win,Fl_Color c){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Overlay_Window_labelcolor)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Overlay_Window_labelfont)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_labelfont)(fl_Overlay_Window win,Fl_Font c){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Overlay_Window_labelsize)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_labelsize)(fl_Overlay_Window win,Fl_Fontsize pix){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Overlay_Window_image)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->image();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_image)(fl_Overlay_Window win,fl_Image pix){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Overlay_Window_deimage)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->deimage();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_deimage)(fl_Overlay_Window win,fl_Image pix){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Overlay_Window_tooltip)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_copy_tooltip)(fl_Overlay_Window win,const char* text){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_tooltip)(fl_Overlay_Window win,const char* text){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_callback_with_user_data)(fl_Overlay_Window win,fl_Callback* cb,void* p){+    Fl_Overlay_Window* castedWindow = (static_cast<Fl_DerivedOverlay_Window*>(win));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_callback)(fl_Overlay_Window win,fl_Callback* cb){+    Fl_Overlay_Window* castedWindow = (static_cast<Fl_DerivedOverlay_Window*>(win));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Overlay_Window_user_data)(fl_Overlay_Window win){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedOverlay_Window*>(win))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedOverlay_Window*>(win))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_user_data)(fl_Overlay_Window win,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedOverlay_Window*>(win))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_DerivedOverlay_Window*>(win))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_DerivedOverlay_Window*>(win))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Overlay_Window_argument)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->argument();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_argument)(fl_Overlay_Window win,long v){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Overlay_Window_when)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->when();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_when)(fl_Overlay_Window win,uchar i){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_visible)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->visible();+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_visible_r)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_visible)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->visible();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_clear_visible)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_active)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->active();+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_active_r)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->active_r();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_activate)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->activate();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_deactivate)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_output)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_output)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_clear_output)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_takesevents)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_changed)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->changed();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_clear_changed)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_take_focus)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_visible_focus)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_clear_visible_focus)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_modify_visible_focus)(fl_Overlay_Window win,int v){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_visible_focus)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_do_callback)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_do_callback_with_widget_and_user_data)(fl_Overlay_Window win,fl_Widget w,long arg){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_do_callback_with_widget_and_default_user_data)(fl_Overlay_Window win,fl_Widget w){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_contains)(fl_Overlay_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_inside)(fl_Overlay_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_redraw)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->redraw();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_redraw_label)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Overlay_Window_damage)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->damage();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_clear_damage_with_bitmask)(fl_Overlay_Window win,uchar c){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_clear_damage)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_damage_with_text)(fl_Overlay_Window win,uchar c){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_damage_inside_widget)(fl_Overlay_Window win,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_draw_label_with_xywh_alignment)(fl_Overlay_Window win,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_measure_label)(fl_Overlay_Window win,int* ww,int* hh){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Overlay_Window_window)(fl_Overlay_Window double_window){+    return (fl_Window) (static_cast<Fl_DerivedOverlay_Window*>(double_window))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Overlay_Window_top_window)(fl_Overlay_Window double_window){+    return (fl_Window) (static_cast<Fl_DerivedOverlay_Window*>(double_window))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Overlay_Window_top_window_offset)(fl_Overlay_Window double_window, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedOverlay_Window*>(double_window))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Overlay_Window_as_group)(fl_Overlay_Window win){+    return (fl_Group) (static_cast<Fl_DerivedOverlay_Window*>(win))->as_group();+  }+  FL_EXPORT_C(fl_Window,Fl_Overlay_Window_as_window)(fl_Overlay_Window win){+    return (fl_Window) (static_cast<Fl_DerivedOverlay_Window*>(win))->as_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Overlay_Window_as_gl_window)(fl_Overlay_Window win){+    return (fl_Gl_Window) (static_cast<Fl_DerivedOverlay_Window*>(win))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_begin)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->begin();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_end)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->end();+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_find)(fl_Overlay_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_add)(fl_Overlay_Window win,fl_Widget w){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->add((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_insert)(fl_Overlay_Window win,fl_Widget w,int i){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->insert(*(static_cast<Fl_Widget*>(w)),i);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_remove_index)(fl_Overlay_Window win,int index){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->remove(index);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_remove_widget)(fl_Overlay_Window win,fl_Widget w){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->remove((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_clear)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->clear();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_resizable_by_reference)(fl_Overlay_Window win,fl_Widget o){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_resizable)(fl_Overlay_Window win,fl_Widget o){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Overlay_Window_resizable)(fl_Overlay_Window win){+    return (fl_Widget)(static_cast<Fl_DerivedOverlay_Window*>(win))->resizable();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_add_resizable)(fl_Overlay_Window win,fl_Widget o){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_init_sizes)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->init_sizes();+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_children)(fl_Overlay_Window self){+    return (static_cast<Fl_DerivedOverlay_Window*>(self))->children();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_clip_children)(fl_Overlay_Window win,int c){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_clip_children)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_focus)(fl_Overlay_Window win, fl_Widget W){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Overlay_Window__ddfdesign_kludge)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(void, Fl_Overlay_Window_insert_with_before)(fl_Overlay_Window self, fl_Widget w, fl_Widget before){+    (static_cast<Fl_DerivedOverlay_Window*>(self))->insert(*(static_cast<Fl_Widget*>(w)),(static_cast<Fl_Widget*>(before)));+  }+  FL_EXPORT_C(fl_Widget*, Fl_Overlay_Window_array)(fl_Overlay_Window self){+    return (fl_Widget*)(static_cast<Fl_DerivedOverlay_Window*>(self))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Overlay_Window_child)(fl_Overlay_Window self, int n){+    return (fl_Widget)(static_cast<Fl_DerivedOverlay_Window*>(self))->child(n);+  }+  // FL_EXPORT_C(void,Fl_Overlay_Window_forms_end)(fl_Overlay_Window win){+  //   return (static_cast<Fl_DerivedOverlay_Window*>(win))->forms_end();+  // }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_changed)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->changed();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_fullscreen)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->fullscreen();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_fullscreen_off)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->fullscreen_off();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_fullscreen_off_with_resize)(fl_Overlay_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->fullscreen_off(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_hide)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->hide();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_show)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->show();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_show_with_args)(fl_Overlay_Window win,int argc,char** argv){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->show(argc,argv);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_Destroy)(fl_Overlay_Window win){+    delete (static_cast<Fl_DerivedOverlay_Window*>(win));+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_resize)(fl_Overlay_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_iconize)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->iconize();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_flush)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->flush();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_border)(fl_Overlay_Window win,int b){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->border(b);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_clear_border)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->clear_border();+  }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_border)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->border();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_override)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->set_override();+  }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_override)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->override();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_modal)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->set_modal();+  }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_modal)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->modal();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_non_modal)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->set_non_modal();+  }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_non_modal)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->non_modal();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_menu_window)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->set_menu_window();+  }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_menu_window)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->menu_window();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_tooltip_window)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->set_tooltip_window();+  }+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_tooltip_window)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->tooltip_window();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_hotspot_with_x_y)(fl_Overlay_Window win,int x,int y){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->hotspot(x,y);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_hotspot_with_x_y_with_offscreen)(fl_Overlay_Window win,int x,int y,int offscreen){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->hotspot(x,y,offscreen);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_hotspot_with_widget)(fl_Overlay_Window win,fl_Widget w){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->hotspot((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_hotspot_with_widget_with_offscreen)(fl_Overlay_Window win,fl_Widget w,int offscreen){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->hotspot((static_cast<Fl_Widget*>(w)),offscreen);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_free_position)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->free_position();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_size_range)(fl_Overlay_Window win,int minw,int minh){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->size_range(minw,minh);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_size_range_with_args)(fl_Overlay_Window win,int minw,int minh,fl_Window_size_range_args* ptr){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->size_range(minw,minh,ptr->maxw, ptr->maxh, ptr->dw,ptr->dh,ptr->aspect);+  }+  FL_EXPORT_C(const char*,Fl_Overlay_Window_iconlabel)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->iconlabel();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_iconlabel)(fl_Overlay_Window win,const char* label){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->iconlabel(label);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_label_with_iconlabel)(fl_Overlay_Window win,const char* label,const char* iconlabel){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->label(label,iconlabel);+  }+  FL_EXPORT_C(const char*,Fl_Overlay_Window_xclass)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->xclass();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_xclass)(fl_Overlay_Window win,const char* c){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->xclass(c);+  }+  FL_EXPORT_C(const void*,Fl_Overlay_Window_icon)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->icon();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_icon)(fl_Overlay_Window win,const void * ic){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->icon(ic);+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_shown)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->shown();+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_x_root)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->x_root();+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_y_root)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->y_root();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_make_current)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->make_current();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_cursor_with_bg)(fl_Overlay_Window win,Fl_Cursor cursor,Fl_Color bg){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->cursor(cursor,bg);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_cursor_with_fg)(fl_Overlay_Window win,Fl_Cursor cursor,Fl_Color fg){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->cursor(cursor,fg);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_cursor_with_fg_bg)(fl_Overlay_Window win,Fl_Cursor cursor,Fl_Color fg,Fl_Color bg){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->cursor(cursor,fg,bg);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_cursor)(fl_Overlay_Window win,Fl_Cursor cursor){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->cursor(cursor);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_default_cursor_with_bg)(fl_Overlay_Window win,Fl_Cursor cursor,Fl_Color bg){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->default_cursor(cursor,bg);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_default_cursor_with_fg)(fl_Overlay_Window win,Fl_Cursor cursor,Fl_Color fg){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->default_cursor(cursor,fg);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_default_cursor_with_fg_bg)(fl_Overlay_Window win,Fl_Cursor cursor,Fl_Color fg,Fl_Color bg){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->default_cursor(cursor,fg,bg);+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_set_default_cursor)(fl_Overlay_Window win,Fl_Cursor cursor){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->default_cursor(cursor);+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_decorated_w)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->decorated_w();+  }+  FL_EXPORT_C(int,Fl_Overlay_Window_decorated_h)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->decorated_h();+  }+  FL_EXPORT_C(void, Fl_Overlay_Window_set_default_xclass)(const char* label){+    Fl_Overlay_Window::default_xclass(label);+  }+  FL_EXPORT_C(const char*, Fl_Overlay_Window_default_xclass)(){+    return Fl_Overlay_Window::default_xclass();+  }+  FL_EXPORT_C(fl_Window, Fl_Overlay_Window_current)(){+    return (fl_Window)Fl_Overlay_Window::current();+  }+  FL_EXPORT_C(void, Fl_Overlay_Window_default_callback)(fl_Overlay_Window win, void* v){+    Fl_Overlay_Window::default_callback((static_cast<Fl_DerivedOverlay_Window*>(win)), v);+  }+  FL_EXPORT_C(int, Fl_Overlay_Window_can_do_overlay)(fl_Overlay_Window win){+    return (static_cast<Fl_DerivedOverlay_Window*>(win))->can_do_overlay();+  }+  FL_EXPORT_C(void,Fl_Overlay_Window_redraw_overlay)(fl_Overlay_Window win){+    (static_cast<Fl_DerivedOverlay_Window*>(win))->redraw_overlay();+  }+  FL_EXPORT_C(fl_Overlay_Window, Fl_Overlay_Window_New_WithLabel)(int w, int h, const char* title,void (*draw_overlay_fp)(fl_Overlay_Window)) {+  Fl_DerivedOverlay_Window* window = new Fl_DerivedOverlay_Window(w,h,title, draw_overlay_fp);+  return (static_cast<fl_Overlay_Window>(window));+}+  FL_EXPORT_C(fl_Overlay_Window, Fl_Overlay_Window_New)(int w, int h,void (*draw_overlay_fp)(fl_Overlay_Window)) {+  Fl_DerivedOverlay_Window* window = new Fl_DerivedOverlay_Window(w,h,0,draw_overlay_fp);+  return (fl_Overlay_Window)window;+  }+  FL_EXPORT_C(fl_Overlay_Window, Fl_Overlay_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title,void (*draw_overlay_fp)(fl_Overlay_Window)) {+  Fl_DerivedOverlay_Window* window = new Fl_DerivedOverlay_Window(x,y,w,h,title,draw_overlay_fp);+    return (fl_Overlay_Window)window;+  }+  FL_EXPORT_C(fl_Overlay_Window, Fl_Overlay_Window_NewXY)(int x, int y, int w, int h,void (*draw_overlay_fp)(fl_Overlay_Window)) {+  Fl_DerivedOverlay_Window* window = new Fl_DerivedOverlay_Window(x,y,w,h,0,draw_overlay_fp);+  return (fl_Overlay_Window)window;+}+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Overlay_WindowC.h view
@@ -0,0 +1,207 @@+#ifndef __FL_OVERLAY_WINDOW_C__+#define __FL_OVERLAY_WINDOW_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Overlay_Window.H"+#include "Fl_WindowC.h"+#include "Fl_CallbackC.h"+EXPORT {+  class Fl_DerivedOverlay_Window : public Fl_Overlay_Window {+  private:+    void (*draw_overlay_fp)(fl_Overlay_Window);+  public:+    void draw_overlay();+    Fl_DerivedOverlay_Window(int X, int Y, int W, int H, const char *l, void (*can_draw_fp)(fl_Overlay_Window));+    Fl_DerivedOverlay_Window(int X, int Y, int W, int H, void (*can_draw_fp)(fl_Overlay_Window));+    Fl_DerivedOverlay_Window(int W, int H, const char *l, void (*can_draw_fp)(fl_Overlay_Window));+    Fl_DerivedOverlay_Window(int W, int H, void (*can_draw_fp)(fl_Overlay_Window));+  };+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Overlay_Window_handle)(fl_Overlay_Window self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Overlay_Window_parent)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_parent)(fl_Overlay_Window win, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Overlay_Window_type)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_type)(fl_Overlay_Window win, uchar t);++  FL_EXPORT_C(int,          Fl_Overlay_Window_x)(fl_Overlay_Window win);+  FL_EXPORT_C(int,          Fl_Overlay_Window_y)(fl_Overlay_Window win);+  FL_EXPORT_C(int,          Fl_Overlay_Window_w)(fl_Overlay_Window win);+  FL_EXPORT_C(int,          Fl_Overlay_Window_h)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_align)(fl_Overlay_Window double_window, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Overlay_Window_align)(fl_Overlay_Window win);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Overlay_Window_box)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_box)(fl_Overlay_Window win, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Overlay_Window_color)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_color)(fl_Overlay_Window win, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_color_with_bg_sel)(fl_Overlay_Window win,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Overlay_Window_selection_color)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_selection_color)(fl_Overlay_Window win, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Overlay_Window_label)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_copy_label)(fl_Overlay_Window win, const char* new_label);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_label)(fl_Overlay_Window win, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Overlay_Window_labeltype)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_labeltype)(fl_Overlay_Window win, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Overlay_Window_labelcolor)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_labelcolor)(fl_Overlay_Window win, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Overlay_Window_labelfont)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_labelfont)(fl_Overlay_Window win, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Overlay_Window_labelsize)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_labelsize)(fl_Overlay_Window win, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Overlay_Window_image)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_image)(fl_Overlay_Window win, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Overlay_Window_deimage)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_deimage)(fl_Overlay_Window win, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Overlay_Window_tooltip)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_copy_tooltip)(fl_Overlay_Window win, const char* text);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_tooltip)(fl_Overlay_Window win, const char* text);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_callback_with_user_data)(fl_Overlay_Window win, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_callback)(fl_Overlay_Window win, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Overlay_Window_user_data)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_user_data)(fl_Overlay_Window win, void* v);+  FL_EXPORT_C(long,         Fl_Overlay_Window_argument)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_argument)(fl_Overlay_Window win, long v);+  FL_EXPORT_C(Fl_When,      Fl_Overlay_Window_when)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_when)(fl_Overlay_Window win, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Overlay_Window_visible)(fl_Overlay_Window win);+  FL_EXPORT_C(int,          Fl_Overlay_Window_visible_r)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_visible)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_clear_visible)(fl_Overlay_Window win);+  FL_EXPORT_C(unsigned int, Fl_Overlay_Window_active)(fl_Overlay_Window win);+  FL_EXPORT_C(int,          Fl_Overlay_Window_active_r)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_activate)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_deactivate)(fl_Overlay_Window win);+  FL_EXPORT_C(unsigned int, Fl_Overlay_Window_output)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_output)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_clear_output)(fl_Overlay_Window win);+  FL_EXPORT_C(unsigned int, Fl_Overlay_Window_takesevents)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_changed)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_clear_changed)(fl_Overlay_Window win);+  FL_EXPORT_C(int,          Fl_Overlay_Window_take_focus)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_visible_focus)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_clear_visible_focus)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_modify_visible_focus)(fl_Overlay_Window win, int v);+  FL_EXPORT_C(unsigned int, Fl_Overlay_Window_visible_focus)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_do_callback)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_do_callback_with_widget_and_user_data)(fl_Overlay_Window win, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Overlay_Window_do_callback_with_widget_and_default_user_data)(fl_Overlay_Window win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Overlay_Window_contains)(fl_Overlay_Window win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Overlay_Window_inside)(fl_Overlay_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Overlay_Window_redraw)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_redraw_label)(fl_Overlay_Window win);+  FL_EXPORT_C(uchar,        Fl_Overlay_Window_damage)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_clear_damage_with_bitmask)(fl_Overlay_Window win, uchar c);+  FL_EXPORT_C(void,         Fl_Overlay_Window_clear_damage)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_damage_with_text)(fl_Overlay_Window win, uchar c);+  FL_EXPORT_C(void,         Fl_Overlay_Window_damage_inside_widget)(fl_Overlay_Window win, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Overlay_Window_draw_label_with_xywh_alignment)(fl_Overlay_Window win, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Overlay_Window_measure_label)(fl_Overlay_Window win, int* ww , int* hh);+  FL_EXPORT_C(fl_Group,     Fl_Overlay_Window_as_group)(fl_Overlay_Window win);+  FL_EXPORT_C(fl_Gl_Window, Fl_Overlay_Window_as_gl_window)(fl_Overlay_Window win);+  FL_EXPORT_C(fl_Window, Fl_Overlay_Window_as_window)(fl_Overlay_Window win);+  FL_EXPORT_C(fl_Window,    Fl_Overlay_Window_window)(fl_Overlay_Window double_window);+  FL_EXPORT_C(fl_Window,    Fl_Overlay_Window_top_window)(fl_Overlay_Window double_window);+  FL_EXPORT_C(fl_Window ,   Fl_Overlay_Window_top_window_offset)(fl_Overlay_Window double_window, int* xoff, int* yoff);+  /* Inherited from Fl_Group */+  FL_EXPORT_C(void,         Fl_Overlay_Window_begin)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_end)(fl_Overlay_Window win);+  FL_EXPORT_C(int,          Fl_Overlay_Window_find)(fl_Overlay_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Overlay_Window_add)(fl_Overlay_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Overlay_Window_insert)(fl_Overlay_Window win, fl_Widget w, int i);+  FL_EXPORT_C(void,         Fl_Overlay_Window_remove_index)(fl_Overlay_Window win, int index);+  FL_EXPORT_C(void,         Fl_Overlay_Window_remove_widget)(fl_Overlay_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Overlay_Window_clear)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_resizable_by_reference)(fl_Overlay_Window win,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_resizable)(fl_Overlay_Window win,fl_Widget o);+  FL_EXPORT_C(fl_Widget,         Fl_Overlay_Window_resizable)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_add_resizable)(fl_Overlay_Window win,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Overlay_Window_init_sizes)(fl_Overlay_Window win);+  FL_EXPORT_C(int,          Fl_Overlay_Window_children)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_set_clip_children)(fl_Overlay_Window win,int c);+  FL_EXPORT_C(unsigned int, Fl_Overlay_Window_clip_children)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_focus)(fl_Overlay_Window win,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Overlay_Window__ddfdesign_kludge)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_insert_with_before)(fl_Overlay_Window self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Overlay_Window_array)(fl_Overlay_Window self);+  FL_EXPORT_C(fl_Widget,    Fl_Overlay_Window_child)(fl_Overlay_Window self, int n);+  FL_EXPORT_C(void,         Fl_Overlay_Window_forms_end)(fl_Overlay_Window self);+  /* FL_EXPORT_C(void,         Fl_Overlay_Window_forms_end)(fl_Overlay_Window win); */+  /* Fl_Window inherited */+  FL_EXPORT_C(unsigned int, Fl_Overlay_Window_changed)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_fullscreen)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_fullscreen_off)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_fullscreen_off_with_resize)(fl_Overlay_Window win,int X,int Y,int W,int H);+  FL_EXPORT_C(void,         Fl_Overlay_Window_iconize)(fl_Overlay_Window win);++  FL_EXPORT_C(int ,Fl_Overlay_Window_handle)(fl_Overlay_Window win, int event);+  FL_EXPORT_C(void ,Fl_Overlay_Window_set_border)(fl_Overlay_Window win, int b);+  FL_EXPORT_C(void ,Fl_Overlay_Window_clear_border)(fl_Overlay_Window win);+  FL_EXPORT_C(unsigned int ,Fl_Overlay_Window_border)(fl_Overlay_Window win);+  FL_EXPORT_C(void ,Fl_Overlay_Window_set_override)(fl_Overlay_Window win);+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_override)(fl_Overlay_Window win);+  FL_EXPORT_C(void ,Fl_Overlay_Window_set_modal)(fl_Overlay_Window win);+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_modal)(fl_Overlay_Window win);+  FL_EXPORT_C(void ,Fl_Overlay_Window_set_non_modal)(fl_Overlay_Window win);+  FL_EXPORT_C(unsigned int ,Fl_Overlay_Window_non_modal)(fl_Overlay_Window win);+  FL_EXPORT_C(void ,Fl_Overlay_Window_set_menu_window)(fl_Overlay_Window win);+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_menu_window)(fl_Overlay_Window win);+  FL_EXPORT_C(void ,Fl_Overlay_Window_set_tooltip_window)(fl_Overlay_Window win);+  FL_EXPORT_C(unsigned int,Fl_Overlay_Window_tooltip_window)(fl_Overlay_Window win);+  FL_EXPORT_C(void ,Fl_Overlay_Window_hotspot_with_x_y)(fl_Overlay_Window win, int x, int y);+  FL_EXPORT_C(void ,Fl_Overlay_Window_hotspot_with_x_y_with_offscreen)(fl_Overlay_Window win, int x, int y, int offscreen);+  FL_EXPORT_C(void ,Fl_Overlay_Window_hotspot_with_widget)(fl_Overlay_Window win, fl_Widget w);//, int offscreen = 0);+  FL_EXPORT_C(void ,Fl_Overlay_Window_hotspot_with_widget_with_offscreen)(fl_Overlay_Window win, fl_Widget w, int offscreen);+  FL_EXPORT_C(void ,Fl_Overlay_Window_free_position)(fl_Overlay_Window win);+  FL_EXPORT_C(void ,Fl_Overlay_Window_size_range)(fl_Overlay_Window win, int minw, int minh);+  FL_EXPORT_C(void ,Fl_Overlay_Window_size_range_with_args)(fl_Window win, int minw, int minh, fl_Window_size_range_args* args);//int maxw=0, int maxh=0, int dw=0, int dh=0, int aspect=0);+  FL_EXPORT_C(const char*, Fl_Overlay_Window_label)(fl_Overlay_Window win);+  FL_EXPORT_C(const char*, Fl_Overlay_Window_iconlabel)(fl_Overlay_Window win);+  FL_EXPORT_C(void, Fl_Overlay_Window_set_label)(fl_Overlay_Window win,const char*);+  FL_EXPORT_C(void, Fl_Overlay_Window_set_iconlabel)(fl_Overlay_Window win,const char*);+  FL_EXPORT_C(void, Fl_Overlay_Window_set_label_with_iconlabel)(fl_Overlay_Window win,const char* label, const char* iconlabel);+  FL_EXPORT_C(void, Fl_Overlay_Window_copy_label)(fl_Overlay_Window win,const char* a);+  FL_EXPORT_C(void, Fl_Overlay_Window_set_default_xclass)(const char* label);+  FL_EXPORT_C(const char*, Fl_Overlay_Window_default_xclass)();+  FL_EXPORT_C(const char*, Fl_Overlay_Window_xclass)(fl_Overlay_Window win);+  FL_EXPORT_C(void, Fl_Overlay_Window_set_xclass)(fl_Overlay_Window win,const char* c);+  FL_EXPORT_C(const void*, Fl_Overlay_Window_icon)(fl_Overlay_Window win);+  FL_EXPORT_C(void, Fl_Overlay_Window_set_icon)(fl_Overlay_Window win,const void * ic);+  FL_EXPORT_C(int, Fl_Overlay_Window_shown)(fl_Overlay_Window win);+  FL_EXPORT_C(void, Fl_Overlay_Window_iconize)(fl_Overlay_Window win);+  FL_EXPORT_C(int, Fl_Overlay_Window_x_root)(fl_Overlay_Window win);+  FL_EXPORT_C(int, Fl_Overlay_Window_y_root)(fl_Overlay_Window win);+  FL_EXPORT_C(fl_Overlay_Window, Fl_Overlay_Window_current)();+  FL_EXPORT_C(void, Fl_Overlay_Window_make_current)(fl_Overlay_Window win);+  FL_EXPORT_C(void, Fl_Overlay_Window_set_cursor_with_bg)(fl_Overlay_Window win, Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void, Fl_Overlay_Window_set_cursor_with_fg)(fl_Overlay_Window win,Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void, Fl_Overlay_Window_set_cursor_with_fg_bg)(fl_Overlay_Window win,Fl_Cursor cursor, Fl_Color fg , Fl_Color bg );/* =FL_BLACK *//*=FL_WHITE*/+  FL_EXPORT_C(void, Fl_Overlay_Window_set_cursor)(fl_Overlay_Window win,Fl_Cursor cursor);+  FL_EXPORT_C(void, Fl_Overlay_Window_set_default_cursor_with_bg)(fl_Overlay_Window win,Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void, Fl_Overlay_Window_set_default_cursor_with_fg)(fl_Overlay_Window win, Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void, Fl_Overlay_Window_set_default_cursor_with_fg_bg)(fl_Overlay_Window win,Fl_Cursor cursor, Fl_Color fg , Fl_Color bg );+  FL_EXPORT_C(void, Fl_Overlay_Window_set_default_cursor)(fl_Overlay_Window win,Fl_Cursor cursor);+  FL_EXPORT_C(void, Fl_Overlay_Window_default_callback)(fl_Overlay_Window win, void* v);+  FL_EXPORT_C(int, Fl_Overlay_Window_decorated_w)(fl_Overlay_Window win);+  FL_EXPORT_C(int, Fl_Overlay_Window_decorated_h)(fl_Overlay_Window win);+  /* Fl_Overlay_Window specific */+  FL_EXPORT_C(void,         Fl_Overlay_Window_show)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_show_with_args)(fl_Overlay_Window win, int argc, char** argv);+  FL_EXPORT_C(void,         Fl_Overlay_Window_flush)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_resize)(fl_Overlay_Window win, int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Overlay_Window_hide)(fl_Overlay_Window win);+  FL_EXPORT_C(int,          Fl_Overlay_Window_can_do_overlay)(fl_Overlay_Window win);+  FL_EXPORT_C(void,         Fl_Overlay_Window_redraw_overlay)(fl_Overlay_Window win);++  FL_EXPORT_C(fl_Overlay_Window,    Fl_Overlay_Window_New_WithLabel)(int w, int h, const char* title, void (*draw_overlay_fp)(fl_Overlay_Window));+  FL_EXPORT_C(fl_Overlay_Window,    Fl_Overlay_Window_New)(int w, int h, void (*draw_overlay_fp)(fl_Overlay_Window));+  FL_EXPORT_C(fl_Overlay_Window,    Fl_Overlay_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title, void (*draw_overlay_fp)(fl_Overlay_Window));+  FL_EXPORT_C(fl_Overlay_Window,    Fl_Overlay_Window_NewXY)(int x, int y, int w, int h, void (*draw_overlay_fp)(fl_Overlay_Window));+  FL_EXPORT_C(void,         Fl_Overlay_Window_Destroy)(fl_Overlay_Window win);+#ifdef __cplusplus+}+#endif++#endif /* __FL_OVERLAY_WINDOW_C__ */
+ c-src/Fl_PNM_ImageC.cpp view
@@ -0,0 +1,65 @@+#include "Fl_PNM_ImageC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(fl_PNM_Image, Fl_PNM_Image_New)(const char* filename){+    Fl_PNM_Image* i = new Fl_PNM_Image(filename);+    return (fl_PNM_Image)i;+  }+  FL_EXPORT_C(void, Fl_PNM_Image_Destroy)(fl_PNM_Image image){+    delete (static_cast<Fl_PNM_Image*>(image));+  }+  FL_EXPORT_C(int,Fl_PNM_Image_w)(fl_PNM_Image image){+    return (static_cast<Fl_PNM_Image*>(image))->w();+  }+  FL_EXPORT_C(int,Fl_PNM_Image_h)(fl_PNM_Image image){+    return (static_cast<Fl_PNM_Image*>(image))->h();+  }+  FL_EXPORT_C(int,Fl_PNM_Image_d)(fl_PNM_Image image){+    return (static_cast<Fl_PNM_Image*>(image))->d();+  }+  FL_EXPORT_C(int,Fl_PNM_Image_ld)(fl_PNM_Image image){+    return (static_cast<Fl_PNM_Image*>(image))->ld();+  }+  FL_EXPORT_C(int,Fl_PNM_Image_count)(fl_PNM_Image image){+    return (static_cast<Fl_PNM_Image*>(image))->count();+  }+  FL_EXPORT_C(fl_PNM_Image,Fl_PNM_Image_copy_with_w_h)(fl_PNM_Image image,int W,int H){+    return (fl_PNM_Image)(static_cast<Fl_PNM_Image*>(image))->copy(W,H);+  }+  FL_EXPORT_C(fl_PNM_Image,Fl_PNM_Image_copy)(fl_PNM_Image image){+    return (fl_PNM_Image)(static_cast<Fl_PNM_Image*>(image))->copy();+  }+  FL_EXPORT_C(void,Fl_PNM_Image_color_average)(fl_PNM_Image image,Fl_Color c,float i){+    return (static_cast<Fl_PNM_Image*>(image))->color_average(c,i);+  }+  FL_EXPORT_C(void,Fl_PNM_Image_inactive)(fl_PNM_Image image){+    return (static_cast<Fl_PNM_Image*>(image))->inactive();+  }+  FL_EXPORT_C(void,Fl_PNM_Image_desaturate)(fl_PNM_Image image){+    return (static_cast<Fl_PNM_Image*>(image))->desaturate();+  }+  FL_EXPORT_C(void,Fl_PNM_Image_label)(fl_PNM_Image image,fl_Widget w){+    return (static_cast<Fl_PNM_Image*>(image))->label((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_PNM_Image_label_with_menu_item)(fl_PNM_Image image,fl_Menu_Item m){+    return (static_cast<Fl_PNM_Image*>(image))->label((static_cast<Fl_Menu_Item*>(m)));+  }+  FL_EXPORT_C(void,Fl_PNM_Image_draw_with_cx_cy)(fl_PNM_Image image,int X,int Y,int W,int H,int cx,int cy){+    return (static_cast<Fl_PNM_Image*>(image))->draw(X,Y,W,H,cx,cy);+  }+  FL_EXPORT_C(void,Fl_PNM_Image_draw_with_cx)(fl_PNM_Image image,int X,int Y,int W,int H,int cx){+    return (static_cast<Fl_PNM_Image*>(image))->draw(X,Y,W,H,cx);+  }+  FL_EXPORT_C(void,Fl_PNM_Image_draw_with_cy)(fl_PNM_Image image,int X,int Y,int W,int H,int cy){+    return (static_cast<Fl_PNM_Image*>(image))->draw(X,Y,W,H,0,cy);+  }+  FL_EXPORT_C(void,Fl_PNM_Image_draw)(fl_PNM_Image image,int X,int Y){+    return (static_cast<Fl_PNM_Image*>(image))->draw(X,Y);+  }+  FL_EXPORT_C(void,Fl_PNM_Image_uncache)(fl_PNM_Image image){+    return (static_cast<Fl_PNM_Image*>(image))->uncache();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_PNM_ImageC.h view
@@ -0,0 +1,34 @@+#ifndef __FL_IMAGE_C__+#define __FL_IMAGE_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_PNM_Image.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_PNM_Image, Fl_PNM_Image_New)(const char* filename);+  FL_EXPORT_C(void, Fl_PNM_Image_Destroy)(fl_PNM_Image image);+  FL_EXPORT_C(int, Fl_PNM_Image_w)(fl_PNM_Image image);+  FL_EXPORT_C(int, Fl_PNM_Image_h)(fl_PNM_Image image);+  FL_EXPORT_C(int, Fl_PNM_Image_d)(fl_PNM_Image image);+  FL_EXPORT_C(int, Fl_PNM_Image_ld)(fl_PNM_Image image);+  FL_EXPORT_C(int, Fl_PNM_Image_count)(fl_PNM_Image image);+  FL_EXPORT_C(fl_PNM_Image, Fl_PNM_Image_copy_with_w_h)(fl_PNM_Image image,int W, int H);+  FL_EXPORT_C(fl_PNM_Image, Fl_PNM_Image_copy)(fl_PNM_Image image);+  FL_EXPORT_C(void, Fl_PNM_Image_color_average)(fl_PNM_Image image,Fl_Color c, float i);+  FL_EXPORT_C(void, Fl_PNM_Image_inactive)(fl_PNM_Image image);+  FL_EXPORT_C(void, Fl_PNM_Image_desaturate)(fl_PNM_Image image);+  FL_EXPORT_C(void, Fl_PNM_Image_label)(fl_PNM_Image image,fl_Widget w);+  FL_EXPORT_C(void, Fl_PNM_Image_label_with_menu_item)(fl_PNM_Image image,fl_Menu_Item m);+  FL_EXPORT_C(void, Fl_PNM_Image_draw_with_cx_cy)(fl_PNM_Image image,int X, int Y, int W, int H, int cx, int cy);+  FL_EXPORT_C(void, Fl_PNM_Image_draw_with_cx)(fl_PNM_Image image,int X, int Y, int W, int H, int cx);+  FL_EXPORT_C(void, Fl_PNM_Image_draw_with_cy)(fl_PNM_Image image,int X, int Y, int W, int H, int cy);+  FL_EXPORT_C(void, Fl_PNM_Image_draw)(fl_PNM_Image image,int X, int Y);+  FL_EXPORT_C(void, Fl_PNM_Image_uncache)(fl_PNM_Image image);+#ifdef __cplusplus+}+#endif+#endif /* __FL_xxx_C__ */
+ c-src/Fl_Paged_DeviceC.cpp view
@@ -0,0 +1,106 @@+#include "Fl_Paged_DeviceC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(const char*,Fl_Paged_Device_class_id)( ){+    return Fl_Surface_Device::class_id;+  }+  FL_EXPORT_C(const char*,Fl_Paged_Device_class_name)(fl_Paged_Device paged_device){+    return (static_cast<Fl_Paged_Device*>(paged_device))->class_name();+  }+  FL_EXPORT_C(void,Fl_Paged_Device_set_current)(fl_Paged_Device paged_device){+    return (static_cast<Fl_Paged_Device*>(paged_device))->set_current();+  }+  FL_EXPORT_C(void,Fl_Paged_Device_set_driver)(fl_Paged_Device paged_device,fl_Graphics_Driver graphics_driver){+    return (static_cast<Fl_Paged_Device*>(paged_device))->driver((static_cast<Fl_Graphics_Driver*>(graphics_driver)));+  }+  FL_EXPORT_C(fl_Graphics_Driver,Fl_Paged_Device_driver)(fl_Paged_Device paged_device){+    return (fl_Graphics_Driver)(static_cast<Fl_Paged_Device*>(paged_device))->driver();+  }+  FL_EXPORT_C(fl_Surface_Device,Fl_Paged_Device_surface)(){+    return (fl_Surface_Device)Fl_Surface_Device::surface();+  }+  FL_EXPORT_C(int,Fl_Paged_Device_start_job)(fl_Paged_Device paged_device,int pagecount){+    return (static_cast<Fl_Paged_Device*>(paged_device))->start_job(pagecount);+  }+  FL_EXPORT_C(int,Fl_Paged_Device_start_job_with_frompage)(fl_Paged_Device paged_device,int pagecount,int* frompage){+    return (static_cast<Fl_Paged_Device*>(paged_device))->start_job(pagecount,frompage);+  }+  FL_EXPORT_C(int,Fl_Paged_Device_start_job_with_topage)(fl_Paged_Device paged_device,int pagecount,int* topage){+    return (static_cast<Fl_Paged_Device*>(paged_device))->start_job(pagecount,NULL,topage);+  }+  FL_EXPORT_C(int,Fl_Paged_Device_start_job_with_frompage_topage)(fl_Paged_Device paged_device,int pagecount,int* frompage,int* topage){+    return (static_cast<Fl_Paged_Device*>(paged_device))->start_job(pagecount,frompage,topage);+  }+  FL_EXPORT_C(int,Fl_Paged_Device_start_page)(fl_Paged_Device paged_device){+    return (static_cast<Fl_Paged_Device*>(paged_device))->start_page();+  }+  FL_EXPORT_C(int,Fl_Paged_Device_printable_rect)(fl_Paged_Device paged_device,int* w,int* h){+    return (static_cast<Fl_Paged_Device*>(paged_device))->printable_rect(w,h);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_margins)(fl_Paged_Device paged_device,int* left,int* top,int* right,int* bottom){+    (static_cast<Fl_Paged_Device*>(paged_device))->margins(left,top,right,bottom);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_origin)(fl_Paged_Device paged_device,int* x,int* y){+    (static_cast<Fl_Paged_Device*>(paged_device))->origin(x,y);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_scale)(fl_Paged_Device paged_device,float scale_x){+    (static_cast<Fl_Paged_Device*>(paged_device))->scale(scale_x);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_scale_with_scaly_y)(fl_Paged_Device paged_device,float scale_x,float scale_y){+    (static_cast<Fl_Paged_Device*>(paged_device))->scale(scale_x,scale_y);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_rotate)(fl_Paged_Device paged_device,float angle){+    (static_cast<Fl_Paged_Device*>(paged_device))->rotate(angle);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_translate)(fl_Paged_Device paged_device,int x,int y){+    (static_cast<Fl_Paged_Device*>(paged_device))->translate(x,y);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_untranslate)(fl_Paged_Device paged_device){+    (static_cast<Fl_Paged_Device*>(paged_device))->untranslate();+  }+  FL_EXPORT_C(void,Fl_Paged_Device_print_widget)(fl_Paged_Device paged_device,fl_Widget widget){+    (static_cast<Fl_Paged_Device*>(paged_device))->print_widget(static_cast<Fl_Widget*>(widget));+  }+  FL_EXPORT_C(void,Fl_Paged_Device_print_widget_with_delta_x)(fl_Paged_Device paged_device,fl_Widget widget,int delta_x){+    (static_cast<Fl_Paged_Device*>(paged_device))->print_widget(static_cast<Fl_Widget*>(widget),delta_x);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_print_widget_with_delta_y)(fl_Paged_Device paged_device,fl_Widget widget,int delta_y){+    (static_cast<Fl_Paged_Device*>(paged_device))->print_widget(static_cast<Fl_Widget*>(widget),0,delta_y);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_print_widget_with_delta_x_delta_y)(fl_Paged_Device paged_device,fl_Widget widget,int delta_x,int delta_y){+    (static_cast<Fl_Paged_Device*>(paged_device))->print_widget(static_cast<Fl_Widget*>(widget),delta_x,delta_y);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_print_window)(fl_Paged_Device paged_device,fl_Window win){+    (static_cast<Fl_Paged_Device*>(paged_device))->print_window(static_cast<Fl_Window*>(win));+  }+  FL_EXPORT_C(void,Fl_Paged_Device_print_window_with_x_offset)(fl_Paged_Device paged_device,fl_Window win,int x_offset){+    (static_cast<Fl_Paged_Device*>(paged_device))->print_window(static_cast<Fl_Window*>(win),x_offset);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_print_window_with_y_offset)(fl_Paged_Device paged_device,fl_Window win,int y_offset){+    (static_cast<Fl_Paged_Device*>(paged_device))->print_window(static_cast<Fl_Window*>(win),y_offset);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_print_window_with_x_offset_y_offset)(fl_Paged_Device paged_device,fl_Window win,int x_offset,int y_offset){+    (static_cast<Fl_Paged_Device*>(paged_device))->print_window(static_cast<Fl_Window*>(win),x_offset,y_offset);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_print_window_part)(fl_Paged_Device paged_device,fl_Window win,int x,int y,int w,int h){+    (static_cast<Fl_Paged_Device*>(paged_device))->print_window_part(static_cast<Fl_Window*>(win),x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_print_window_part_with_delta_x)(fl_Paged_Device paged_device,fl_Window win,int x,int y,int w,int h,int delta_x){+    (static_cast<Fl_Paged_Device*>(paged_device))->print_window_part(static_cast<Fl_Window*>(win),x,y,w,h,delta_x);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_print_window_part_with_delta_y)(fl_Paged_Device paged_device,fl_Window win,int x,int y,int w,int h,int delta_y){+    (static_cast<Fl_Paged_Device*>(paged_device))->print_window_part(static_cast<Fl_Window*>(win),x,y,w,h,0,delta_y);+  }+  FL_EXPORT_C(void,Fl_Paged_Device_print_window_part_with_delta_xy)(fl_Paged_Device paged_device,fl_Window win,int x,int y,int w,int h,int delta_x,int delta_y){+    (static_cast<Fl_Paged_Device*>(paged_device))->print_window_part(static_cast<Fl_Window*>(win),x,y,w,h,delta_x,delta_y);+  }+  FL_EXPORT_C(int,Fl_Paged_Device_end_page)(fl_Paged_Device paged_device){+    return (static_cast<Fl_Paged_Device*>(paged_device))->end_page();+  }+  FL_EXPORT_C(void,Fl_Paged_Device_end_job)(fl_Paged_Device paged_device){+    (static_cast<Fl_Paged_Device*>(paged_device))->end_job();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Paged_DeviceC.h view
@@ -0,0 +1,50 @@+#ifndef __Fl_PAGED_DEVICE_C_+#define __Fl_PAGED_DEVICE_C_+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// X is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Paged_Device.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  // Inherited from Fl_Surface_Driver+  FL_EXPORT_C(const char*, Fl_Paged_Device_class_id)();+  FL_EXPORT_C(const char*, Fl_Paged_Device_class_name)(fl_Paged_Device paged_device);+  FL_EXPORT_C(void, Fl_Paged_Device_set_current)(fl_Paged_Device paged_device);+  FL_EXPORT_C(void, Fl_Paged_Device_set_driver)(fl_Paged_Device paged_device,fl_Graphics_Driver graphics_driver);+  FL_EXPORT_C(fl_Graphics_Driver, Fl_Paged_Device_driver)(fl_Paged_Device paged_device);+  FL_EXPORT_C(fl_Surface_Device, Fl_Paged_Device_surface)();+  // Fl_Paged_Device specific+  FL_EXPORT_C(int, Fl_Paged_Device_start_job)(fl_Paged_Device paged_device,int pagecount);+  FL_EXPORT_C(int, Fl_Paged_Device_start_job_with_frompage)(fl_Paged_Device paged_device,int pagecount, int* frompage);+  FL_EXPORT_C(int, Fl_Paged_Device_start_job_with_topage)(fl_Paged_Device paged_device,int pagecount, int* topage);+  FL_EXPORT_C(int, Fl_Paged_Device_start_job_with_frompage_topage)(fl_Paged_Device paged_device,int pagecount, int* frompage, int* topage);+  FL_EXPORT_C(int, Fl_Paged_Device_start_page)(fl_Paged_Device paged_device);+  FL_EXPORT_C(int, Fl_Paged_Device_printable_rect)(fl_Paged_Device paged_device,int* w, int* h);+  FL_EXPORT_C(void, Fl_Paged_Device_margins)(fl_Paged_Device paged_device,int* left, int* top, int* right, int* bottom);+  FL_EXPORT_C(void, Fl_Paged_Device_origin)(fl_Paged_Device paged_device,int* x, int* y);+  FL_EXPORT_C(void, Fl_Paged_Device_scale)(fl_Paged_Device paged_device,float scale_x);+  FL_EXPORT_C(void, Fl_Paged_Device_scale_with_scaly_y)(fl_Paged_Device paged_device,float scale_x, float scale_y);+  FL_EXPORT_C(void, Fl_Paged_Device_rotate)(fl_Paged_Device paged_device,float angle);+  FL_EXPORT_C(void, Fl_Paged_Device_translate)(fl_Paged_Device paged_device,int x, int y);+  FL_EXPORT_C(void, Fl_Paged_Device_untranslate)(fl_Paged_Device paged_device);+  FL_EXPORT_C(void, Fl_Paged_Device_print_widget)(fl_Paged_Device paged_device,fl_Widget widget);+  FL_EXPORT_C(void, Fl_Paged_Device_print_widget_with_delta_x)(fl_Paged_Device paged_device,fl_Widget widget, int delta_x);+  FL_EXPORT_C(void, Fl_Paged_Device_print_widget_with_delta_y)(fl_Paged_Device paged_device,fl_Widget widget, int delta_y);+  FL_EXPORT_C(void, Fl_Paged_Device_print_widget_with_delta_x_delta_y)(fl_Paged_Device paged_device,fl_Widget widget, int delta_x, int delta_y);+  FL_EXPORT_C(void, Fl_Paged_Device_print_window)(fl_Paged_Device paged_device,fl_Window win);+  FL_EXPORT_C(void, Fl_Paged_Device_print_window_with_x_offset)(fl_Paged_Device paged_device,fl_Window win, int x_offset);+  FL_EXPORT_C(void, Fl_Paged_Device_print_window_with_y_offset)(fl_Paged_Device paged_device,fl_Window win, int y_offset);+  FL_EXPORT_C(void, Fl_Paged_Device_print_window_with_x_offset_y_offset)(fl_Paged_Device paged_device,fl_Window win, int x_offset, int y_offset);+  FL_EXPORT_C(void, Fl_Paged_Device_print_window_part)(fl_Paged_Device paged_device,fl_Window win, int x, int y, int w, int h);+  FL_EXPORT_C(void, Fl_Paged_Device_print_window_part_with_delta_x)(fl_Paged_Device paged_device,fl_Window win, int x, int y, int w, int h, int delta_x);+  FL_EXPORT_C(void, Fl_Paged_Device_print_window_part_with_delta_y)(fl_Paged_Device paged_device,fl_Window win, int x, int y, int w, int h, int delta_y);+  FL_EXPORT_C(void, Fl_Paged_Device_print_window_part_with_delta_xy)(fl_Paged_Device paged_device,fl_Window win, int x, int y, int w, int h, int delta_x, int delta_y);+  FL_EXPORT_C(int,  Fl_Paged_Device_end_page)(fl_Paged_Device paged_device);+  FL_EXPORT_C(void, Fl_Paged_Device_end_job)(fl_Paged_Device paged_device);+#ifdef __cplusplus+}+#endif+#endif /* __Fl_PAGED_DEVICE_C_ */
+ c-src/Fl_PixmapC.cpp view
@@ -0,0 +1,72 @@+#include "Fl_PixmapC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(fl_Pixmap, Fl_Pixmap_New)(char** bits){+    Fl_Pixmap* i = new Fl_Pixmap((const char* const *)bits);+    return (fl_Pixmap)i;+  }+  FL_EXPORT_C(fl_Pixmap, Fl_Pixmap_New_With_D)(uchar** bits){+    Fl_Pixmap* i = new Fl_Pixmap((const uchar* const *)bits);+    return (fl_Pixmap)i;+  }+  FL_EXPORT_C(void, Fl_Pixmap_Destroy)(fl_Pixmap pixmap){+    delete (static_cast<Fl_Pixmap*>(pixmap));+  }+  FL_EXPORT_C(int,Fl_Pixmap_w)(fl_Pixmap pixmap){+    return (static_cast<Fl_Pixmap*>(pixmap))->w();+  }+  FL_EXPORT_C(int,Fl_Pixmap_h)(fl_Pixmap pixmap){+    return (static_cast<Fl_Pixmap*>(pixmap))->h();+  }+  FL_EXPORT_C(int,Fl_Pixmap_d)(fl_Pixmap pixmap){+    return (static_cast<Fl_Pixmap*>(pixmap))->d();+  }+  FL_EXPORT_C(int,Fl_Pixmap_ld)(fl_Pixmap pixmap){+    return (static_cast<Fl_Pixmap*>(pixmap))->ld();+  }+  FL_EXPORT_C(int,Fl_Pixmap_count)(fl_Pixmap pixmap){+    return (static_cast<Fl_Pixmap*>(pixmap))->count();+  }+  FL_EXPORT_C(fl_Image,Fl_Pixmap_copy_with_w_h)(fl_Pixmap pixmap,int W,int H){+    return (static_cast<Fl_Pixmap*>(pixmap))->copy(W,H);+  }+  FL_EXPORT_C(fl_Image,Fl_Pixmap_copy)(fl_Pixmap pixmap){+    return (static_cast<Fl_Pixmap*>(pixmap))->copy();+  }+  FL_EXPORT_C(void,Fl_Pixmap_color_average)(fl_Pixmap pixmap,Fl_Color c,float i){+    (static_cast<Fl_Pixmap*>(pixmap))->color_average(c,i);+  }+  FL_EXPORT_C(void,Fl_Pixmap_inactive)(fl_Pixmap pixmap){+    (static_cast<Fl_Pixmap*>(pixmap))->inactive();+  }+  FL_EXPORT_C(void,Fl_Pixmap_desaturate)(fl_Pixmap pixmap){+    (static_cast<Fl_Pixmap*>(pixmap))->desaturate();+  }+  FL_EXPORT_C(void,Fl_Pixmap_label)(fl_Pixmap pixmap,fl_Widget w){+    (static_cast<Fl_Pixmap*>(pixmap))->label((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Pixmap_label_with_menu_item)(fl_Pixmap pixmap,fl_Menu_Item m){+    (static_cast<Fl_Pixmap*>(pixmap))->label((static_cast<Fl_Menu_Item*>(m)));+  }+  FL_EXPORT_C(void,Fl_Pixmap_draw_with_cx_cy)(fl_Pixmap pixmap,int X,int Y,int W,int H,int cx,int cy){+    (static_cast<Fl_Pixmap*>(pixmap))->draw(X,Y,W,H,cx,cy);+  }+  FL_EXPORT_C(void,Fl_Pixmap_draw_with_cx)(fl_Pixmap pixmap,int X,int Y,int W,int H,int cx){+    (static_cast<Fl_Pixmap*>(pixmap))->draw(X,Y,W,H,cx);+  }+  FL_EXPORT_C(void,Fl_Pixmap_draw_with_cy)(fl_Pixmap pixmap,int X,int Y,int W,int H,int cy){+    (static_cast<Fl_Pixmap*>(pixmap))->draw(X,Y,W,H,cy);+  }+  FL_EXPORT_C(void,Fl_Pixmap_draw_with)(fl_Pixmap pixmap,int X,int Y,int W,int H){+    (static_cast<Fl_Pixmap*>(pixmap))->draw(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Pixmap_draw)(fl_Pixmap pixmap,int X,int Y){+    (static_cast<Fl_Pixmap*>(pixmap))->draw(X,Y);+  }+  FL_EXPORT_C(void,Fl_Pixmap_uncache)(fl_Pixmap pixmap){+    (static_cast<Fl_Pixmap*>(pixmap))->uncache();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_PixmapC.h view
@@ -0,0 +1,36 @@+#ifndef __FL_PIXMAP_C__+#define __FL_PIXMAP_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Pixmap.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_Pixmap, Fl_Pixmap_New)(char** bits);+  FL_EXPORT_C(fl_Pixmap, Fl_Pixmap_New_With_UChar)(uchar** bits);+  FL_EXPORT_C(void, Fl_Pixmap_Destroy)(fl_Pixmap pixmap);+  FL_EXPORT_C(int, Fl_Pixmap_w)(fl_Pixmap pixmap);+  FL_EXPORT_C(int, Fl_Pixmap_h)(fl_Pixmap pixmap);+  FL_EXPORT_C(int, Fl_Pixmap_d)(fl_Pixmap pixmap);+  FL_EXPORT_C(int, Fl_Pixmap_ld)(fl_Pixmap pixmap);+  FL_EXPORT_C(int, Fl_Pixmap_count)(fl_Pixmap pixmap);+  FL_EXPORT_C(fl_Image, Fl_Pixmap_copy_with_w_h)(fl_Pixmap pixmap,int w, int h);+  FL_EXPORT_C(fl_Image, Fl_Pixmap_copy)(fl_Pixmap pixmap);+  FL_EXPORT_C(void, Fl_Pixmap_color_average)(fl_Pixmap pixmap,Fl_Color c, float i);+  FL_EXPORT_C(void, Fl_Pixmap_inactive)(fl_Pixmap pixmap);+  FL_EXPORT_C(void, Fl_Pixmap_desaturate)(fl_Pixmap pixmap);+  FL_EXPORT_C(void, Fl_Pixmap_label)(fl_Pixmap pixmap,fl_Widget w);+  FL_EXPORT_C(void, Fl_Pixmap_label_with_menu_item)(fl_Pixmap pixmap,fl_Menu_Item m);+  FL_EXPORT_C(void, Fl_Pixmap_draw_with_cx_cy)(fl_Pixmap pixmap,int X, int Y, int W, int H, int cx, int cy);+  FL_EXPORT_C(void, Fl_Pixmap_draw_with_cx)(fl_Pixmap pixmap,int X, int Y, int W, int H, int cx);+  FL_EXPORT_C(void, Fl_Pixmap_draw_with_cy)(fl_Pixmap pixmap,int X, int Y, int W, int H, int cy);+  FL_EXPORT_C(void, Fl_Pixmap_draw_with)(fl_Pixmap pixmap,int X, int Y, int W, int H);+  FL_EXPORT_C(void, Fl_Pixmap_draw)(fl_Pixmap pixmap,int X, int Y);+  FL_EXPORT_C(void, Fl_Pixmap_uncache)(fl_Pixmap pixmap);+#ifdef __cplusplus+}+#endif+#endif /* __FL_PIXMAP_C__ */
+ c-src/Fl_PositionerC.cpp view
@@ -0,0 +1,340 @@+#include "Fl_PositionerC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Positioner_handle )(fl_Positioner positioner, int event){+    return (static_cast<Fl_Positioner*>(positioner))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Positioner_resize )(fl_Positioner positioner,int x, int y, int w, int h){+    (static_cast<Fl_Positioner*>(positioner))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Positioner_show )(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->show();+  }+  FL_EXPORT_C(void,Fl_Positioner_hide )(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Positioner_as_window )(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->as_window();+  }+  FL_EXPORT_C(fl_Group,Fl_Positioner_parent)(fl_Positioner positioner){+    return (fl_Group) (static_cast<Fl_Positioner*>(positioner))->parent();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_parent)(fl_Positioner positioner,fl_Group grp){+    (static_cast<Fl_Positioner*>(positioner))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Positioner_type)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->type();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_type)(fl_Positioner positioner,uchar t){+    (static_cast<Fl_Positioner*>(positioner))->type(t);+  }++  FL_EXPORT_C(int,Fl_Positioner_x)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->x();+  }+  FL_EXPORT_C(int,Fl_Positioner_y)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->y();+  }+  FL_EXPORT_C(int,Fl_Positioner_w)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->w();+  }+  FL_EXPORT_C(int,Fl_Positioner_h)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->h();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_align)(fl_Positioner positioner, Fl_Align alignment){+    (static_cast<Fl_Positioner*>(positioner))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Positioner_align)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Positioner_box)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->box();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_box)(fl_Positioner positioner,Fl_Boxtype new_box){+    (static_cast<Fl_Positioner*>(positioner))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Positioner_color)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->color();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_color)(fl_Positioner positioner,Fl_Color bg){+    (static_cast<Fl_Positioner*>(positioner))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Positioner_set_color_with_bg_sel)(fl_Positioner positioner,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Positioner*>(positioner))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Positioner_selection_color)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_selection_color)(fl_Positioner positioner,Fl_Color a){+    (static_cast<Fl_Positioner*>(positioner))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Positioner_label)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->label();+  }+  FL_EXPORT_C(void,Fl_Positioner_copy_label)(fl_Positioner positioner,const char* new_label){+    (static_cast<Fl_Positioner*>(positioner))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Positioner_set_label)(fl_Positioner positioner,const char* text){+    (static_cast<Fl_Positioner*>(positioner))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Positioner_labeltype)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_labeltype)(fl_Positioner positioner,Fl_Labeltype a){+    (static_cast<Fl_Positioner*>(positioner))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Positioner_set_labelcolor)(fl_Positioner positioner,Fl_Color c){+    (static_cast<Fl_Positioner*>(positioner))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Positioner_labelcolor)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Positioner_labelfont)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_labelfont)(fl_Positioner positioner,Fl_Font c){+    (static_cast<Fl_Positioner*>(positioner))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Positioner_labelsize)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_labelsize)(fl_Positioner positioner,Fl_Fontsize pix){+    (static_cast<Fl_Positioner*>(positioner))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Positioner_image)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->image();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_image)(fl_Positioner positioner,fl_Image pix){+    (static_cast<Fl_Positioner*>(positioner))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Positioner_deimage)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->deimage();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_deimage)(fl_Positioner positioner,fl_Image pix){+    (static_cast<Fl_Positioner*>(positioner))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Positioner_tooltip)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Positioner_copy_tooltip)(fl_Positioner positioner,const char* text){+    (static_cast<Fl_Positioner*>(positioner))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Positioner_set_tooltip)(fl_Positioner positioner,const char* text){+    (static_cast<Fl_Positioner*>(positioner))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Positioner_set_callback_with_user_data)(fl_Positioner positioner,fl_Callback* cb,void* p){+    Fl_Positioner* castedButton = (static_cast<Fl_Positioner*>(positioner));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Positioner_set_callback)(fl_Positioner positioner,fl_Callback* cb){+    Fl_Positioner* castedButton = (static_cast<Fl_Positioner*>(positioner));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Positioner_user_data)(fl_Positioner positioner){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Positioner*>(positioner))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Positioner*>(positioner))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Positioner_set_user_data)(fl_Positioner positioner,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Positioner*>(positioner))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Positioner*>(positioner))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Positioner*>(positioner))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Positioner_argument)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->argument();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_argument)(fl_Positioner positioner,long v){+    (static_cast<Fl_Positioner*>(positioner))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Positioner_when)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->when();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_when)(fl_Positioner positioner,uchar i){+    (static_cast<Fl_Positioner*>(positioner))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Positioner_visible)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->visible();+  }+  FL_EXPORT_C(int,Fl_Positioner_visible_r)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_visible)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->visible();+  }+  FL_EXPORT_C(void,Fl_Positioner_clear_visible)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Positioner_active)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->active();+  }+  FL_EXPORT_C(int,Fl_Positioner_active_r)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->active_r();+  }+  FL_EXPORT_C(void,Fl_Positioner_activate)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->activate();+  }+  FL_EXPORT_C(void,Fl_Positioner_deactivate)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Positioner_output)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->output();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_output)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->output();+  }+  FL_EXPORT_C(void,Fl_Positioner_clear_output)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Positioner_takesevents)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_changed)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->changed();+  }+  FL_EXPORT_C(void,Fl_Positioner_clear_changed)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Positioner_take_focus)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_visible_focus)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Positioner_clear_visible_focus)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Positioner_modify_visible_focus)(fl_Positioner positioner,int v){+    (static_cast<Fl_Positioner*>(positioner))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Positioner_visible_focus)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Positioner_do_callback)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Positioner_do_callback_with_widget_and_user_data)(fl_Positioner positioner,fl_Widget w,long arg){+    (static_cast<Fl_Positioner*>(positioner))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Positioner_do_callback_with_widget_and_default_user_data)(fl_Positioner positioner,fl_Widget w){+    (static_cast<Fl_Positioner*>(positioner))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Positioner_contains)(fl_Positioner positioner,fl_Widget w){+    return (static_cast<Fl_Positioner*>(positioner))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Positioner_inside)(fl_Positioner positioner,fl_Widget w){+    return (static_cast<Fl_Positioner*>(positioner))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Positioner_redraw)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->redraw();+  }+  FL_EXPORT_C(void,Fl_Positioner_redraw_label)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Positioner_damage)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->damage();+  }+  FL_EXPORT_C(void,Fl_Positioner_clear_damage_with_bitmask)(fl_Positioner positioner,uchar c){+    (static_cast<Fl_Positioner*>(positioner))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Positioner_clear_damage)(fl_Positioner positioner){+    (static_cast<Fl_Positioner*>(positioner))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Positioner_damage_with_text)(fl_Positioner positioner,uchar c){+    (static_cast<Fl_Positioner*>(positioner))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Positioner_damage_inside_widget)(fl_Positioner positioner,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Positioner*>(positioner))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Positioner_draw_label_with_xywh_alignment)(fl_Positioner positioner,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Positioner*>(positioner))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Positioner_measure_label)(fl_Positioner positioner,int* ww,int* hh){+    (static_cast<Fl_Positioner*>(positioner))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Positioner_window)(fl_Positioner positioner){+    return (fl_Window) (static_cast<Fl_Positioner*>(positioner))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Positioner_top_window)(fl_Positioner positioner){+    return (fl_Window) (static_cast<Fl_Positioner*>(positioner))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Positioner_top_window_offset)(fl_Positioner positioner, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Positioner*>(positioner))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Positioner_as_group)(fl_Positioner positioner){+    return (fl_Group) (static_cast<Fl_Positioner*>(positioner))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Positioner_as_gl_window)(fl_Positioner positioner){+    return (fl_Gl_Window) (static_cast<Fl_Positioner*>(positioner))->as_gl_window();+  }+  FL_EXPORT_C(fl_Positioner, Fl_Positioner_New)(int x, int y, int w, int h){+    Fl_Positioner* p = new Fl_Positioner(x,y,w,h);+    return (fl_Positioner)p;+  }+  FL_EXPORT_C(fl_Positioner, Fl_Positioner_New_WithLabel)(int x, int y, int w, int h,const char *l){+    Fl_Positioner* p = new Fl_Positioner(x,y,w,h,l);+    return (fl_Positioner)p;+  }+  FL_EXPORT_C(void , Fl_Positioner_Destroy)(fl_Positioner positioner){+    delete (static_cast<Fl_Positioner*>(positioner));+  }+  FL_EXPORT_C(void,Fl_Positioner_set_xvalue)(fl_Positioner positioner,double x){+    (static_cast<Fl_Positioner*>(positioner))->xvalue(x);+  }+  FL_EXPORT_C(double,Fl_Positioner_xvalue)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->xvalue();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_yvalue)(fl_Positioner positioner,double x){+    (static_cast<Fl_Positioner*>(positioner))->yvalue(x);+  }+  FL_EXPORT_C(double,Fl_Positioner_yvalue)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->yvalue();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_xminimum)(fl_Positioner positioner,double x){+    (static_cast<Fl_Positioner*>(positioner))->xminimum(x);+  }+  FL_EXPORT_C(double,Fl_Positioner_xminimum)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->xminimum();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_yminimum)(fl_Positioner positioner,double x){+    (static_cast<Fl_Positioner*>(positioner))->yminimum(x);+  }+  FL_EXPORT_C(double,Fl_Positioner_yminimum)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->yminimum();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_xmaximum)(fl_Positioner positioner,double x){+    (static_cast<Fl_Positioner*>(positioner))->xmaximum(x);+  }+  FL_EXPORT_C(double,Fl_Positioner_xmaximum)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->xmaximum();+  }+  FL_EXPORT_C(void,Fl_Positioner_set_ymaximum)(fl_Positioner positioner,double x){+    (static_cast<Fl_Positioner*>(positioner))->ymaximum(x);+  }+  FL_EXPORT_C(double,Fl_Positioner_ymaximum)(fl_Positioner positioner){+    return (static_cast<Fl_Positioner*>(positioner))->ymaximum();+  }+  FL_EXPORT_C(void,Fl_Positioner_xbounds)(fl_Positioner positioner, double x, double xx){+    return (static_cast<Fl_Positioner*>(positioner))->xbounds(x,xx);+  }+  FL_EXPORT_C(void,Fl_Positioner_ybounds)(fl_Positioner positioner,double y, double yy){+    (static_cast<Fl_Positioner*>(positioner))->ybounds(y, yy);+  }+  FL_EXPORT_C(void,Fl_Positioner_xstep)(fl_Positioner positioner,double x){+    (static_cast<Fl_Positioner*>(positioner))->xstep(x);+  }+  FL_EXPORT_C(void,Fl_Positioner_ystep)(fl_Positioner positioner,double x){+    (static_cast<Fl_Positioner*>(positioner))->ystep(x);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_PositionerC.h view
@@ -0,0 +1,125 @@+#ifndef __FL_POSITIONER_C__+#define __FL_POSITIONER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Positioner.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int ,         Fl_Positioner_handle )(fl_Positioner positioner,int event);+  FL_EXPORT_C(void,         Fl_Positioner_resize )(fl_Positioner positioner,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Positioner_show )(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_hide )(fl_Positioner positioner);+  FL_EXPORT_C(fl_Window,    Fl_Positioner_as_window )(fl_Positioner positioner);+  FL_EXPORT_C(fl_Gl_Window, Fl_Positioner_as_gl_window)(fl_Positioner positioner);+  FL_EXPORT_C(fl_Group,     Fl_Positioner_parent)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_parent)(fl_Positioner positioner, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Positioner_type)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_type)(fl_Positioner positioner, uchar t);++  FL_EXPORT_C(int,          Fl_Positioner_x)(fl_Positioner positioner);+  FL_EXPORT_C(int,          Fl_Positioner_y)(fl_Positioner positioner);+  FL_EXPORT_C(int,          Fl_Positioner_w)(fl_Positioner positioner);+  FL_EXPORT_C(int,          Fl_Positioner_h)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_align)(fl_Positioner positioner, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Positioner_align)(fl_Positioner positioner);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Positioner_box)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_box)(fl_Positioner positioner, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Positioner_color)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_color)(fl_Positioner positioner, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Positioner_set_color_with_bg_sel)(fl_Positioner positioner,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Positioner_selection_color)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_selection_color)(fl_Positioner positioner, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Positioner_label)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_copy_label)(fl_Positioner positioner, const char* new_label);+  FL_EXPORT_C(void,         Fl_Positioner_set_label)(fl_Positioner positioner, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Positioner_labeltype)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_labeltype)(fl_Positioner positioner, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Positioner_labelcolor)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_labelcolor)(fl_Positioner positioner, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Positioner_labelfont)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_labelfont)(fl_Positioner positioner, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Positioner_labelsize)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_labelsize)(fl_Positioner positioner, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Positioner_image)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_image)(fl_Positioner positioner, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Positioner_deimage)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_deimage)(fl_Positioner positioner, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Positioner_tooltip)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_copy_tooltip)(fl_Positioner positioner, const char* text);+  FL_EXPORT_C(void,         Fl_Positioner_set_tooltip)(fl_Positioner positioner, const char* text);+  FL_EXPORT_C(void,         Fl_Positioner_set_callback_with_user_data)(fl_Positioner positioner, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Positioner_set_callback)(fl_Positioner positioner, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Positioner_user_data)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_user_data)(fl_Positioner positioner, void* v);+  FL_EXPORT_C(long,         Fl_Positioner_argument)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_argument)(fl_Positioner positioner, long v);+  FL_EXPORT_C(Fl_When,      Fl_Positioner_when)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_when)(fl_Positioner positioner, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Positioner_visible)(fl_Positioner positioner);+  FL_EXPORT_C(int,          Fl_Positioner_visible_r)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_visible)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_clear_visible)(fl_Positioner positioner);+  FL_EXPORT_C(unsigned int, Fl_Positioner_active)(fl_Positioner positioner);+  FL_EXPORT_C(int,          Fl_Positioner_active_r)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_activate)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_deactivate)(fl_Positioner positioner);+  FL_EXPORT_C(unsigned int, Fl_Positioner_output)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_output)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_clear_output)(fl_Positioner positioner);+  FL_EXPORT_C(unsigned int, Fl_Positioner_takesevents)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_changed)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_clear_changed)(fl_Positioner positioner);+  FL_EXPORT_C(int,          Fl_Positioner_take_focus)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_set_visible_focus)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_clear_visible_focus)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_modify_visible_focus)(fl_Positioner positioner, int v);+  FL_EXPORT_C(unsigned int, Fl_Positioner_visible_focus)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_do_callback)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_do_callback_with_widget_and_user_data)(fl_Positioner positioner, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Positioner_do_callback_with_widget_and_default_user_data)(fl_Positioner positioner, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Positioner_contains)(fl_Positioner positioner, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Positioner_inside)(fl_Positioner positioner, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Positioner_redraw)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_redraw_label)(fl_Positioner positioner);+  FL_EXPORT_C(uchar,        Fl_Positioner_damage)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_clear_damage_with_bitmask)(fl_Positioner positioner, uchar c);+  FL_EXPORT_C(void,         Fl_Positioner_clear_damage)(fl_Positioner positioner);+  FL_EXPORT_C(void,         Fl_Positioner_damage_with_text)(fl_Positioner positioner, uchar c);+  FL_EXPORT_C(void,         Fl_Positioner_damage_inside_widget)(fl_Positioner positioner, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Positioner_draw_label_with_xywh_alignment)(fl_Positioner positioner, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Positioner_measure_label)(fl_Positioner positioner, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Positioner_window)(fl_Positioner positioner);+  FL_EXPORT_C(fl_Window,    Fl_Positioner_top_window)(fl_Positioner positioner);+  FL_EXPORT_C(fl_Window ,   Fl_Positioner_top_window_offset)(fl_Positioner positioner, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Positioner_as_group)(fl_Positioner positioner);+  FL_EXPORT_C(fl_Gl_Window, Fl_Positioner_as_gl_window)(fl_Positioner positioner);++  FL_EXPORT_C(fl_Positioner, Fl_Positioner_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Positioner, Fl_Positioner_New_WithLabel)(int x, int y, int w, int h,const char *l);++  FL_EXPORT_C(void, Fl_Positioner_Destroy)(fl_Positioner positioner);+  FL_EXPORT_C(void, Fl_Positioner_set_xvalue)(fl_Positioner positioner, double xvalue);+  FL_EXPORT_C(double, Fl_Positioner_xvalue)(fl_Positioner positioner);+  FL_EXPORT_C(void, Fl_Positioner_set_yvalue)(fl_Positioner positioner, double yvalue);+  FL_EXPORT_C(double, Fl_Positioner_yvalue)(fl_Positioner positioner);+  FL_EXPORT_C(void, Fl_Positioner_set_xminimum)(fl_Positioner positioner, double xminimum);+  FL_EXPORT_C(double, Fl_Positioner_xminimum)(fl_Positioner positioner);+  FL_EXPORT_C(void, Fl_Positioner_set_yminimum)(fl_Positioner positioner, double yminimum);+  FL_EXPORT_C(double, Fl_Positioner_yminimum)(fl_Positioner positioner);+  FL_EXPORT_C(void, Fl_Positioner_set_xmaximum)(fl_Positioner positioner, double xmaximum);+  FL_EXPORT_C(double, Fl_Positioner_xmaximum)(fl_Positioner positioner);+  FL_EXPORT_C(void, Fl_Positioner_set_ymaximum)(fl_Positioner positioner, double ymaximum);+  FL_EXPORT_C(double, Fl_Positioner_ymaximum)(fl_Positioner positioner);+  FL_EXPORT_C(void, Fl_Positioner_xbounds)(fl_Positioner positioner, double xstart, double xend);+  FL_EXPORT_C(void, Fl_Positioner_ybounds)(fl_Positioner positioner, double ystart, double yend);+  FL_EXPORT_C(void, Fl_Positioner_xstep)(fl_Positioner positioner, double xstep);+  FL_EXPORT_C(void, Fl_Positioner_ystep)(fl_Positioner positioner, double ystep);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_POSITIONER_C__*/
+ c-src/Fl_PreferencesC.cpp view
@@ -0,0 +1,148 @@+#include "Fl_PreferencesC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(fl_Preferences, Fl_Preferences_With_Root)( Root root, const char* vendor, const char* application ){+    Fl_Preferences* preferences = 0;+    if (root == USER) {+      preferences = new Fl_Preferences(Fl_Preferences::USER, vendor, application);+    }+    else {+      preferences = new Fl_Preferences(Fl_Preferences::SYSTEM, vendor, application);+    }+    return (fl_Preferences) preferences;+  }+  FL_EXPORT_C(fl_Preferences, Fl_Preferences_With_Path)( const char* path, const char *vendor, const char *application ){+    Fl_Preferences* preferences = new Fl_Preferences(path, vendor, application);+    return (fl_Preferences) preferences;+  }+  FL_EXPORT_C(fl_Preferences, Fl_Preferences_With_Parent_Group)( fl_Preferences parent, const char *group ){+    Fl_Preferences* preferences = new Fl_Preferences((static_cast<Fl_Preferences*>(parent)),group);+    return (fl_Preferences) preferences;+  }+  FL_EXPORT_C(fl_Preferences, Fl_Preferences_With_Parent_GroupIndex)( fl_Preferences parent, int groupIndex){+    Fl_Preferences* preferences = new Fl_Preferences(*(static_cast<Fl_Preferences*>(parent)),groupIndex);+    return (fl_Preferences) preferences;+  }+  FL_EXPORT_C(fl_Preferences, Fl_Preferences_With_Parent)( fl_Preferences parent){+    Fl_Preferences* preferences = new Fl_Preferences((static_cast<Fl_Preferences*>(parent)));+    return (fl_Preferences) preferences;+  }+  FL_EXPORT_C(fl_Preferences, Fl_Preferences_With_Id)(ID id){+    Fl_Preferences* preferences = new Fl_Preferences(id);+    return (fl_Preferences) preferences;+  }+  FL_EXPORT_C(void,Fl_Preferences_Destroy)(fl_Preferences preferences){+    delete (static_cast<Fl_Preferences*>(preferences));+  }+  FL_EXPORT_C(const char*,Fl_newUUID)(){+    return Fl_Preferences::newUUID();+  }+  FL_EXPORT_C(ID,Fl_Preferences_id)(fl_Preferences preferences){+    return (static_cast<Fl_Preferences*>(preferences))->id();+  }+  FL_EXPORT_C(char,Fl_Preferences_remove)(fl_Preferences preferences,ID id_){+    return (static_cast<Fl_Preferences*>(preferences))->remove(id_);+  }+  FL_EXPORT_C(const char*,Fl_Preferences_name)(fl_Preferences preferences){+    return (static_cast<Fl_Preferences*>(preferences))->name();+  }+  FL_EXPORT_C(const char*,Fl_Preferences_path)(fl_Preferences preferences){+    return (static_cast<Fl_Preferences*>(preferences))->path();+  }+  FL_EXPORT_C(int,Fl_Preferences_groups)(fl_Preferences preferences){+    return (static_cast<Fl_Preferences*>(preferences))->groups();+  }+  FL_EXPORT_C(const char*,Fl_Preferences_group)(fl_Preferences preferences,int num_group){+    return (static_cast<Fl_Preferences*>(preferences))->group(num_group);+  }+  FL_EXPORT_C(char,Fl_Preferences_groupExists)(fl_Preferences preferences,const char* key){+    return (static_cast<Fl_Preferences*>(preferences))->groupExists(key);+  }+  FL_EXPORT_C(char,Fl_Preferences_deleteGroup)(fl_Preferences preferences,const char* group){+    return (static_cast<Fl_Preferences*>(preferences))->deleteGroup(group);+  }+  FL_EXPORT_C(char,Fl_Preferences_deleteAllGroups)(fl_Preferences preferences){+    return (static_cast<Fl_Preferences*>(preferences))->deleteAllGroups();+  }+  FL_EXPORT_C(int,Fl_Preferences_entries)(fl_Preferences preferences){+    return (static_cast<Fl_Preferences*>(preferences))->entries();+  }+  FL_EXPORT_C(const char*,Fl_Preferences_entry)(fl_Preferences preferences,int index){+    return (static_cast<Fl_Preferences*>(preferences))->entry(index);+  }+  FL_EXPORT_C(char,Fl_Preferences_entryExists)(fl_Preferences preferences,const char* key){+    return (static_cast<Fl_Preferences*>(preferences))->entryExists(key);+  }+  FL_EXPORT_C(char,Fl_Preferences_deleteEntry)(fl_Preferences preferences,const char* entry){+    return (static_cast<Fl_Preferences*>(preferences))->deleteEntry(entry);+  }+  FL_EXPORT_C(char,Fl_Preferences_deleteAllEntries)(fl_Preferences preferences){+    return (static_cast<Fl_Preferences*>(preferences))->deleteAllEntries();+  }+  FL_EXPORT_C(char,Fl_Preferences_clear)(fl_Preferences preferences){+    return (static_cast<Fl_Preferences*>(preferences))->clear();+  }+  FL_EXPORT_C(char,Fl_Preferences_set_int)(fl_Preferences preferences,const char* entry, int value){+    return (static_cast<Fl_Preferences*>(preferences))->set(entry,value);+  }+  FL_EXPORT_C(char,Fl_Preferences_set_float)(fl_Preferences preferences,const char* entry,float value){+    return (static_cast<Fl_Preferences*>(preferences))->set(entry,value);+  }+  FL_EXPORT_C(char,Fl_Preferences_set_float_with_precision)(fl_Preferences preferences,const char* entry,float value,int precision){+    return (static_cast<Fl_Preferences*>(preferences))->set(entry,value,precision);+  }+  FL_EXPORT_C(char,Fl_Preferences_set_double)(fl_Preferences preferences,const char* entry,double value){+    return (static_cast<Fl_Preferences*>(preferences))->set(entry,value);+  }+  FL_EXPORT_C(char,Fl_Preferences_set_double_with_precision)(fl_Preferences preferences,const char* entry,double value,int precision){+    return (static_cast<Fl_Preferences*>(preferences))->set(entry,value,precision);+  }+  FL_EXPORT_C(char,Fl_Preferences_set_char)(fl_Preferences preferences,const char* entry,char value){+    return (static_cast<Fl_Preferences*>(preferences))->set(entry,value);+  }+  FL_EXPORT_C(char,Fl_Preferences_set_char_with_size)(fl_Preferences preferences,const char* entry,const char* value,int size){+    return (static_cast<Fl_Preferences*>(preferences))->set(entry,value,size);+  }+  FL_EXPORT_C(char,Fl_Preferences_set_void)(fl_Preferences preferences,const char* entry,const void* value,int size){+    return (static_cast<Fl_Preferences*>(preferences))->set(entry,value,size);+  }+  FL_EXPORT_C(char,Fl_Preferences_get_int)(fl_Preferences preferences,const char* entry,int *value,int defaultValue){+    return (static_cast<Fl_Preferences*>(preferences))->get(entry,*value,defaultValue);+  }+  FL_EXPORT_C(char,Fl_Preferences_get_float)(fl_Preferences preferences,const char* entry,float *value,float defaultValue){+    return (static_cast<Fl_Preferences*>(preferences))->get(entry,*value,defaultValue);+  }+  FL_EXPORT_C(char,Fl_Preferences_get_double)(fl_Preferences preferences,const char* entry,double *value,double defaultValue){+    return (static_cast<Fl_Preferences*>(preferences))->get(entry,*value,defaultValue);+  }+  FL_EXPORT_C(char,Fl_Preferences_get_char)(fl_Preferences preferences,const char* entry,char* value,const char* defaultValue){+    return (static_cast<Fl_Preferences*>(preferences))->get(entry,value,defaultValue);+  }+  FL_EXPORT_C(char,Fl_Preferences_get_char_with_maxSize)(fl_Preferences preferences,const char* entry,char* value,const char* defaultValue,int maxSize){+    return (static_cast<Fl_Preferences*>(preferences))->get(entry,value,defaultValue,maxSize);+  }+  FL_EXPORT_C(char,Fl_Preferences_get_char_with_defaultSize)(fl_Preferences preferences,const char* entry,char* value,const char* defaultValue,int defaultSize){+    return (static_cast<Fl_Preferences*>(preferences))->get(entry,value,defaultValue,defaultSize);+  }+  FL_EXPORT_C(char,Fl_Preferences_get_void)(fl_Preferences preferences,const char* entry,char* value,const char* defaultValue,int defaultSize){+    return (static_cast<Fl_Preferences*>(preferences))->get(entry,value,defaultValue,defaultSize);+  }+  FL_EXPORT_C(char,Fl_Preferences_get_void_with_defaultSize_maxSize)(fl_Preferences preferences,const char* entry,char* value,const char* defaultValue,int defaultSize,int maxSize){+    return (static_cast<Fl_Preferences*>(preferences))->get(entry,value,defaultValue,defaultSize,maxSize);+  }+  FL_EXPORT_C(char,Fl_Preferences_get_void_with_defaultSize)(fl_Preferences preferences,const char* entry,char* value,const char* defaultValue,int defaultSize){+    return (static_cast<Fl_Preferences*>(preferences))->get(entry,value,defaultValue,defaultSize);+  }+  FL_EXPORT_C(int,Fl_Preferences_size)(fl_Preferences preferences,const char* entry){+    return (static_cast<Fl_Preferences*>(preferences))->size(entry);+  }+  FL_EXPORT_C(char,Fl_Preferences_getUserdataPath)(fl_Preferences preferences,char *path,int pathlen){+    return (static_cast<Fl_Preferences*>(preferences))->getUserdataPath(path,pathlen);+  }+  FL_EXPORT_C(void,Fl_Preferences_flush)(fl_Preferences preferences){+    return (static_cast<Fl_Preferences*>(preferences))->flush();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_PreferencesC.h view
@@ -0,0 +1,62 @@+#ifndef __FL_PREFERENCES_C__+#define __FL_PREFERENCES_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Preferences.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  typedef enum {+    SYSTEM=0,+    USER+  } Root;+  FL_EXPORT_C(fl_Preferences, Fl_Preferences_With_Root)( Root root, const char *vendor, const char *application );+  FL_EXPORT_C(fl_Preferences, Fl_Preferences_With_Path)( const char* path, const char *vendor, const char *application );+  FL_EXPORT_C(fl_Preferences, Fl_Preferences_With_Parent_Group)( fl_Preferences parent, const char *group );+  FL_EXPORT_C(fl_Preferences, Fl_Preferences_With_Parent_GroupIndex)( fl_Preferences parent, int groupIndex);+  FL_EXPORT_C(fl_Preferences, Fl_Preferences_With_Parent)( fl_Preferences parent);+  FL_EXPORT_C(const char*, Fl_newUUID)();+  FL_EXPORT_C(fl_Preferences, Fl_Preferences_With_Id)(ID id);+  FL_EXPORT_C(void,Fl_Preferences_Destroy)(fl_Preferences preferences);+  FL_EXPORT_C(ID, Fl_Preferences_id)(fl_Preferences preferences);+  FL_EXPORT_C(char, Fl_Preferences_remove)(fl_Preferences preferences, ID id_);+  FL_EXPORT_C(const char*, Fl_Preferences_name)(fl_Preferences preferences);+  FL_EXPORT_C(const char*, Fl_Preferences_path)(fl_Preferences preferences);+  FL_EXPORT_C(int, Fl_Preferences_groups)(fl_Preferences preferences);+  FL_EXPORT_C(const char*, Fl_Preferences_group)(fl_Preferences preferences,  int num_group );+  FL_EXPORT_C(char, Fl_Preferences_groupExists)(fl_Preferences preferences,  const char *key );+  FL_EXPORT_C(char, Fl_Preferences_deleteGroup)(fl_Preferences preferences,  const char *group );+  FL_EXPORT_C(char, Fl_Preferences_deleteAllGroups)(fl_Preferences preferences);+  FL_EXPORT_C(int, Fl_Preferences_entries)(fl_Preferences preferences);+  FL_EXPORT_C(const char*, Fl_Preferences_entry)(fl_Preferences preferences,  int index );+  FL_EXPORT_C(char, Fl_Preferences_entryExists)(fl_Preferences preferences,  const char *key );+  FL_EXPORT_C(char, Fl_Preferences_deleteEntry)(fl_Preferences preferences,  const char *entry );+  FL_EXPORT_C(char, Fl_Preferences_deleteAllEntries)(fl_Preferences preferences);+  FL_EXPORT_C(char, Fl_Preferences_clear)(fl_Preferences preferences);+  FL_EXPORT_C(char, Fl_Preferences_set_int)(fl_Preferences preferences, const char* entry, int value);+  FL_EXPORT_C(char, Fl_Preferences_set_float)(fl_Preferences preferences, const char* entry, float value);+  FL_EXPORT_C(char, Fl_Preferences_set_float_with_precision)(fl_Preferences preferences, const char* entry, float value, int precision);+  FL_EXPORT_C(char, Fl_Preferences_set_double)(fl_Preferences preferences, const char* entry, double value);+  FL_EXPORT_C(char, Fl_Preferences_set_double_with_precision)(fl_Preferences preferences, const char* entry, double value, int precision);+  FL_EXPORT_C(char, Fl_Preferences_set_char)(fl_Preferences preferences, const char* entry, char value);+  FL_EXPORT_C(char, Fl_Preferences_set_char_with_size)(fl_Preferences preferences, const char* entry, const char* value, int size);+  FL_EXPORT_C(char, Fl_Preferences_set_void)(fl_Preferences preferences, const char* entry, const void* value, int size);+  FL_EXPORT_C(char, Fl_Preferences_get_int)(fl_Preferences preferences, const char* entry, int *value, int defaultValue);+  FL_EXPORT_C(char, Fl_Preferences_get_float)(fl_Preferences preferences, const char* entry, float *value, float defaultValue);+  FL_EXPORT_C(char, Fl_Preferences_get_double)(fl_Preferences preferences, const char* entry, double *value, double defaultValue);+  FL_EXPORT_C(char, Fl_Preferences_get_char)(fl_Preferences preferences, const char* entry, char* value, const char* defaultValue);+  FL_EXPORT_C(char, Fl_Preferences_get_char_with_maxSize)(fl_Preferences preferences, const char* entry, char* value, const char* defaultValue, int maxSize);+  FL_EXPORT_C(char, Fl_Preferences_get_char_with_defaultSize)(fl_Preferences preferences, const char* entry, char* value, const char* defaultValue, int defaultSize);+  FL_EXPORT_C(char, Fl_Preferences_get_void)(fl_Preferences preferences, const char* entry, char* value, const char* defaultValue, int defaultSize);+  FL_EXPORT_C(char, Fl_Preferences_get_void_with_defaultSize_maxSize)(fl_Preferences preferences, const char* entry, char* value, const char* defaultValue, int defaultSize, int maxSize);+  FL_EXPORT_C(char, Fl_Preferences_get_void_with_defaultSize)(fl_Preferences preferences, const char* entry, char* value, const char* defaultValue, int defaultSize);+  FL_EXPORT_C(int, Fl_Preferences_size)(fl_Preferences preferences,const char *entry );+  FL_EXPORT_C(char, Fl_Preferences_getUserdataPath)(fl_Preferences preferences, char *path, int pathlen );+  FL_EXPORT_C(void, Fl_Preferences_flush)(fl_Preferences preferences);+#ifdef __cplusplus+}+#endif+#endif /*__FL_PREFERENCES_C__*/
+ c-src/Fl_PrinterC.cpp view
@@ -0,0 +1,110 @@+#include "Fl_PrinterC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(const char*,Fl_Printer_class_id)( ){+    return Fl_Surface_Device::class_id;+  }+  FL_EXPORT_C(const char*,Fl_Printer_class_name)(fl_Printer printer){+    return (static_cast<Fl_Printer*>(printer))->class_name();+  }+  FL_EXPORT_C(void,Fl_Printer_set_current)(fl_Printer printer){+    return (static_cast<Fl_Printer*>(printer))->set_current();+  }+  FL_EXPORT_C(fl_Graphics_Driver,Fl_Printer_driver)(fl_Printer printer){+    return (fl_Graphics_Driver)(static_cast<Fl_Printer*>(printer))->driver();+  }+  FL_EXPORT_C(fl_Surface_Device,Fl_Printer_surface)(){+    return (fl_Surface_Device)Fl_Surface_Device::surface();+  }+  FL_EXPORT_C(int,Fl_Printer_start_job)(fl_Printer printer,int pagecount){+    return (static_cast<Fl_Printer*>(printer))->start_job(pagecount);+  }+  FL_EXPORT_C(int,Fl_Printer_start_job_with_frompage)(fl_Printer printer,int pagecount,int* frompage){+    return (static_cast<Fl_Printer*>(printer))->start_job(pagecount,frompage);+  }+  FL_EXPORT_C(int,Fl_Printer_start_job_with_topage)(fl_Printer printer,int pagecount,int* topage){+    return (static_cast<Fl_Printer*>(printer))->start_job(pagecount,NULL,topage);+  }+  FL_EXPORT_C(int,Fl_Printer_start_job_with_frompage_topage)(fl_Printer printer,int pagecount,int* frompage,int* topage){+    return (static_cast<Fl_Printer*>(printer))->start_job(pagecount,frompage,topage);+  }+  FL_EXPORT_C(int,Fl_Printer_start_page)(fl_Printer printer){+    return (static_cast<Fl_Printer*>(printer))->start_page();+  }+  FL_EXPORT_C(int,Fl_Printer_printable_rect)(fl_Printer printer,int* w,int* h){+    return (static_cast<Fl_Printer*>(printer))->printable_rect(w,h);+  }+  FL_EXPORT_C(void,Fl_Printer_margins)(fl_Printer printer,int* left,int* top,int* right,int* bottom){+    (static_cast<Fl_Printer*>(printer))->margins(left,top,right,bottom);+  }+  FL_EXPORT_C(void,Fl_Printer_origin)(fl_Printer printer,int* x,int* y){+    (static_cast<Fl_Printer*>(printer))->origin(x,y);+  }+  FL_EXPORT_C(void,Fl_Printer_scale)(fl_Printer printer,float scale_x){+    (static_cast<Fl_Printer*>(printer))->scale(scale_x);+  }+  FL_EXPORT_C(void,Fl_Printer_scale_with_scale_y)(fl_Printer printer,float scale_x,float scale_y){+    (static_cast<Fl_Printer*>(printer))->scale(scale_x,scale_y);+  }+  FL_EXPORT_C(void,Fl_Printer_rotate)(fl_Printer printer,float angle){+    (static_cast<Fl_Printer*>(printer))->rotate(angle);+  }+  FL_EXPORT_C(void,Fl_Printer_translate)(fl_Printer printer,int x,int y){+    (static_cast<Fl_Printer*>(printer))->translate(x,y);+  }+  FL_EXPORT_C(void,Fl_Printer_untranslate)(fl_Printer printer){+    (static_cast<Fl_Printer*>(printer))->untranslate();+  }+  FL_EXPORT_C(void,Fl_Printer_print_widget)(fl_Printer printer,fl_Widget widget){+    (static_cast<Fl_Printer*>(printer))->print_widget((static_cast<Fl_Widget*>(widget)));+  }+  FL_EXPORT_C(void,Fl_Printer_print_widget_with_delta_x)(fl_Printer printer,fl_Widget widget,int delta_x){+    (static_cast<Fl_Printer*>(printer))->print_widget((static_cast<Fl_Widget*>(widget)),delta_x);+  }+  FL_EXPORT_C(void,Fl_Printer_print_widget_with_delta_y)(fl_Printer printer,fl_Widget widget,int delta_y){+    (static_cast<Fl_Printer*>(printer))->print_widget((static_cast<Fl_Widget*>(widget)),0,delta_y);+  }+  FL_EXPORT_C(void,Fl_Printer_print_widget_with_delta_x_delta_y)(fl_Printer printer,fl_Widget widget,int delta_x,int delta_y){+    (static_cast<Fl_Printer*>(printer))->print_widget((static_cast<Fl_Widget*>(widget)),delta_x,delta_y);+  }+  FL_EXPORT_C(void,Fl_Printer_print_window)(fl_Printer printer,fl_Window win){+    (static_cast<Fl_Printer*>(printer))->print_window((static_cast<Fl_Window*>(win)));+  }+  FL_EXPORT_C(void,Fl_Printer_print_window_with_x_offset)(fl_Printer printer,fl_Window win,int x_offset){+    (static_cast<Fl_Printer*>(printer))->print_window((static_cast<Fl_Window*>(win)),x_offset);+  }+  FL_EXPORT_C(void,Fl_Printer_print_window_with_y_offset)(fl_Printer printer,fl_Window win,int y_offset){+    (static_cast<Fl_Printer*>(printer))->print_window((static_cast<Fl_Window*>(win)),y_offset);+  }+  FL_EXPORT_C(void,Fl_Printer_print_window_with_x_offset_y_offset)(fl_Printer printer,fl_Window win,int x_offset,int y_offset){+    (static_cast<Fl_Printer*>(printer))->print_window((static_cast<Fl_Window*>(win)),x_offset,y_offset);+  }+  FL_EXPORT_C(void,Fl_Printer_print_window_part)(fl_Printer printer,fl_Window win,int x,int y,int w,int h){+    (static_cast<Fl_Printer*>(printer))->print_window_part((static_cast<Fl_Window*>(win)),x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Printer_print_window_part_with_delta_x)(fl_Printer printer,fl_Window win,int x,int y,int w,int h,int delta_x){+    (static_cast<Fl_Printer*>(printer))->print_window_part((static_cast<Fl_Window*>(win)),x,y,w,h,delta_x);+  }+  FL_EXPORT_C(void,Fl_Printer_print_window_part_with_delta_y)(fl_Printer printer,fl_Window win,int x,int y,int w,int h,int delta_y){+    (static_cast<Fl_Printer*>(printer))->print_window_part((static_cast<Fl_Window*>(win)),x,y,w,h,0,delta_y);+  }+  FL_EXPORT_C(void,Fl_Printer_print_window_part_with_delta_xy)(fl_Printer printer,fl_Window win,int x,int y,int w,int h,int delta_x,int delta_y){+    (static_cast<Fl_Printer*>(printer))->print_window_part((static_cast<Fl_Window*>(win)),x,y,w,h,delta_x,delta_y);+  }+  FL_EXPORT_C(int,Fl_Printer_end_page)(fl_Printer printer){+    return (static_cast<Fl_Printer*>(printer))->end_page();+  }+  FL_EXPORT_C(void,Fl_Printer_end_job)(fl_Printer printer){+    (static_cast<Fl_Printer*>(printer))->end_job();+  }+  FL_EXPORT_C(fl_Printer, Fl_Printer_New)(){+    Fl_Printer* p = new Fl_Printer();+    return (fl_Printer)p;+  }+  FL_EXPORT_C(void, Fl_Printer_Destroy)(fl_Printer printer){+    delete (static_cast<Fl_Printer*>(printer));+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_PrinterC.h view
@@ -0,0 +1,51 @@+#ifndef __FL_PRINTER_C__+#define __FL_PRINTER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Printer.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  // Inherited from Fl_Surface_Driver+  FL_EXPORT_C(const char*, Fl_Printer_class_id)();+  FL_EXPORT_C(const char*, Fl_Printer_class_name)(fl_Printer printer);+  FL_EXPORT_C(void, Fl_Printer_set_current)(fl_Printer printer);+  FL_EXPORT_C(fl_Graphics_Driver, Fl_Printer_driver)(fl_Printer printer);+  FL_EXPORT_C(fl_Surface_Device, Fl_Printer_surface)();+  // Inherited from Fl_Printer+  FL_EXPORT_C(int, Fl_Printer_start_job)(fl_Printer printer,int pagecount);+  FL_EXPORT_C(int, Fl_Printer_start_job_with_frompage)(fl_Printer printer,int pagecount, int* frompage);+  FL_EXPORT_C(int, Fl_Printer_start_job_with_topage)(fl_Printer printer,int pagecount, int* topage);+  FL_EXPORT_C(int, Fl_Printer_start_job_with_frompage_topage)(fl_Printer printer,int pagecount, int* frompage, int* topage);+  FL_EXPORT_C(int, Fl_Printer_start_page)(fl_Printer printer);+  FL_EXPORT_C(int, Fl_Printer_printable_rect)(fl_Printer printer,int* w, int* h);+  FL_EXPORT_C(void, Fl_Printer_margins)(fl_Printer printer,int* left, int* top, int* right, int* bottom);+  FL_EXPORT_C(void, Fl_Printer_origin)(fl_Printer printer,int* x, int* y);+  FL_EXPORT_C(void, Fl_Printer_scale)(fl_Printer printer,float scale_x);+  FL_EXPORT_C(void, Fl_Printer_scale_with_scale_y)(fl_Printer printer,float scale_x, float scale_y);+  FL_EXPORT_C(void, Fl_Printer_rotate)(fl_Printer printer,float angle);+  FL_EXPORT_C(void, Fl_Printer_translate)(fl_Printer printer,int x, int y);+  FL_EXPORT_C(void, Fl_Printer_untranslate)(fl_Printer printer);+  FL_EXPORT_C(void, Fl_Printer_print_widget)(fl_Printer printer,fl_Widget widget);+  FL_EXPORT_C(void, Fl_Printer_print_widget_with_delta_x)(fl_Printer printer,fl_Widget widget, int delta_x);+  FL_EXPORT_C(void, Fl_Printer_print_widget_with_delta_y)(fl_Printer printer,fl_Widget widget, int delta_y);+  FL_EXPORT_C(void, Fl_Printer_print_widget_with_delta_x_delta_y)(fl_Printer printer,fl_Widget widget, int delta_x, int delta_y);+  FL_EXPORT_C(void, Fl_Printer_print_window)(fl_Printer printer,fl_Window win);+  FL_EXPORT_C(void, Fl_Printer_print_window_with_x_offset)(fl_Printer printer,fl_Window win, int x_offset);+  FL_EXPORT_C(void, Fl_Printer_print_window_with_y_offset)(fl_Printer printer,fl_Window win, int y_offset);+  FL_EXPORT_C(void, Fl_Printer_print_window_with_x_offset_y_offset)(fl_Printer printer,fl_Window win, int x_offset, int y_offset);+  FL_EXPORT_C(void, Fl_Printer_print_window_part)(fl_Printer printer,fl_Window win, int x, int y, int w, int h);+  FL_EXPORT_C(void, Fl_Printer_print_window_part_with_delta_x)(fl_Printer printer,fl_Window win, int x, int y, int w, int h, int delta_x);+  FL_EXPORT_C(void, Fl_Printer_print_window_part_with_delta_y)(fl_Printer printer,fl_Window win, int x, int y, int w, int h, int delta_y);+  FL_EXPORT_C(void, Fl_Printer_print_window_part_with_delta_xy)(fl_Printer printer,fl_Window win, int x, int y, int w, int h, int delta_x, int delta_y);+  FL_EXPORT_C(int,  Fl_Printer_end_page)(fl_Printer printer);+  FL_EXPORT_C(void, Fl_Printer_end_job)(fl_Printer printer);+  FL_EXPORT_C(fl_Printer, Fl_Printer_New)();+  FL_EXPORT_C(void, Fl_Printer_Destroy)(fl_Printer printer);+#ifdef __cplusplus+}+#endif+#endif /* __FL_PRINTER_C__ */
+ c-src/Fl_ProgressC.cpp view
@@ -0,0 +1,310 @@+#include "Fl_ProgressC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Progress_handle )(fl_Progress progress, int event){+    return (static_cast<Fl_Progress*>(progress))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Progress_resize )(fl_Progress progress,int x, int y, int w, int h){+    (static_cast<Fl_Progress*>(progress))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Progress_show )(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->show();+  }+  FL_EXPORT_C(void,Fl_Progress_hide )(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Progress_as_window )(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->as_window();+  }+  FL_EXPORT_C(fl_Group,Fl_Progress_parent)(fl_Progress progress){+    return (fl_Group) (static_cast<Fl_Progress*>(progress))->parent();+  }+  FL_EXPORT_C(void,Fl_Progress_set_parent)(fl_Progress progress,fl_Group grp){+    (static_cast<Fl_Progress*>(progress))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Progress_type)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->type();+  }+  FL_EXPORT_C(void,Fl_Progress_set_type)(fl_Progress progress,uchar t){+    (static_cast<Fl_Progress*>(progress))->type(t);+  }++  FL_EXPORT_C(int,Fl_Progress_x)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->x();+  }+  FL_EXPORT_C(int,Fl_Progress_y)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->y();+  }+  FL_EXPORT_C(int,Fl_Progress_w)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->w();+  }+  FL_EXPORT_C(int,Fl_Progress_h)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->h();+  }+  FL_EXPORT_C(void,Fl_Progress_set_align)(fl_Progress progress, Fl_Align alignment){+    (static_cast<Fl_Progress*>(progress))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Progress_align)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Progress_box)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->box();+  }+  FL_EXPORT_C(void,Fl_Progress_set_box)(fl_Progress progress,Fl_Boxtype new_box){+    (static_cast<Fl_Progress*>(progress))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Progress_color)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->color();+  }+  FL_EXPORT_C(void,Fl_Progress_set_color)(fl_Progress progress,Fl_Color bg){+    (static_cast<Fl_Progress*>(progress))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Progress_set_color_with_bg_sel)(fl_Progress progress,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Progress*>(progress))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Progress_selection_color)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Progress_set_selection_color)(fl_Progress progress,Fl_Color a){+    (static_cast<Fl_Progress*>(progress))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Progress_label)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->label();+  }+  FL_EXPORT_C(void,Fl_Progress_copy_label)(fl_Progress progress,const char* new_label){+    (static_cast<Fl_Progress*>(progress))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Progress_set_label)(fl_Progress progress,const char* text){+    (static_cast<Fl_Progress*>(progress))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Progress_labeltype)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Progress_set_labeltype)(fl_Progress progress,Fl_Labeltype a){+    (static_cast<Fl_Progress*>(progress))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Progress_set_labelcolor)(fl_Progress progress,Fl_Color c){+    (static_cast<Fl_Progress*>(progress))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Progress_labelcolor)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Progress_labelfont)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Progress_set_labelfont)(fl_Progress progress,Fl_Font c){+    (static_cast<Fl_Progress*>(progress))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Progress_labelsize)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Progress_set_labelsize)(fl_Progress progress,Fl_Fontsize pix){+    (static_cast<Fl_Progress*>(progress))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Progress_image)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->image();+  }+  FL_EXPORT_C(void,Fl_Progress_set_image)(fl_Progress progress,fl_Image pix){+    (static_cast<Fl_Progress*>(progress))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Progress_deimage)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->deimage();+  }+  FL_EXPORT_C(void,Fl_Progress_set_deimage)(fl_Progress progress,fl_Image pix){+    (static_cast<Fl_Progress*>(progress))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Progress_tooltip)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Progress_copy_tooltip)(fl_Progress progress,const char* text){+    (static_cast<Fl_Progress*>(progress))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Progress_set_tooltip)(fl_Progress progress,const char* text){+    (static_cast<Fl_Progress*>(progress))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Progress_set_callback_with_user_data)(fl_Progress progress,fl_Callback* cb,void* p){+    Fl_Progress* castedButton = (static_cast<Fl_Progress*>(progress));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Progress_set_callback)(fl_Progress progress,fl_Callback* cb){+    Fl_Progress* castedButton = (static_cast<Fl_Progress*>(progress));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Progress_user_data)(fl_Progress progress){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Progress*>(progress))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Progress*>(progress))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Progress_set_user_data)(fl_Progress progress,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Progress*>(progress))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Progress*>(progress))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Progress*>(progress))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Progress_argument)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->argument();+  }+  FL_EXPORT_C(void,Fl_Progress_set_argument)(fl_Progress progress,long v){+    (static_cast<Fl_Progress*>(progress))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Progress_when)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->when();+  }+  FL_EXPORT_C(void,Fl_Progress_set_when)(fl_Progress progress,uchar i){+    (static_cast<Fl_Progress*>(progress))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Progress_visible)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->visible();+  }+  FL_EXPORT_C(int,Fl_Progress_visible_r)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Progress_set_visible)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->visible();+  }+  FL_EXPORT_C(void,Fl_Progress_clear_visible)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Progress_active)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->active();+  }+  FL_EXPORT_C(int,Fl_Progress_active_r)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->active_r();+  }+  FL_EXPORT_C(void,Fl_Progress_activate)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->activate();+  }+  FL_EXPORT_C(void,Fl_Progress_deactivate)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Progress_output)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->output();+  }+  FL_EXPORT_C(void,Fl_Progress_set_output)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->output();+  }+  FL_EXPORT_C(void,Fl_Progress_clear_output)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Progress_takesevents)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Progress_set_changed)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->changed();+  }+  FL_EXPORT_C(void,Fl_Progress_clear_changed)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Progress_take_focus)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Progress_set_visible_focus)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Progress_clear_visible_focus)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Progress_modify_visible_focus)(fl_Progress progress,int v){+    (static_cast<Fl_Progress*>(progress))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Progress_visible_focus)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Progress_do_callback)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Progress_do_callback_with_widget_and_user_data)(fl_Progress progress,fl_Widget w,long arg){+    (static_cast<Fl_Progress*>(progress))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Progress_do_callback_with_widget_and_default_user_data)(fl_Progress progress,fl_Widget w){+    (static_cast<Fl_Progress*>(progress))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Progress_contains)(fl_Progress progress,fl_Widget w){+    return (static_cast<Fl_Progress*>(progress))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Progress_inside)(fl_Progress progress,fl_Widget w){+    return (static_cast<Fl_Progress*>(progress))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Progress_redraw)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->redraw();+  }+  FL_EXPORT_C(void,Fl_Progress_redraw_label)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Progress_damage)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->damage();+  }+  FL_EXPORT_C(void,Fl_Progress_clear_damage_with_bitmask)(fl_Progress progress,uchar c){+    (static_cast<Fl_Progress*>(progress))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Progress_clear_damage)(fl_Progress progress){+    (static_cast<Fl_Progress*>(progress))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Progress_damage_with_text)(fl_Progress progress,uchar c){+    (static_cast<Fl_Progress*>(progress))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Progress_damage_inside_widget)(fl_Progress progress,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Progress*>(progress))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Progress_draw_label_with_xywh_alignment)(fl_Progress progress,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Progress*>(progress))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Progress_measure_label)(fl_Progress progress,int* ww,int* hh){+    (static_cast<Fl_Progress*>(progress))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Progress_window)(fl_Progress progress){+    return (fl_Window) (static_cast<Fl_Progress*>(progress))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Progress_top_window)(fl_Progress progress){+    return (fl_Window) (static_cast<Fl_Progress*>(progress))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Progress_top_window_offset)(fl_Progress progress, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Progress*>(progress))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Progress_as_group)(fl_Progress progress){+    return (fl_Group) (static_cast<Fl_Progress*>(progress))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Progress_as_gl_window)(fl_Progress progress){+    return (fl_Gl_Window) (static_cast<Fl_Progress*>(progress))->as_gl_window();+  }+  FL_EXPORT_C(fl_Progress, Fl_Progress_New)(int x, int y, int w, int h){+    Fl_Progress* p = new Fl_Progress(x,y,w,h);+    return (fl_Progress)p;+  }+  FL_EXPORT_C(fl_Progress, Fl_Progress_New_WithLabel)(int x, int y, int w, int h,const char *l){+    Fl_Progress* p = new Fl_Progress(x,y,w,h,l);+    return (fl_Progress)p;+  }+  FL_EXPORT_C(void , Fl_Progress_Destroy)(fl_Progress progress){+    delete (static_cast<Fl_Progress*>(progress));+  }+  FL_EXPORT_C(void,Fl_Progress_set_maximum)(fl_Progress progress,float v){+    return (static_cast<Fl_Progress*>(progress))->maximum(v);+  }+  FL_EXPORT_C(float,Fl_Progress_maximum)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->maximum();+  }+  FL_EXPORT_C(void,Fl_Progress_set_minimum)(fl_Progress progress,float v){+    return (static_cast<Fl_Progress*>(progress))->minimum(v);+  }+  FL_EXPORT_C(float,Fl_Progress_minimum)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->minimum();+  }+  FL_EXPORT_C(void,Fl_Progress_set_value)(fl_Progress progress,float v){+    return (static_cast<Fl_Progress*>(progress))->value(v);+  }+  FL_EXPORT_C(float,Fl_Progress_value)(fl_Progress progress){+    return (static_cast<Fl_Progress*>(progress))->value();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_ProgressC.h view
@@ -0,0 +1,115 @@+#ifndef __FL_PROGRESS_C__+#define __FL_PROGRESS_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Progress.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int ,         Fl_Progress_handle )(fl_Progress progress,int event);+  FL_EXPORT_C(void,         Fl_Progress_resize )(fl_Progress progress,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Progress_show )(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_hide )(fl_Progress progress);+  FL_EXPORT_C(fl_Window,    Fl_Progress_as_window )(fl_Progress progress);+  FL_EXPORT_C(fl_Gl_Window, Fl_Progress_as_gl_window)(fl_Progress progress);+  FL_EXPORT_C(fl_Group,     Fl_Progress_parent)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_parent)(fl_Progress progress, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Progress_type)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_type)(fl_Progress progress, uchar t);++  FL_EXPORT_C(int,          Fl_Progress_x)(fl_Progress progress);+  FL_EXPORT_C(int,          Fl_Progress_y)(fl_Progress progress);+  FL_EXPORT_C(int,          Fl_Progress_w)(fl_Progress progress);+  FL_EXPORT_C(int,          Fl_Progress_h)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_align)(fl_Progress progress, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Progress_align)(fl_Progress progress);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Progress_box)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_box)(fl_Progress progress, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Progress_color)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_color)(fl_Progress progress, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Progress_set_color_with_bg_sel)(fl_Progress progress,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Progress_selection_color)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_selection_color)(fl_Progress progress, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Progress_label)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_copy_label)(fl_Progress progress, const char* new_label);+  FL_EXPORT_C(void,         Fl_Progress_set_label)(fl_Progress progress, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Progress_labeltype)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_labeltype)(fl_Progress progress, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Progress_labelcolor)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_labelcolor)(fl_Progress progress, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Progress_labelfont)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_labelfont)(fl_Progress progress, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Progress_labelsize)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_labelsize)(fl_Progress progress, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Progress_image)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_image)(fl_Progress progress, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Progress_deimage)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_deimage)(fl_Progress progress, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Progress_tooltip)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_copy_tooltip)(fl_Progress progress, const char* text);+  FL_EXPORT_C(void,         Fl_Progress_set_tooltip)(fl_Progress progress, const char* text);+  FL_EXPORT_C(void,         Fl_Progress_set_callback_with_user_data)(fl_Progress progress, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Progress_set_callback)(fl_Progress progress, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Progress_user_data)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_user_data)(fl_Progress progress, void* v);+  FL_EXPORT_C(long,         Fl_Progress_argument)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_argument)(fl_Progress progress, long v);+  FL_EXPORT_C(Fl_When,      Fl_Progress_when)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_when)(fl_Progress progress, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Progress_visible)(fl_Progress progress);+  FL_EXPORT_C(int,          Fl_Progress_visible_r)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_visible)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_clear_visible)(fl_Progress progress);+  FL_EXPORT_C(unsigned int, Fl_Progress_active)(fl_Progress progress);+  FL_EXPORT_C(int,          Fl_Progress_active_r)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_activate)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_deactivate)(fl_Progress progress);+  FL_EXPORT_C(unsigned int, Fl_Progress_output)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_output)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_clear_output)(fl_Progress progress);+  FL_EXPORT_C(unsigned int, Fl_Progress_takesevents)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_changed)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_clear_changed)(fl_Progress progress);+  FL_EXPORT_C(int,          Fl_Progress_take_focus)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_set_visible_focus)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_clear_visible_focus)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_modify_visible_focus)(fl_Progress progress, int v);+  FL_EXPORT_C(unsigned int, Fl_Progress_visible_focus)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_do_callback)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_do_callback_with_widget_and_user_data)(fl_Progress progress, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Progress_do_callback_with_widget_and_default_user_data)(fl_Progress progress, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Progress_contains)(fl_Progress progress, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Progress_inside)(fl_Progress progress, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Progress_redraw)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_redraw_label)(fl_Progress progress);+  FL_EXPORT_C(uchar,        Fl_Progress_damage)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_clear_damage_with_bitmask)(fl_Progress progress, uchar c);+  FL_EXPORT_C(void,         Fl_Progress_clear_damage)(fl_Progress progress);+  FL_EXPORT_C(void,         Fl_Progress_damage_with_text)(fl_Progress progress, uchar c);+  FL_EXPORT_C(void,         Fl_Progress_damage_inside_widget)(fl_Progress progress, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Progress_draw_label_with_xywh_alignment)(fl_Progress progress, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Progress_measure_label)(fl_Progress progress, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Progress_window)(fl_Progress progress);+  FL_EXPORT_C(fl_Window,    Fl_Progress_top_window)(fl_Progress progress);+  FL_EXPORT_C(fl_Window ,   Fl_Progress_top_window_offset)(fl_Progress progress, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Progress_as_group)(fl_Progress progress);+  FL_EXPORT_C(fl_Gl_Window, Fl_Progress_as_gl_window)(fl_Progress progress);++  FL_EXPORT_C(fl_Progress, Fl_Progress_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Progress, Fl_Progress_New_WithLabel)(int x, int y, int w, int h,const char *l);++  FL_EXPORT_C(void, Fl_Progress_Destroy)(fl_Progress progress);+  FL_EXPORT_C(void ,     Fl_Progress_set_maximum)(fl_Progress progress,float v);+  FL_EXPORT_C(float,     Fl_Progress_maximum)(fl_Progress progress);+  FL_EXPORT_C(void ,     Fl_Progress_set_minimum)(fl_Progress progress,float v);+  FL_EXPORT_C(float,     Fl_Progress_minimum)(fl_Progress progress);+  FL_EXPORT_C(void ,     Fl_Progress_set_value  )(fl_Progress progress,float v);+  FL_EXPORT_C(float,     Fl_Progress_value  )(fl_Progress progress);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_PROGRESS_C__*/
+ c-src/Fl_RGB_ImageC.cpp view
@@ -0,0 +1,83 @@+#include "Fl_RGB_ImageC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(fl_RGB_Image, Fl_RGB_Image_New)(uchar* bits, int W, int H){+    Fl_RGB_Image* i = new Fl_RGB_Image(bits,W,H);+    return (fl_RGB_Image)i;+  }+  FL_EXPORT_C(fl_RGB_Image, Fl_RGB_Image_New_With_D)(uchar* bits, int W, int H, int D){+    Fl_RGB_Image* i = new Fl_RGB_Image(bits,W,H,D);+    return (fl_RGB_Image)i;+  }+  FL_EXPORT_C(fl_RGB_Image, Fl_RGB_Image_New_With_LD)(uchar* bits, int W, int H, int LD){+    Fl_RGB_Image* i = new Fl_RGB_Image(bits,W,H,0,LD);+    return (fl_RGB_Image)i;+  }+  FL_EXPORT_C(fl_RGB_Image, Fl_RGB_Image_New_With_D_LD)(uchar* bits, int W, int H, int D, int LD){+    Fl_RGB_Image* i = new Fl_RGB_Image(bits,W,H,D,LD);+    return (fl_RGB_Image)i;+  }+  FL_EXPORT_C(void, Fl_RGB_Image_Destroy)(fl_RGB_Image rgb_image) {+    delete (static_cast<Fl_RGB_Image*>(rgb_image));+  }+  FL_EXPORT_C(int,Fl_RGB_Image_w)(fl_RGB_Image rgb_image){+    return (static_cast<Fl_RGB_Image*>(rgb_image))->w();+  }+  FL_EXPORT_C(int,Fl_RGB_Image_h)(fl_RGB_Image rgb_image){+    return (static_cast<Fl_RGB_Image*>(rgb_image))->h();+  }+  FL_EXPORT_C(int,Fl_RGB_Image_d)(fl_RGB_Image rgb_image){+    return (static_cast<Fl_RGB_Image*>(rgb_image))->d();+  }+  FL_EXPORT_C(int,Fl_RGB_Image_ld)(fl_RGB_Image rgb_image){+    return (static_cast<Fl_RGB_Image*>(rgb_image))->ld();+  }+  FL_EXPORT_C(int,Fl_RGB_Image_count)(fl_RGB_Image rgb_image){+    return (static_cast<Fl_RGB_Image*>(rgb_image))->count();+  }+  FL_EXPORT_C(fl_Image,Fl_RGB_Image_copy_with_w_h)(fl_RGB_Image rgb_image,int W,int H){+    return (static_cast<Fl_RGB_Image*>(rgb_image))->copy(W,H);+  }+  FL_EXPORT_C(fl_Image,Fl_RGB_Image_copy)(fl_RGB_Image rgb_image){+    return (static_cast<Fl_RGB_Image*>(rgb_image))->copy();+  }+  FL_EXPORT_C(void,Fl_RGB_Image_color_average)(fl_RGB_Image rgb_image,Fl_Color c,float i){+    (static_cast<Fl_RGB_Image*>(rgb_image))->color_average(c,i);+  }+  FL_EXPORT_C(void,Fl_RGB_Image_inactive)(fl_RGB_Image rgb_image){+    (static_cast<Fl_RGB_Image*>(rgb_image))->inactive();+  }+  FL_EXPORT_C(void,Fl_RGB_Image_desaturate)(fl_RGB_Image rgb_image){+    (static_cast<Fl_RGB_Image*>(rgb_image))->desaturate();+  }+  FL_EXPORT_C(void,Fl_RGB_Image_label)(fl_RGB_Image rgb_image,fl_Widget w){+    (static_cast<Fl_RGB_Image*>(rgb_image))->label((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_RGB_Image_label_with_menu_item)(fl_RGB_Image rgb_image,fl_Menu_Item m){+    (static_cast<Fl_RGB_Image*>(rgb_image))->label((static_cast<Fl_Menu_Item*>(m)));+  }+  FL_EXPORT_C(void,Fl_RGB_Image_draw_with_cx_cy)(fl_RGB_Image rgb_image,int X,int Y,int W,int H,int cx,int cy){+    (static_cast<Fl_RGB_Image*>(rgb_image))->draw(X,Y,W,H,cx,cy);+  }+  FL_EXPORT_C(void,Fl_RGB_Image_draw_with_cx)(fl_RGB_Image rgb_image,int X,int Y,int W,int H,int cx){+    (static_cast<Fl_RGB_Image*>(rgb_image))->draw(X,Y,W,H,cx);+  }+  FL_EXPORT_C(void,Fl_RGB_Image_draw_with_cy)(fl_RGB_Image rgb_image,int X,int Y,int W,int H,int cy){+    (static_cast<Fl_RGB_Image*>(rgb_image))->draw(X,Y,W,H,cy);+  }+  FL_EXPORT_C(void,Fl_RGB_Image_draw)(fl_RGB_Image rgb_image,int X,int Y){+    (static_cast<Fl_RGB_Image*>(rgb_image))->draw(X,Y);+  }+  FL_EXPORT_C(void,Fl_RGB_Image_uncache)(fl_RGB_Image rgb_image){+    (static_cast<Fl_RGB_Image*>(rgb_image))->uncache();+  }+  FL_EXPORT_C(void,Fl_RGB_Image_set_max_size)(size_t size){+    Fl_RGB_Image::max_size(size);+  }+  FL_EXPORT_C(size_t,Fl_RGB_Image_max_size)( ){+    return Fl_RGB_Image::max_size();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_RGB_ImageC.h view
@@ -0,0 +1,39 @@+#ifndef __FL_RGB_IMAGE_C__+#define __FL_RGB_IMAGE_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Image.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_RGB_Image, Fl_RGB_Image_New)(uchar* bits, int W, int H);+  FL_EXPORT_C(fl_RGB_Image, Fl_RGB_Image_New_With_D)(uchar* bits, int W, int H, int D);+  FL_EXPORT_C(fl_RGB_Image, Fl_RGB_Image_New_With_LD)(uchar* bits, int W, int H, int LD);+  FL_EXPORT_C(fl_RGB_Image, Fl_RGB_Image_New_With_D_LD)(uchar* bits, int W, int H, int D, int LD);+  FL_EXPORT_C(void, Fl_RGB_Image_Destroy)(fl_RGB_Image rgb_image);+  FL_EXPORT_C(int, Fl_RGB_Image_w)(fl_RGB_Image rgb_image);+  FL_EXPORT_C(int, Fl_RGB_Image_h)(fl_RGB_Image rgb_image);+  FL_EXPORT_C(int, Fl_RGB_Image_d)(fl_RGB_Image rgb_image);+  FL_EXPORT_C(int, Fl_RGB_Image_ld)(fl_RGB_Image rgb_image);+  FL_EXPORT_C(int, Fl_RGB_Image_count)(fl_RGB_Image rgb_image);+  FL_EXPORT_C(fl_Image, Fl_RGB_Image_copy_with_w_h)(fl_RGB_Image rgb_image,int W, int H);+  FL_EXPORT_C(fl_Image, Fl_RGB_Image_copy)(fl_RGB_Image rgb_image);+  FL_EXPORT_C(void, Fl_RGB_Image_color_average)(fl_RGB_Image rgb_image,Fl_Color c, float i);+  FL_EXPORT_C(void, Fl_RGB_Image_inactive)(fl_RGB_Image rgb_image);+  FL_EXPORT_C(void, Fl_RGB_Image_desaturate)(fl_RGB_Image rgb_image);+  FL_EXPORT_C(void, Fl_RGB_Image_label)(fl_RGB_Image rgb_image,fl_Widget w);+  FL_EXPORT_C(void, Fl_RGB_Image_label_with_menu_item)(fl_RGB_Image rgb_image,fl_Menu_Item m);+  FL_EXPORT_C(void, Fl_RGB_Image_draw_with_cx_cy)(fl_RGB_Image rgb_image,int X, int Y, int W, int H, int cx, int cy);+  FL_EXPORT_C(void, Fl_RGB_Image_draw_with_cx)(fl_RGB_Image rgb_image,int X, int Y, int W, int H, int cx);+  FL_EXPORT_C(void, Fl_RGB_Image_draw_with_cy)(fl_RGB_Image rgb_image,int X, int Y, int W, int H, int cy);+  FL_EXPORT_C(void, Fl_RGB_Image_draw)(fl_RGB_Image rgb_image,int X, int Y);+  FL_EXPORT_C(void, Fl_RGB_Image_uncache)(fl_RGB_Image rgb_image);+  FL_EXPORT_C(void, Fl_RGB_Image_set_max_size)(size_t size);+  FL_EXPORT_C(size_t, Fl_RGB_Image_max_size)();+#ifdef __cplusplus+}+#endif+#endif /* __FL_RGB_IMAGE_C__ */
+ c-src/Fl_Radio_ButtonC.cpp view
@@ -0,0 +1,312 @@+#include "Fl_Radio_ButtonC.h"++#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Radio_Button_handle)(fl_Radio_Button self, int event){+    return (static_cast<Fl_Radio_Button*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Radio_Button_parent)(fl_Radio_Button b){+    return (fl_Group) (static_cast<Fl_Radio_Button*>(b))->parent();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_parent)(fl_Radio_Button b,fl_Group grp){+    (static_cast<Fl_Radio_Button*>(b))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Radio_Button_type)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->type();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_type)(fl_Radio_Button b,uchar t){+    (static_cast<Fl_Radio_Button*>(b))->type(t);+  }++  FL_EXPORT_C(int,Fl_Radio_Button_x)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->x();+  }+  FL_EXPORT_C(int,Fl_Radio_Button_y)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->y();+  }+  FL_EXPORT_C(int,Fl_Radio_Button_w)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->w();+  }+  FL_EXPORT_C(int,Fl_Radio_Button_h)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->h();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_align)(fl_Radio_Button radio_button, Fl_Align alignment){+    (static_cast<Fl_Radio_Button*>(radio_button))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Radio_Button_align)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Radio_Button_box)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->box();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_box)(fl_Radio_Button b,Fl_Boxtype new_box){+    (static_cast<Fl_Radio_Button*>(b))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Radio_Button_color)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->color();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_color)(fl_Radio_Button b,Fl_Color bg){+    (static_cast<Fl_Radio_Button*>(b))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_color_with_bg_sel)(fl_Radio_Button b,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Radio_Button*>(b))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Radio_Button_selection_color)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_selection_color)(fl_Radio_Button b,Fl_Color a){+    (static_cast<Fl_Radio_Button*>(b))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Radio_Button_label)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->label();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_copy_label)(fl_Radio_Button b,const char* new_label){+    (static_cast<Fl_Radio_Button*>(b))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_label)(fl_Radio_Button b,const char* text){+    (static_cast<Fl_Radio_Button*>(b))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Radio_Button_labeltype)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_labeltype)(fl_Radio_Button b,Fl_Labeltype a){+    (static_cast<Fl_Radio_Button*>(b))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_labelcolor)(fl_Radio_Button b,Fl_Color c){+    (static_cast<Fl_Radio_Button*>(b))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Radio_Button_labelcolor)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Radio_Button_labelfont)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_labelfont)(fl_Radio_Button b,Fl_Font c){+    (static_cast<Fl_Radio_Button*>(b))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Radio_Button_labelsize)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_labelsize)(fl_Radio_Button b,Fl_Fontsize pix){+    (static_cast<Fl_Radio_Button*>(b))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Radio_Button_image)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->image();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_image)(fl_Radio_Button b,fl_Image pix){+    (static_cast<Fl_Radio_Button*>(b))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Radio_Button_deimage)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->deimage();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_deimage)(fl_Radio_Button b,fl_Image pix){+    (static_cast<Fl_Radio_Button*>(b))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Radio_Button_tooltip)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_copy_tooltip)(fl_Radio_Button b,const char* text){+    (static_cast<Fl_Radio_Button*>(b))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_tooltip)(fl_Radio_Button b,const char* text){+    (static_cast<Fl_Radio_Button*>(b))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_callback_with_user_data)(fl_Radio_Button b,fl_Callback* cb,void* p){+    Fl_Radio_Button* castedButton = (static_cast<Fl_Radio_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_callback)(fl_Radio_Button b,fl_Callback* cb){+    Fl_Radio_Button* castedButton = (static_cast<Fl_Radio_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Radio_Button_user_data)(fl_Radio_Button b){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Radio_Button*>(b))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Radio_Button*>(b))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_user_data)(fl_Radio_Button b,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Radio_Button*>(b))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Radio_Button*>(b))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Radio_Button*>(b))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Radio_Button_argument)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->argument();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_argument)(fl_Radio_Button b,long v){+    (static_cast<Fl_Radio_Button*>(b))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Radio_Button_when)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->when();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_when)(fl_Radio_Button b,uchar i){+    (static_cast<Fl_Radio_Button*>(b))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Radio_Button_visible)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->visible();+  }+  FL_EXPORT_C(int,Fl_Radio_Button_visible_r)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_visible)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->visible();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_clear_visible)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Radio_Button_active)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->active();+  }+  FL_EXPORT_C(int,Fl_Radio_Button_active_r)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->active_r();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_activate)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->activate();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_deactivate)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Radio_Button_output)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_output)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_clear_output)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Radio_Button_takesevents)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_changed)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->changed();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_clear_changed)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Radio_Button_take_focus)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_visible_focus)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_clear_visible_focus)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_modify_visible_focus)(fl_Radio_Button b,int v){+    (static_cast<Fl_Radio_Button*>(b))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Radio_Button_visible_focus)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_do_callback)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_do_callback_with_widget_and_user_data)(fl_Radio_Button b,fl_Widget w,long arg){+    (static_cast<Fl_Radio_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Radio_Button_do_callback_with_widget_and_default_user_data)(fl_Radio_Button b,fl_Widget w){+    (static_cast<Fl_Radio_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Radio_Button_contains)(fl_Radio_Button b,fl_Widget w){+    return (static_cast<Fl_Radio_Button*>(b))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Radio_Button_inside)(fl_Radio_Button b,fl_Widget w){+    return (static_cast<Fl_Radio_Button*>(b))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Radio_Button_redraw)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->redraw();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_redraw_label)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Radio_Button_damage)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->damage();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_clear_damage_with_bitmask)(fl_Radio_Button b,uchar c){+    (static_cast<Fl_Radio_Button*>(b))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Radio_Button_clear_damage)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_damage_with_text)(fl_Radio_Button b,uchar c){+    (static_cast<Fl_Radio_Button*>(b))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Radio_Button_damage_inside_widget)(fl_Radio_Button b,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Radio_Button*>(b))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Radio_Button_draw_label_with_xywh_alignment)(fl_Radio_Button b,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Radio_Button*>(b))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Radio_Button_measure_label)(fl_Radio_Button b,int* ww,int* hh){+    (static_cast<Fl_Radio_Button*>(b))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Radio_Button_window)(fl_Radio_Button radio_button){+    return (fl_Window) (static_cast<Fl_Radio_Button*>(radio_button))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Radio_Button_top_window)(fl_Radio_Button radio_button){+    return (fl_Window) (static_cast<Fl_Radio_Button*>(radio_button))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Radio_Button_top_window_offset)(fl_Radio_Button radio_button, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Radio_Button*>(radio_button))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Radio_Button_as_group)(fl_Radio_Button radio_button){+    return (fl_Group) (static_cast<Fl_Radio_Button*>(radio_button))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Radio_Button_as_gl_window)(fl_Radio_Button radio_button){+    return (fl_Gl_Window) (static_cast<Fl_Radio_Button*>(radio_button))->as_gl_window();+  }++  FL_EXPORT_C(fl_Radio_Button, Fl_Radio_Button_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Radio_Button* button = new Fl_Radio_Button(x,y,w,h,label);+    return (static_cast<fl_Radio_Button>(button));+  }+  FL_EXPORT_C(fl_Radio_Button, Fl_Radio_Button_New)(int x, int y, int w, int h) {+    Fl_Radio_Button* button = new Fl_Radio_Button(x,y,w,h,0);+    return (fl_Radio_Button)button;+  }+  FL_EXPORT_C(void,Fl_Radio_Button_Destroy)(fl_Radio_Button button){+    delete (static_cast<Fl_Radio_Button*>(button));+  }+  FL_EXPORT_C(int,Fl_Radio_Button_set_value)(fl_Radio_Button b,int v){+    return (static_cast<Fl_Radio_Button*>(b))->value(v);+  }+  FL_EXPORT_C(char,Fl_Radio_Button_value)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->value();+  }+  FL_EXPORT_C(int,Fl_Radio_Button_clear)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->clear();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_setonly)(fl_Radio_Button b){+    (static_cast<Fl_Radio_Button*>(b))->setonly();+  }+  FL_EXPORT_C(int,Fl_Radio_Button_get_shortcut)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_shortcut)(fl_Radio_Button b,int s){+    (static_cast<Fl_Radio_Button*>(b))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Radio_Button_down_box)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->down_box();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_down_box)(fl_Radio_Button b,Fl_Boxtype boxtype){+    (static_cast<Fl_Radio_Button*>(b))->down_box(boxtype);+  }+  FL_EXPORT_C(Fl_Color,Fl_Radio_Button_down_color)(fl_Radio_Button b){+    return (static_cast<Fl_Radio_Button*>(b))->down_color();+  }+  FL_EXPORT_C(void,Fl_Radio_Button_set_down_color)(fl_Radio_Button b,Fl_Color c){+    (static_cast<Fl_Radio_Button*>(b))->down_color(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Radio_ButtonC.h view
@@ -0,0 +1,115 @@+#ifndef __FL_RADIO_BUTTON_C__+#define __FL_RADIO_BUTTON_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Radio_Button.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Radio_Button_handle)(fl_Radio_Button self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Radio_Button_parent)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_parent)(fl_Radio_Button win, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Radio_Button_type)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_type)(fl_Radio_Button win, uchar t);++  FL_EXPORT_C(int,          Fl_Radio_Button_x)(fl_Radio_Button win);+  FL_EXPORT_C(int,          Fl_Radio_Button_y)(fl_Radio_Button win);+  FL_EXPORT_C(int,          Fl_Radio_Button_w)(fl_Radio_Button win);+  FL_EXPORT_C(int,          Fl_Radio_Button_h)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_align)(fl_Radio_Button radio_button, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Radio_Button_align)(fl_Radio_Button win);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Radio_Button_box)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_box)(fl_Radio_Button win, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Radio_Button_color)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_color)(fl_Radio_Button win, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_color_with_bg_sel)(fl_Radio_Button win,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Radio_Button_selection_color)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_selection_color)(fl_Radio_Button win, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Radio_Button_label)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_copy_label)(fl_Radio_Button win, const char* new_label);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_label)(fl_Radio_Button win, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Radio_Button_labeltype)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_labeltype)(fl_Radio_Button win, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Radio_Button_labelcolor)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_labelcolor)(fl_Radio_Button win, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Radio_Button_labelfont)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_labelfont)(fl_Radio_Button win, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Radio_Button_labelsize)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_labelsize)(fl_Radio_Button win, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Radio_Button_image)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_image)(fl_Radio_Button win, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Radio_Button_deimage)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_deimage)(fl_Radio_Button win, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Radio_Button_tooltip)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_copy_tooltip)(fl_Radio_Button win, const char* text);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_tooltip)(fl_Radio_Button win, const char* text);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_callback_with_user_data)(fl_Radio_Button win, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_callback)(fl_Radio_Button win, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Radio_Button_user_data)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_user_data)(fl_Radio_Button win, void* v);+  FL_EXPORT_C(long,         Fl_Radio_Button_argument)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_argument)(fl_Radio_Button win, long v);+  FL_EXPORT_C(Fl_When,      Fl_Radio_Button_when)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_when)(fl_Radio_Button win, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Radio_Button_visible)(fl_Radio_Button win);+  FL_EXPORT_C(int,          Fl_Radio_Button_visible_r)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_visible)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_clear_visible)(fl_Radio_Button win);+  FL_EXPORT_C(unsigned int, Fl_Radio_Button_active)(fl_Radio_Button win);+  FL_EXPORT_C(int,          Fl_Radio_Button_active_r)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_activate)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_deactivate)(fl_Radio_Button win);+  FL_EXPORT_C(unsigned int, Fl_Radio_Button_output)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_output)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_clear_output)(fl_Radio_Button win);+  FL_EXPORT_C(unsigned int, Fl_Radio_Button_takesevents)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_changed)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_clear_changed)(fl_Radio_Button win);+  FL_EXPORT_C(int,          Fl_Radio_Button_take_focus)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_set_visible_focus)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_clear_visible_focus)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_modify_visible_focus)(fl_Radio_Button win, int v);+  FL_EXPORT_C(unsigned int, Fl_Radio_Button_visible_focus)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_do_callback)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_do_callback_with_widget_and_user_data)(fl_Radio_Button win, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Radio_Button_do_callback_with_widget_and_default_user_data)(fl_Radio_Button win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Radio_Button_contains)(fl_Radio_Button win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Radio_Button_inside)(fl_Radio_Button win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Radio_Button_redraw)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_redraw_label)(fl_Radio_Button win);+  FL_EXPORT_C(uchar,        Fl_Radio_Button_damage)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_clear_damage_with_bitmask)(fl_Radio_Button win, uchar c);+  FL_EXPORT_C(void,         Fl_Radio_Button_clear_damage)(fl_Radio_Button win);+  FL_EXPORT_C(void,         Fl_Radio_Button_damage_with_text)(fl_Radio_Button win, uchar c);+  FL_EXPORT_C(void,         Fl_Radio_Button_damage_inside_widget)(fl_Radio_Button win, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Radio_Button_draw_label_with_xywh_alignment)(fl_Radio_Button win, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Radio_Button_measure_label)(fl_Radio_Button win, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Radio_Button_window)(fl_Radio_Button radio_button);+  FL_EXPORT_C(fl_Window,    Fl_Radio_Button_top_window)(fl_Radio_Button radio_button);+  FL_EXPORT_C(fl_Window ,   Fl_Radio_Button_top_window_offset)(fl_Radio_Button radio_button, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Radio_Button_as_group)(fl_Radio_Button radio_button);+  FL_EXPORT_C(fl_Gl_Window, Fl_Radio_Button_as_gl_window)(fl_Radio_Button radio_button);+  /* Fl_Radio_Button specific functions */+  FL_EXPORT_C(fl_Radio_Button,    Fl_Radio_Button_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Radio_Button,    Fl_Radio_Button_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,               Fl_Radio_Button_Destroy)(fl_Button button);++  FL_EXPORT_C(char        , Fl_Radio_Button_value)(fl_Radio_Button b);+  FL_EXPORT_C(int         , Fl_Radio_Button_set_value)(fl_Radio_Button b, int v);+  FL_EXPORT_C(int         , Fl_Radio_Button_set)(fl_Radio_Button b);+  FL_EXPORT_C(int         , Fl_Radio_Button_clear)(fl_Radio_Button b);+  FL_EXPORT_C(void        , Fl_Radio_Button_setonly)(fl_Radio_Button b);+  FL_EXPORT_C(int         , Fl_Radio_Button_get_shortcut )(fl_Radio_Button b);+  FL_EXPORT_C(void        , Fl_Radio_Button_set_shortcut )(fl_Radio_Button b, int s);+  FL_EXPORT_C(Fl_Boxtype  , Fl_Radio_Button_down_box)(fl_Radio_Button b);+  FL_EXPORT_C(void        , Fl_Radio_Button_set_down_box)(fl_Radio_Button b,Fl_Boxtype boxtype);+  FL_EXPORT_C(Fl_Color    , Fl_Radio_Button_down_color )(fl_Radio_Button b);+  FL_EXPORT_C(void        , Fl_Radio_Button_set_down_color)(fl_Radio_Button b, Fl_Color c);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_RADIO_BUTTON_C__*/
+ c-src/Fl_Radio_Light_ButtonC.cpp view
@@ -0,0 +1,312 @@+#include "Fl_Radio_Light_ButtonC.h"++#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Radio_Light_Button_handle)(fl_Radio_Light_Button self, int event){+    return (static_cast<Fl_Radio_Light_Button*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Radio_Light_Button_parent)(fl_Radio_Light_Button b){+    return (fl_Group) (static_cast<Fl_Radio_Light_Button*>(b))->parent();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_parent)(fl_Radio_Light_Button b,fl_Group grp){+    (static_cast<Fl_Radio_Light_Button*>(b))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Radio_Light_Button_type)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->type();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_type)(fl_Radio_Light_Button b,uchar t){+    (static_cast<Fl_Radio_Light_Button*>(b))->type(t);+  }++  FL_EXPORT_C(int,Fl_Radio_Light_Button_x)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->x();+  }+  FL_EXPORT_C(int,Fl_Radio_Light_Button_y)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->y();+  }+  FL_EXPORT_C(int,Fl_Radio_Light_Button_w)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->w();+  }+  FL_EXPORT_C(int,Fl_Radio_Light_Button_h)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->h();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_align)(fl_Radio_Light_Button radio_light_button, Fl_Align alignment){+    (static_cast<Fl_Radio_Light_Button*>(radio_light_button))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Radio_Light_Button_align)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Radio_Light_Button_box)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->box();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_box)(fl_Radio_Light_Button b,Fl_Boxtype new_box){+    (static_cast<Fl_Radio_Light_Button*>(b))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Radio_Light_Button_color)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->color();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_color)(fl_Radio_Light_Button b,Fl_Color bg){+    (static_cast<Fl_Radio_Light_Button*>(b))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_color_with_bg_sel)(fl_Radio_Light_Button b,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Radio_Light_Button*>(b))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Radio_Light_Button_selection_color)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_selection_color)(fl_Radio_Light_Button b,Fl_Color a){+    (static_cast<Fl_Radio_Light_Button*>(b))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Radio_Light_Button_label)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->label();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_copy_label)(fl_Radio_Light_Button b,const char* new_label){+    (static_cast<Fl_Radio_Light_Button*>(b))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_label)(fl_Radio_Light_Button b,const char* text){+    (static_cast<Fl_Radio_Light_Button*>(b))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Radio_Light_Button_labeltype)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_labeltype)(fl_Radio_Light_Button b,Fl_Labeltype a){+    (static_cast<Fl_Radio_Light_Button*>(b))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_labelcolor)(fl_Radio_Light_Button b,Fl_Color c){+    (static_cast<Fl_Radio_Light_Button*>(b))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Radio_Light_Button_labelcolor)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Radio_Light_Button_labelfont)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_labelfont)(fl_Radio_Light_Button b,Fl_Font c){+    (static_cast<Fl_Radio_Light_Button*>(b))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Radio_Light_Button_labelsize)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_labelsize)(fl_Radio_Light_Button b,Fl_Fontsize pix){+    (static_cast<Fl_Radio_Light_Button*>(b))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Radio_Light_Button_image)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->image();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_image)(fl_Radio_Light_Button b,fl_Image pix){+    (static_cast<Fl_Radio_Light_Button*>(b))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Radio_Light_Button_deimage)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->deimage();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_deimage)(fl_Radio_Light_Button b,fl_Image pix){+    (static_cast<Fl_Radio_Light_Button*>(b))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Radio_Light_Button_tooltip)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_copy_tooltip)(fl_Radio_Light_Button b,const char* text){+    (static_cast<Fl_Radio_Light_Button*>(b))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_tooltip)(fl_Radio_Light_Button b,const char* text){+    (static_cast<Fl_Radio_Light_Button*>(b))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_callback_with_user_data)(fl_Radio_Light_Button b,fl_Callback* cb,void* p){+    Fl_Radio_Light_Button* castedButton = (static_cast<Fl_Radio_Light_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_callback)(fl_Radio_Light_Button b,fl_Callback* cb){+    Fl_Radio_Light_Button* castedButton = (static_cast<Fl_Radio_Light_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Radio_Light_Button_user_data)(fl_Radio_Light_Button b){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Radio_Light_Button*>(b))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Radio_Light_Button*>(b))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_user_data)(fl_Radio_Light_Button b,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Radio_Light_Button*>(b))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Radio_Light_Button*>(b))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Radio_Light_Button*>(b))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Radio_Light_Button_argument)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->argument();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_argument)(fl_Radio_Light_Button b,long v){+    (static_cast<Fl_Radio_Light_Button*>(b))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Radio_Light_Button_when)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->when();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_when)(fl_Radio_Light_Button b,uchar i){+    (static_cast<Fl_Radio_Light_Button*>(b))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Radio_Light_Button_visible)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->visible();+  }+  FL_EXPORT_C(int,Fl_Radio_Light_Button_visible_r)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_visible)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->visible();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_clear_visible)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Radio_Light_Button_active)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->active();+  }+  FL_EXPORT_C(int,Fl_Radio_Light_Button_active_r)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->active_r();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_activate)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->activate();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_deactivate)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Radio_Light_Button_output)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_output)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_clear_output)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Radio_Light_Button_takesevents)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_changed)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->changed();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_clear_changed)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Radio_Light_Button_take_focus)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_visible_focus)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_clear_visible_focus)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_modify_visible_focus)(fl_Radio_Light_Button b,int v){+    (static_cast<Fl_Radio_Light_Button*>(b))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Radio_Light_Button_visible_focus)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_do_callback)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_do_callback_with_widget_and_user_data)(fl_Radio_Light_Button b,fl_Widget w,long arg){+    (static_cast<Fl_Radio_Light_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_do_callback_with_widget_and_default_user_data)(fl_Radio_Light_Button b,fl_Widget w){+    (static_cast<Fl_Radio_Light_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Radio_Light_Button_contains)(fl_Radio_Light_Button b,fl_Widget w){+    return (static_cast<Fl_Radio_Light_Button*>(b))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Radio_Light_Button_inside)(fl_Radio_Light_Button b,fl_Widget w){+    return (static_cast<Fl_Radio_Light_Button*>(b))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_redraw)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->redraw();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_redraw_label)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Radio_Light_Button_damage)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->damage();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_clear_damage_with_bitmask)(fl_Radio_Light_Button b,uchar c){+    (static_cast<Fl_Radio_Light_Button*>(b))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_clear_damage)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_damage_with_text)(fl_Radio_Light_Button b,uchar c){+    (static_cast<Fl_Radio_Light_Button*>(b))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_damage_inside_widget)(fl_Radio_Light_Button b,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Radio_Light_Button*>(b))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_draw_label_with_xywh_alignment)(fl_Radio_Light_Button b,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Radio_Light_Button*>(b))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_measure_label)(fl_Radio_Light_Button b,int* ww,int* hh){+    (static_cast<Fl_Radio_Light_Button*>(b))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Radio_Light_Button_window)(fl_Radio_Light_Button radio_light_button){+    return (fl_Window) (static_cast<Fl_Radio_Light_Button*>(radio_light_button))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Radio_Light_Button_top_window)(fl_Radio_Light_Button radio_light_button){+    return (fl_Window) (static_cast<Fl_Radio_Light_Button*>(radio_light_button))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Radio_Light_Button_top_window_offset)(fl_Radio_Light_Button radio_light_button, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Radio_Light_Button*>(radio_light_button))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Radio_Light_Button_as_group)(fl_Radio_Light_Button radio_light_button){+    return (fl_Group) (static_cast<Fl_Radio_Light_Button*>(radio_light_button))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Radio_Light_Button_as_gl_window)(fl_Radio_Light_Button radio_light_button){+    return (fl_Gl_Window) (static_cast<Fl_Radio_Light_Button*>(radio_light_button))->as_gl_window();+  }+  FL_EXPORT_C(fl_Radio_Light_Button, Fl_Radio_Light_Button_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Radio_Light_Button* button = new Fl_Radio_Light_Button(x,y,w,h,label);+    return (static_cast<fl_Radio_Light_Button>(button));+  }+  FL_EXPORT_C(fl_Radio_Light_Button, Fl_Radio_Light_Button_New)(int x, int y, int w, int h) {+    Fl_Radio_Light_Button* button = new Fl_Radio_Light_Button(x,y,w,h,0);+    return (fl_Radio_Light_Button)button;+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_Destroy)(fl_Radio_Light_Button button){+    delete (static_cast<Fl_Radio_Light_Button*>(button));+  }+  FL_EXPORT_C(int,Fl_Radio_Light_Button_set_value)(fl_Radio_Light_Button b,int v){+    return (static_cast<Fl_Radio_Light_Button*>(b))->value(v);+  }+  FL_EXPORT_C(char,Fl_Radio_Light_Button_value)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->value();+  }+  FL_EXPORT_C(int,Fl_Radio_Light_Button_clear)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->clear();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_setonly)(fl_Radio_Light_Button b){+    (static_cast<Fl_Radio_Light_Button*>(b))->setonly();+  }+  FL_EXPORT_C(int,Fl_Radio_Light_Button_get_shortcut)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_shortcut)(fl_Radio_Light_Button b,int s){+    (static_cast<Fl_Radio_Light_Button*>(b))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Radio_Light_Button_down_box)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->down_box();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_down_box)(fl_Radio_Light_Button b,Fl_Boxtype boxtype){+    (static_cast<Fl_Radio_Light_Button*>(b))->down_box(boxtype);+  }+  FL_EXPORT_C(Fl_Color,Fl_Radio_Light_Button_down_color)(fl_Radio_Light_Button b){+    return (static_cast<Fl_Radio_Light_Button*>(b))->down_color();+  }+  FL_EXPORT_C(void,Fl_Radio_Light_Button_set_down_color)(fl_Radio_Light_Button b,Fl_Color c){+    (static_cast<Fl_Radio_Light_Button*>(b))->down_color(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Radio_Light_ButtonC.h view
@@ -0,0 +1,115 @@+#ifndef __FL_RADIO_LIGHT_BUTTON_C__+#define __FL_RADIO_LIGHT_BUTTON_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Radio_Light_Button.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Radio_Light_Button_handle)(fl_Radio_Light_Button self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Radio_Light_Button_parent)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_parent)(fl_Radio_Light_Button radio_light_button, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Radio_Light_Button_type)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_type)(fl_Radio_Light_Button radio_light_button, uchar t);++  FL_EXPORT_C(int,          Fl_Radio_Light_Button_x)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(int,          Fl_Radio_Light_Button_y)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(int,          Fl_Radio_Light_Button_w)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(int,          Fl_Radio_Light_Button_h)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_align)(fl_Radio_Light_Button radio_light_button, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Radio_Light_Button_align)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Radio_Light_Button_box)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_box)(fl_Radio_Light_Button radio_light_button, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Radio_Light_Button_color)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_color)(fl_Radio_Light_Button radio_light_button, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_color_with_bg_sel)(fl_Radio_Light_Button radio_light_button,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Radio_Light_Button_selection_color)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_selection_color)(fl_Radio_Light_Button radio_light_button, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Radio_Light_Button_label)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_copy_label)(fl_Radio_Light_Button radio_light_button, const char* new_label);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_label)(fl_Radio_Light_Button radio_light_button, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Radio_Light_Button_labeltype)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_labeltype)(fl_Radio_Light_Button radio_light_button, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Radio_Light_Button_labelcolor)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_labelcolor)(fl_Radio_Light_Button radio_light_button, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Radio_Light_Button_labelfont)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_labelfont)(fl_Radio_Light_Button radio_light_button, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Radio_Light_Button_labelsize)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_labelsize)(fl_Radio_Light_Button radio_light_button, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Radio_Light_Button_image)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_image)(fl_Radio_Light_Button radio_light_button, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Radio_Light_Button_deimage)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_deimage)(fl_Radio_Light_Button radio_light_button, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Radio_Light_Button_tooltip)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_copy_tooltip)(fl_Radio_Light_Button radio_light_button, const char* text);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_tooltip)(fl_Radio_Light_Button radio_light_button, const char* text);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_callback_with_user_data)(fl_Radio_Light_Button radio_light_button, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_callback)(fl_Radio_Light_Button radio_light_button, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Radio_Light_Button_user_data)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_user_data)(fl_Radio_Light_Button radio_light_button, void* v);+  FL_EXPORT_C(long,         Fl_Radio_Light_Button_argument)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_argument)(fl_Radio_Light_Button radio_light_button, long v);+  FL_EXPORT_C(Fl_When,      Fl_Radio_Light_Button_when)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_when)(fl_Radio_Light_Button radio_light_button, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Radio_Light_Button_visible)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(int,          Fl_Radio_Light_Button_visible_r)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_visible)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_clear_visible)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(unsigned int, Fl_Radio_Light_Button_active)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(int,          Fl_Radio_Light_Button_active_r)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_activate)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_deactivate)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(unsigned int, Fl_Radio_Light_Button_output)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_output)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_clear_output)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(unsigned int, Fl_Radio_Light_Button_takesevents)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_changed)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_clear_changed)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(int,          Fl_Radio_Light_Button_take_focus)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_set_visible_focus)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_clear_visible_focus)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_modify_visible_focus)(fl_Radio_Light_Button radio_light_button, int v);+  FL_EXPORT_C(unsigned int, Fl_Radio_Light_Button_visible_focus)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_do_callback)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_do_callback_with_widget_and_user_data)(fl_Radio_Light_Button radio_light_button, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_do_callback_with_widget_and_default_user_data)(fl_Radio_Light_Button radio_light_button, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Radio_Light_Button_contains)(fl_Radio_Light_Button radio_light_button, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Radio_Light_Button_inside)(fl_Radio_Light_Button radio_light_button, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_redraw)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_redraw_label)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(uchar,        Fl_Radio_Light_Button_damage)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_clear_damage_with_bitmask)(fl_Radio_Light_Button radio_light_button, uchar c);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_clear_damage)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_damage_with_text)(fl_Radio_Light_Button radio_light_button, uchar c);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_damage_inside_widget)(fl_Radio_Light_Button radio_light_button, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_draw_label_with_xywh_alignment)(fl_Radio_Light_Button radio_light_button, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Radio_Light_Button_measure_label)(fl_Radio_Light_Button radio_light_button, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Radio_Light_Button_window)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(fl_Window,    Fl_Radio_Light_Button_top_window)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(fl_Window ,   Fl_Radio_Light_Button_top_window_offset)(fl_Radio_Light_Button radio_light_button, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Radio_Light_Button_as_group)(fl_Radio_Light_Button radio_light_button);+  FL_EXPORT_C(fl_Gl_Window, Fl_Radio_Light_Button_as_gl_window)(fl_Radio_Light_Button radio_light_button);+  /* Fl_Radio_Light_Button specific functions */+  FL_EXPORT_C(fl_Radio_Light_Button,    Fl_Radio_Light_Button_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Radio_Light_Button,    Fl_Radio_Light_Button_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,Fl_Radio_Light_Button_Destroy)(fl_Radio_Light_Button button);+  FL_EXPORT_C(char        , Fl_Radio_Light_Button_value)(fl_Radio_Light_Button b);+  FL_EXPORT_C(int         , Fl_Radio_Light_Button_set_value)(fl_Radio_Light_Button b, int v);+  FL_EXPORT_C(int         , Fl_Radio_Light_Button_set)(fl_Radio_Light_Button b);+  FL_EXPORT_C(int         , Fl_Radio_Light_Button_clear)(fl_Radio_Light_Button b);+  FL_EXPORT_C(void        , Fl_Radio_Light_Button_setonly)(fl_Radio_Light_Button b);+  FL_EXPORT_C(int         , Fl_Radio_Light_Button_get_shortcut )(fl_Radio_Light_Button b);+  FL_EXPORT_C(void        , Fl_Radio_Light_Button_set_shortcut )(fl_Radio_Light_Button b, int s);+  FL_EXPORT_C(Fl_Boxtype  , Fl_Radio_Light_Button_down_box)(fl_Radio_Light_Button b);+  FL_EXPORT_C(void        , Fl_Radio_Light_Button_set_down_box)(fl_Radio_Light_Button b,Fl_Boxtype boxtype);+  FL_EXPORT_C(Fl_Color    , Fl_Radio_Light_Button_down_color )(fl_Radio_Light_Button b);+  FL_EXPORT_C(void        , Fl_Radio_Light_Button_set_down_color)(fl_Radio_Light_Button b, Fl_Color c);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_RADIO_LIGHT_BUTTON_C__*/
+ c-src/Fl_Repeat_ButtonC.cpp view
@@ -0,0 +1,312 @@+#include "Fl_Repeat_ButtonC.h"++#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Repeat_Button_handle)(fl_Repeat_Button self, int event){+    return (static_cast<Fl_Repeat_Button*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Repeat_Button_parent)(fl_Repeat_Button b){+    return (fl_Group) (static_cast<Fl_Repeat_Button*>(b))->parent();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_parent)(fl_Repeat_Button b,fl_Group grp){+    (static_cast<Fl_Repeat_Button*>(b))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Repeat_Button_type)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->type();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_type)(fl_Repeat_Button b,uchar t){+    (static_cast<Fl_Repeat_Button*>(b))->type(t);+  }++  FL_EXPORT_C(int,Fl_Repeat_Button_x)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->x();+  }+  FL_EXPORT_C(int,Fl_Repeat_Button_y)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->y();+  }+  FL_EXPORT_C(int,Fl_Repeat_Button_w)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->w();+  }+  FL_EXPORT_C(int,Fl_Repeat_Button_h)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->h();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_align)(fl_Repeat_Button repeat_button, Fl_Align alignment){+    (static_cast<Fl_Repeat_Button*>(repeat_button))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Repeat_Button_align)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Repeat_Button_box)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->box();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_box)(fl_Repeat_Button b,Fl_Boxtype new_box){+    (static_cast<Fl_Repeat_Button*>(b))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Repeat_Button_color)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->color();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_color)(fl_Repeat_Button b,Fl_Color bg){+    (static_cast<Fl_Repeat_Button*>(b))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_color_with_bg_sel)(fl_Repeat_Button b,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Repeat_Button*>(b))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Repeat_Button_selection_color)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_selection_color)(fl_Repeat_Button b,Fl_Color a){+    (static_cast<Fl_Repeat_Button*>(b))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Repeat_Button_label)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->label();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_copy_label)(fl_Repeat_Button b,const char* new_label){+    (static_cast<Fl_Repeat_Button*>(b))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_label)(fl_Repeat_Button b,const char* text){+    (static_cast<Fl_Repeat_Button*>(b))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Repeat_Button_labeltype)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_labeltype)(fl_Repeat_Button b,Fl_Labeltype a){+    (static_cast<Fl_Repeat_Button*>(b))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_labelcolor)(fl_Repeat_Button b,Fl_Color c){+    (static_cast<Fl_Repeat_Button*>(b))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Repeat_Button_labelcolor)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Repeat_Button_labelfont)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_labelfont)(fl_Repeat_Button b,Fl_Font c){+    (static_cast<Fl_Repeat_Button*>(b))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Repeat_Button_labelsize)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_labelsize)(fl_Repeat_Button b,Fl_Fontsize pix){+    (static_cast<Fl_Repeat_Button*>(b))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Repeat_Button_image)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->image();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_image)(fl_Repeat_Button b,fl_Image pix){+    (static_cast<Fl_Repeat_Button*>(b))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Repeat_Button_deimage)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->deimage();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_deimage)(fl_Repeat_Button b,fl_Image pix){+    (static_cast<Fl_Repeat_Button*>(b))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Repeat_Button_tooltip)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_copy_tooltip)(fl_Repeat_Button b,const char* text){+    (static_cast<Fl_Repeat_Button*>(b))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_tooltip)(fl_Repeat_Button b,const char* text){+    (static_cast<Fl_Repeat_Button*>(b))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_callback_with_user_data)(fl_Repeat_Button b,fl_Callback* cb,void* p){+    Fl_Repeat_Button* castedButton = (static_cast<Fl_Repeat_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_callback)(fl_Repeat_Button b,fl_Callback* cb){+    Fl_Repeat_Button* castedButton = (static_cast<Fl_Repeat_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Repeat_Button_user_data)(fl_Repeat_Button b){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Repeat_Button*>(b))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Repeat_Button*>(b))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_user_data)(fl_Repeat_Button b,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Repeat_Button*>(b))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Repeat_Button*>(b))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Repeat_Button*>(b))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Repeat_Button_argument)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->argument();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_argument)(fl_Repeat_Button b,long v){+    (static_cast<Fl_Repeat_Button*>(b))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Repeat_Button_when)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->when();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_when)(fl_Repeat_Button b,uchar i){+    (static_cast<Fl_Repeat_Button*>(b))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Repeat_Button_visible)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->visible();+  }+  FL_EXPORT_C(int,Fl_Repeat_Button_visible_r)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_visible)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->visible();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_clear_visible)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Repeat_Button_active)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->active();+  }+  FL_EXPORT_C(int,Fl_Repeat_Button_active_r)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->active_r();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_activate)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->activate();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_deactivate)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Repeat_Button_output)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_output)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_clear_output)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Repeat_Button_takesevents)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_changed)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->changed();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_clear_changed)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Repeat_Button_take_focus)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_visible_focus)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_clear_visible_focus)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_modify_visible_focus)(fl_Repeat_Button b,int v){+    (static_cast<Fl_Repeat_Button*>(b))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Repeat_Button_visible_focus)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_do_callback)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_do_callback_with_widget_and_user_data)(fl_Repeat_Button b,fl_Widget w,long arg){+    (static_cast<Fl_Repeat_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_do_callback_with_widget_and_default_user_data)(fl_Repeat_Button b,fl_Widget w){+    (static_cast<Fl_Repeat_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Repeat_Button_contains)(fl_Repeat_Button b,fl_Widget w){+    return (static_cast<Fl_Repeat_Button*>(b))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Repeat_Button_inside)(fl_Repeat_Button b,fl_Widget w){+    return (static_cast<Fl_Repeat_Button*>(b))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_redraw)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->redraw();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_redraw_label)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Repeat_Button_damage)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->damage();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_clear_damage_with_bitmask)(fl_Repeat_Button b,uchar c){+    (static_cast<Fl_Repeat_Button*>(b))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_clear_damage)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_damage_with_text)(fl_Repeat_Button b,uchar c){+    (static_cast<Fl_Repeat_Button*>(b))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_damage_inside_widget)(fl_Repeat_Button b,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Repeat_Button*>(b))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_draw_label_with_xywh_alignment)(fl_Repeat_Button b,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Repeat_Button*>(b))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_measure_label)(fl_Repeat_Button b,int* ww,int* hh){+    (static_cast<Fl_Repeat_Button*>(b))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Repeat_Button_window)(fl_Repeat_Button repeat_button){+    return (fl_Window) (static_cast<Fl_Repeat_Button*>(repeat_button))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Repeat_Button_top_window)(fl_Repeat_Button repeat_button){+    return (fl_Window) (static_cast<Fl_Repeat_Button*>(repeat_button))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Repeat_Button_top_window_offset)(fl_Repeat_Button repeat_button, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Repeat_Button*>(repeat_button))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Repeat_Button_as_group)(fl_Repeat_Button repeat_button){+    return (fl_Group) (static_cast<Fl_Repeat_Button*>(repeat_button))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Repeat_Button_as_gl_window)(fl_Repeat_Button repeat_button){+    return (fl_Gl_Window) (static_cast<Fl_Repeat_Button*>(repeat_button))->as_gl_window();+  }+  FL_EXPORT_C(fl_Repeat_Button, Fl_Repeat_Button_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Repeat_Button* button = new Fl_Repeat_Button(x,y,w,h,label);+    return (static_cast<fl_Repeat_Button>(button));+  }+  FL_EXPORT_C(fl_Repeat_Button, Fl_Repeat_Button_New)(int x, int y, int w, int h) {+    Fl_Repeat_Button* button = new Fl_Repeat_Button(x,y,w,h,0);+    return (fl_Repeat_Button)button;+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_Destroy)(fl_Repeat_Button button){+    delete (static_cast<Fl_Repeat_Button*>(button));+  }+  FL_EXPORT_C(int,Fl_Repeat_Button_set_value)(fl_Repeat_Button b,int v){+    return (static_cast<Fl_Repeat_Button*>(b))->value(v);+  }+  FL_EXPORT_C(char,Fl_Repeat_Button_value)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->value();+  }+  FL_EXPORT_C(int,Fl_Repeat_Button_clear)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->clear();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_setonly)(fl_Repeat_Button b){+    (static_cast<Fl_Repeat_Button*>(b))->setonly();+  }+  FL_EXPORT_C(int,Fl_Repeat_Button_get_shortcut)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_shortcut)(fl_Repeat_Button b,int s){+    (static_cast<Fl_Repeat_Button*>(b))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Repeat_Button_down_box)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->down_box();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_down_box)(fl_Repeat_Button b,Fl_Boxtype boxtype){+    (static_cast<Fl_Repeat_Button*>(b))->down_box(boxtype);+  }+  FL_EXPORT_C(Fl_Color,Fl_Repeat_Button_down_color)(fl_Repeat_Button b){+    return (static_cast<Fl_Repeat_Button*>(b))->down_color();+  }+  FL_EXPORT_C(void,Fl_Repeat_Button_set_down_color)(fl_Repeat_Button b,Fl_Color c){+    (static_cast<Fl_Repeat_Button*>(b))->down_color(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Repeat_ButtonC.h view
@@ -0,0 +1,115 @@+#ifndef __FL_REPEAT_BUTTON_C__+#define __FL_REPEAT_BUTTON_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Repeat_Button.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Repeat_Button_handle)(fl_Repeat_Button self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Repeat_Button_parent)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_parent)(fl_Repeat_Button repeat_button, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Repeat_Button_type)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_type)(fl_Repeat_Button repeat_button, uchar t);++  FL_EXPORT_C(int,          Fl_Repeat_Button_x)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(int,          Fl_Repeat_Button_y)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(int,          Fl_Repeat_Button_w)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(int,          Fl_Repeat_Button_h)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_align)(fl_Repeat_Button repeat_button, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Repeat_Button_align)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Repeat_Button_box)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_box)(fl_Repeat_Button repeat_button, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Repeat_Button_color)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_color)(fl_Repeat_Button repeat_button, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_color_with_bg_sel)(fl_Repeat_Button repeat_button,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Repeat_Button_selection_color)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_selection_color)(fl_Repeat_Button repeat_button, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Repeat_Button_label)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_copy_label)(fl_Repeat_Button repeat_button, const char* new_label);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_label)(fl_Repeat_Button repeat_button, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Repeat_Button_labeltype)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_labeltype)(fl_Repeat_Button repeat_button, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Repeat_Button_labelcolor)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_labelcolor)(fl_Repeat_Button repeat_button, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Repeat_Button_labelfont)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_labelfont)(fl_Repeat_Button repeat_button, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Repeat_Button_labelsize)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_labelsize)(fl_Repeat_Button repeat_button, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Repeat_Button_image)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_image)(fl_Repeat_Button repeat_button, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Repeat_Button_deimage)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_deimage)(fl_Repeat_Button repeat_button, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Repeat_Button_tooltip)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_copy_tooltip)(fl_Repeat_Button repeat_button, const char* text);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_tooltip)(fl_Repeat_Button repeat_button, const char* text);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_callback_with_user_data)(fl_Repeat_Button repeat_button, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_callback)(fl_Repeat_Button repeat_button, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Repeat_Button_user_data)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_user_data)(fl_Repeat_Button repeat_button, void* v);+  FL_EXPORT_C(long,         Fl_Repeat_Button_argument)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_argument)(fl_Repeat_Button repeat_button, long v);+  FL_EXPORT_C(Fl_When,      Fl_Repeat_Button_when)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_when)(fl_Repeat_Button repeat_button, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Repeat_Button_visible)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(int,          Fl_Repeat_Button_visible_r)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_visible)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_clear_visible)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(unsigned int, Fl_Repeat_Button_active)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(int,          Fl_Repeat_Button_active_r)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_activate)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_deactivate)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(unsigned int, Fl_Repeat_Button_output)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_output)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_clear_output)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(unsigned int, Fl_Repeat_Button_takesevents)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_changed)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_clear_changed)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(int,          Fl_Repeat_Button_take_focus)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_set_visible_focus)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_clear_visible_focus)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_modify_visible_focus)(fl_Repeat_Button repeat_button, int v);+  FL_EXPORT_C(unsigned int, Fl_Repeat_Button_visible_focus)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_do_callback)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_do_callback_with_widget_and_user_data)(fl_Repeat_Button repeat_button, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Repeat_Button_do_callback_with_widget_and_default_user_data)(fl_Repeat_Button repeat_button, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Repeat_Button_contains)(fl_Repeat_Button repeat_button, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Repeat_Button_inside)(fl_Repeat_Button repeat_button, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Repeat_Button_redraw)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_redraw_label)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(uchar,        Fl_Repeat_Button_damage)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_clear_damage_with_bitmask)(fl_Repeat_Button repeat_button, uchar c);+  FL_EXPORT_C(void,         Fl_Repeat_Button_clear_damage)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(void,         Fl_Repeat_Button_damage_with_text)(fl_Repeat_Button repeat_button, uchar c);+  FL_EXPORT_C(void,         Fl_Repeat_Button_damage_inside_widget)(fl_Repeat_Button repeat_button, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Repeat_Button_draw_label_with_xywh_alignment)(fl_Repeat_Button repeat_button, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Repeat_Button_measure_label)(fl_Repeat_Button repeat_button, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Repeat_Button_window)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(fl_Window,    Fl_Repeat_Button_top_window)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(fl_Window ,   Fl_Repeat_Button_top_window_offset)(fl_Repeat_Button repeat_button, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Repeat_Button_as_group)(fl_Repeat_Button repeat_button);+  FL_EXPORT_C(fl_Gl_Window, Fl_Repeat_Button_as_gl_window)(fl_Repeat_Button repeat_button);+  /* Fl_Repeat_Button specific functions */+  FL_EXPORT_C(fl_Repeat_Button,    Fl_Repeat_Button_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Repeat_Button,    Fl_Repeat_Button_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,Fl_Repeat_Button_Destroy)(fl_Repeat_Button button);+  FL_EXPORT_C(char        , Fl_Repeat_Button_value)(fl_Repeat_Button b);+  FL_EXPORT_C(int         , Fl_Repeat_Button_set_value)(fl_Repeat_Button b, int v);+  FL_EXPORT_C(int         , Fl_Repeat_Button_set)(fl_Repeat_Button b);+  FL_EXPORT_C(int         , Fl_Repeat_Button_clear)(fl_Repeat_Button b);+  FL_EXPORT_C(void        , Fl_Repeat_Button_setonly)(fl_Repeat_Button b);+  FL_EXPORT_C(int         , Fl_Repeat_Button_get_shortcut )(fl_Repeat_Button b);+  FL_EXPORT_C(void        , Fl_Repeat_Button_set_shortcut )(fl_Repeat_Button b, int s);+  FL_EXPORT_C(Fl_Boxtype  , Fl_Repeat_Button_down_box)(fl_Repeat_Button b);+  FL_EXPORT_C(void        , Fl_Repeat_Button_set_down_box)(fl_Repeat_Button b,Fl_Boxtype boxtype);+  FL_EXPORT_C(Fl_Color    , Fl_Repeat_Button_down_color )(fl_Repeat_Button b);+  FL_EXPORT_C(void        , Fl_Repeat_Button_set_down_color)(fl_Repeat_Button b, Fl_Color c);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_REPEAT_BUTTON_C__*/
+ c-src/Fl_Return_ButtonC.cpp view
@@ -0,0 +1,312 @@+#include "Fl_Return_ButtonC.h"++#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Return_Button_handle)(fl_Return_Button self, int event){+    return (static_cast<Fl_Return_Button*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Return_Button_parent)(fl_Return_Button b){+    return (fl_Group) (static_cast<Fl_Return_Button*>(b))->parent();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_parent)(fl_Return_Button b,fl_Group grp){+    (static_cast<Fl_Return_Button*>(b))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Return_Button_type)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->type();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_type)(fl_Return_Button b,uchar t){+    (static_cast<Fl_Return_Button*>(b))->type(t);+  }++  FL_EXPORT_C(int,Fl_Return_Button_x)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->x();+  }+  FL_EXPORT_C(int,Fl_Return_Button_y)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->y();+  }+  FL_EXPORT_C(int,Fl_Return_Button_w)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->w();+  }+  FL_EXPORT_C(int,Fl_Return_Button_h)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->h();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_align)(fl_Return_Button return_button, Fl_Align alignment){+    (static_cast<Fl_Return_Button*>(return_button))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Return_Button_align)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Return_Button_box)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->box();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_box)(fl_Return_Button b,Fl_Boxtype new_box){+    (static_cast<Fl_Return_Button*>(b))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Return_Button_color)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->color();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_color)(fl_Return_Button b,Fl_Color bg){+    (static_cast<Fl_Return_Button*>(b))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_color_with_bg_sel)(fl_Return_Button b,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Return_Button*>(b))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Return_Button_selection_color)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_selection_color)(fl_Return_Button b,Fl_Color a){+    (static_cast<Fl_Return_Button*>(b))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Return_Button_label)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->label();+  }+  FL_EXPORT_C(void,Fl_Return_Button_copy_label)(fl_Return_Button b,const char* new_label){+    (static_cast<Fl_Return_Button*>(b))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_label)(fl_Return_Button b,const char* text){+    (static_cast<Fl_Return_Button*>(b))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Return_Button_labeltype)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_labeltype)(fl_Return_Button b,Fl_Labeltype a){+    (static_cast<Fl_Return_Button*>(b))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_labelcolor)(fl_Return_Button b,Fl_Color c){+    (static_cast<Fl_Return_Button*>(b))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Return_Button_labelcolor)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Return_Button_labelfont)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_labelfont)(fl_Return_Button b,Fl_Font c){+    (static_cast<Fl_Return_Button*>(b))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Return_Button_labelsize)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_labelsize)(fl_Return_Button b,Fl_Fontsize pix){+    (static_cast<Fl_Return_Button*>(b))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Return_Button_image)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->image();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_image)(fl_Return_Button b,fl_Image pix){+    (static_cast<Fl_Return_Button*>(b))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Return_Button_deimage)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->deimage();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_deimage)(fl_Return_Button b,fl_Image pix){+    (static_cast<Fl_Return_Button*>(b))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Return_Button_tooltip)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Return_Button_copy_tooltip)(fl_Return_Button b,const char* text){+    (static_cast<Fl_Return_Button*>(b))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_tooltip)(fl_Return_Button b,const char* text){+    (static_cast<Fl_Return_Button*>(b))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_callback_with_user_data)(fl_Return_Button b,fl_Callback* cb,void* p){+    Fl_Return_Button* castedButton = (static_cast<Fl_Return_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_callback)(fl_Return_Button b,fl_Callback* cb){+    Fl_Return_Button* castedButton = (static_cast<Fl_Return_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Return_Button_user_data)(fl_Return_Button b){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Return_Button*>(b))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Return_Button*>(b))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_user_data)(fl_Return_Button b,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Return_Button*>(b))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Return_Button*>(b))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Return_Button*>(b))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Return_Button_argument)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->argument();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_argument)(fl_Return_Button b,long v){+    (static_cast<Fl_Return_Button*>(b))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Return_Button_when)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->when();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_when)(fl_Return_Button b,uchar i){+    (static_cast<Fl_Return_Button*>(b))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Return_Button_visible)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->visible();+  }+  FL_EXPORT_C(int,Fl_Return_Button_visible_r)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_visible)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->visible();+  }+  FL_EXPORT_C(void,Fl_Return_Button_clear_visible)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Return_Button_active)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->active();+  }+  FL_EXPORT_C(int,Fl_Return_Button_active_r)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->active_r();+  }+  FL_EXPORT_C(void,Fl_Return_Button_activate)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->activate();+  }+  FL_EXPORT_C(void,Fl_Return_Button_deactivate)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Return_Button_output)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_output)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Return_Button_clear_output)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Return_Button_takesevents)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_changed)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->changed();+  }+  FL_EXPORT_C(void,Fl_Return_Button_clear_changed)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Return_Button_take_focus)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_visible_focus)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Return_Button_clear_visible_focus)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Return_Button_modify_visible_focus)(fl_Return_Button b,int v){+    (static_cast<Fl_Return_Button*>(b))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Return_Button_visible_focus)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Return_Button_do_callback)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Return_Button_do_callback_with_widget_and_user_data)(fl_Return_Button b,fl_Widget w,long arg){+    (static_cast<Fl_Return_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Return_Button_do_callback_with_widget_and_default_user_data)(fl_Return_Button b,fl_Widget w){+    (static_cast<Fl_Return_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Return_Button_contains)(fl_Return_Button b,fl_Widget w){+    return (static_cast<Fl_Return_Button*>(b))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Return_Button_inside)(fl_Return_Button b,fl_Widget w){+    return (static_cast<Fl_Return_Button*>(b))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Return_Button_redraw)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->redraw();+  }+  FL_EXPORT_C(void,Fl_Return_Button_redraw_label)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Return_Button_damage)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->damage();+  }+  FL_EXPORT_C(void,Fl_Return_Button_clear_damage_with_bitmask)(fl_Return_Button b,uchar c){+    (static_cast<Fl_Return_Button*>(b))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Return_Button_clear_damage)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Return_Button_damage_with_text)(fl_Return_Button b,uchar c){+    (static_cast<Fl_Return_Button*>(b))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Return_Button_damage_inside_widget)(fl_Return_Button b,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Return_Button*>(b))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Return_Button_draw_label_with_xywh_alignment)(fl_Return_Button b,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Return_Button*>(b))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Return_Button_measure_label)(fl_Return_Button b,int* ww,int* hh){+    (static_cast<Fl_Return_Button*>(b))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Return_Button_window)(fl_Return_Button return_button){+    return (fl_Window) (static_cast<Fl_Return_Button*>(return_button))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Return_Button_top_window)(fl_Return_Button return_button){+    return (fl_Window) (static_cast<Fl_Return_Button*>(return_button))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Return_Button_top_window_offset)(fl_Return_Button return_button, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Return_Button*>(return_button))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Return_Button_as_group)(fl_Return_Button return_button){+    return (fl_Group) (static_cast<Fl_Return_Button*>(return_button))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Return_Button_as_gl_window)(fl_Return_Button return_button){+    return (fl_Gl_Window) (static_cast<Fl_Return_Button*>(return_button))->as_gl_window();+  }+  FL_EXPORT_C(fl_Return_Button, Fl_Return_Button_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Return_Button* button = new Fl_Return_Button(x,y,w,h,label);+    return (static_cast<fl_Return_Button>(button));+  }+  FL_EXPORT_C(fl_Return_Button, Fl_Return_Button_New)(int x, int y, int w, int h) {+    Fl_Return_Button* button = new Fl_Return_Button(x,y,w,h,0);+    return (fl_Return_Button)button;+  }+  FL_EXPORT_C(void,Fl_Return_Button_Destroy)(fl_Return_Button button){+    delete (static_cast<Fl_Return_Button*>(button));+  }+  FL_EXPORT_C(int,Fl_Return_Button_set_value)(fl_Return_Button b,int v){+    return (static_cast<Fl_Return_Button*>(b))->value(v);+  }+  FL_EXPORT_C(char,Fl_Return_Button_value)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->value();+  }+  FL_EXPORT_C(int,Fl_Return_Button_clear)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->clear();+  }+  FL_EXPORT_C(void,Fl_Return_Button_setonly)(fl_Return_Button b){+    (static_cast<Fl_Return_Button*>(b))->setonly();+  }+  FL_EXPORT_C(int,Fl_Return_Button_get_shortcut)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_shortcut)(fl_Return_Button b,int s){+    (static_cast<Fl_Return_Button*>(b))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Return_Button_down_box)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->down_box();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_down_box)(fl_Return_Button b,Fl_Boxtype boxtype){+    (static_cast<Fl_Return_Button*>(b))->down_box(boxtype);+  }+  FL_EXPORT_C(Fl_Color,Fl_Return_Button_down_color)(fl_Return_Button b){+    return (static_cast<Fl_Return_Button*>(b))->down_color();+  }+  FL_EXPORT_C(void,Fl_Return_Button_set_down_color)(fl_Return_Button b,Fl_Color c){+    (static_cast<Fl_Return_Button*>(b))->down_color(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Return_ButtonC.h view
@@ -0,0 +1,115 @@+#ifndef __FL_RETURN_BUTTON_C__+#define __FL_RETURN_BUTTON_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Return_Button.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Return_Button_handle)(fl_Return_Button self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Return_Button_parent)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_parent)(fl_Return_Button return_button, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Return_Button_type)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_type)(fl_Return_Button return_button, uchar t);++  FL_EXPORT_C(int,          Fl_Return_Button_x)(fl_Return_Button return_button);+  FL_EXPORT_C(int,          Fl_Return_Button_y)(fl_Return_Button return_button);+  FL_EXPORT_C(int,          Fl_Return_Button_w)(fl_Return_Button return_button);+  FL_EXPORT_C(int,          Fl_Return_Button_h)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_align)(fl_Return_Button return_button, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Return_Button_align)(fl_Return_Button return_button);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Return_Button_box)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_box)(fl_Return_Button return_button, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Return_Button_color)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_color)(fl_Return_Button return_button, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Return_Button_set_color_with_bg_sel)(fl_Return_Button return_button,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Return_Button_selection_color)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_selection_color)(fl_Return_Button return_button, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Return_Button_label)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_copy_label)(fl_Return_Button return_button, const char* new_label);+  FL_EXPORT_C(void,         Fl_Return_Button_set_label)(fl_Return_Button return_button, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Return_Button_labeltype)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_labeltype)(fl_Return_Button return_button, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Return_Button_labelcolor)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_labelcolor)(fl_Return_Button return_button, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Return_Button_labelfont)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_labelfont)(fl_Return_Button return_button, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Return_Button_labelsize)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_labelsize)(fl_Return_Button return_button, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Return_Button_image)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_image)(fl_Return_Button return_button, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Return_Button_deimage)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_deimage)(fl_Return_Button return_button, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Return_Button_tooltip)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_copy_tooltip)(fl_Return_Button return_button, const char* text);+  FL_EXPORT_C(void,         Fl_Return_Button_set_tooltip)(fl_Return_Button return_button, const char* text);+  FL_EXPORT_C(void,         Fl_Return_Button_set_callback_with_user_data)(fl_Return_Button return_button, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Return_Button_set_callback)(fl_Return_Button return_button, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Return_Button_user_data)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_user_data)(fl_Return_Button return_button, void* v);+  FL_EXPORT_C(long,         Fl_Return_Button_argument)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_argument)(fl_Return_Button return_button, long v);+  FL_EXPORT_C(Fl_When,      Fl_Return_Button_when)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_when)(fl_Return_Button return_button, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Return_Button_visible)(fl_Return_Button return_button);+  FL_EXPORT_C(int,          Fl_Return_Button_visible_r)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_visible)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_clear_visible)(fl_Return_Button return_button);+  FL_EXPORT_C(unsigned int, Fl_Return_Button_active)(fl_Return_Button return_button);+  FL_EXPORT_C(int,          Fl_Return_Button_active_r)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_activate)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_deactivate)(fl_Return_Button return_button);+  FL_EXPORT_C(unsigned int, Fl_Return_Button_output)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_output)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_clear_output)(fl_Return_Button return_button);+  FL_EXPORT_C(unsigned int, Fl_Return_Button_takesevents)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_changed)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_clear_changed)(fl_Return_Button return_button);+  FL_EXPORT_C(int,          Fl_Return_Button_take_focus)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_set_visible_focus)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_clear_visible_focus)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_modify_visible_focus)(fl_Return_Button return_button, int v);+  FL_EXPORT_C(unsigned int, Fl_Return_Button_visible_focus)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_do_callback)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_do_callback_with_widget_and_user_data)(fl_Return_Button return_button, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Return_Button_do_callback_with_widget_and_default_user_data)(fl_Return_Button return_button, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Return_Button_contains)(fl_Return_Button return_button, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Return_Button_inside)(fl_Return_Button return_button, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Return_Button_redraw)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_redraw_label)(fl_Return_Button return_button);+  FL_EXPORT_C(uchar,        Fl_Return_Button_damage)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_clear_damage_with_bitmask)(fl_Return_Button return_button, uchar c);+  FL_EXPORT_C(void,         Fl_Return_Button_clear_damage)(fl_Return_Button return_button);+  FL_EXPORT_C(void,         Fl_Return_Button_damage_with_text)(fl_Return_Button return_button, uchar c);+  FL_EXPORT_C(void,         Fl_Return_Button_damage_inside_widget)(fl_Return_Button return_button, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Return_Button_draw_label_with_xywh_alignment)(fl_Return_Button return_button, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Return_Button_measure_label)(fl_Return_Button return_button, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Return_Button_window)(fl_Return_Button return_button);+  FL_EXPORT_C(fl_Window,    Fl_Return_Button_top_window)(fl_Return_Button return_button);+  FL_EXPORT_C(fl_Window ,   Fl_Return_Button_top_window_offset)(fl_Return_Button return_button, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Return_Button_as_group)(fl_Return_Button return_button);+  FL_EXPORT_C(fl_Gl_Window, Fl_Return_Button_as_gl_window)(fl_Return_Button return_button);+  /* Fl_Return_Button specific functions */+  FL_EXPORT_C(fl_Return_Button,    Fl_Return_Button_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Return_Button,    Fl_Return_Button_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,Fl_Return_Button_Destroy)(fl_Return_Button button);+  FL_EXPORT_C(char        , Fl_Return_Button_value)(fl_Return_Button b);+  FL_EXPORT_C(int         , Fl_Return_Button_set_value)(fl_Return_Button b, int v);+  FL_EXPORT_C(int         , Fl_Return_Button_set)(fl_Return_Button b);+  FL_EXPORT_C(int         , Fl_Return_Button_clear)(fl_Return_Button b);+  FL_EXPORT_C(void        , Fl_Return_Button_setonly)(fl_Return_Button b);+  FL_EXPORT_C(int         , Fl_Return_Button_get_shortcut )(fl_Return_Button b);+  FL_EXPORT_C(void        , Fl_Return_Button_set_shortcut )(fl_Return_Button b, int s);+  FL_EXPORT_C(Fl_Boxtype  , Fl_Return_Button_down_box)(fl_Return_Button b);+  FL_EXPORT_C(void        , Fl_Return_Button_set_down_box)(fl_Return_Button b,Fl_Boxtype boxtype);+  FL_EXPORT_C(Fl_Color    , Fl_Return_Button_down_color )(fl_Return_Button b);+  FL_EXPORT_C(void        , Fl_Return_Button_set_down_color)(fl_Return_Button b, Fl_Color c);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_RETURN_BUTTON_C__*/
+ c-src/Fl_RollerC.cpp view
@@ -0,0 +1,327 @@+#include "Fl_RollerC.h"+#ifdef __cplusplus+EXPORT {+#endif  +  FL_EXPORT_C(fl_Group,Fl_Roller_parent)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->parent();+  }+  FL_EXPORT_C(void,Fl_Roller_set_parent)(fl_Roller roller,fl_Group grp){+    (static_cast<Fl_Roller*>(roller))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Roller_type)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->type();+  }+  FL_EXPORT_C(void,Fl_Roller_set_type)(fl_Roller roller,uchar t){+    (static_cast<Fl_Roller*>(roller))->type(t);+  }+  FL_EXPORT_C(int,Fl_Roller_x)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->x();+  }+  FL_EXPORT_C(int,Fl_Roller_y)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->y();+  }+  FL_EXPORT_C(int,Fl_Roller_w)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->w();+  }+  FL_EXPORT_C(int,Fl_Roller_h)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->h();+  }+  FL_EXPORT_C(void,Fl_Roller_set_align)(fl_Roller roller,Fl_Align alignment){+    (static_cast<Fl_Roller*>(roller))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Roller_align)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Roller_box)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->box();+  }+  FL_EXPORT_C(void,Fl_Roller_set_box)(fl_Roller roller,Fl_Boxtype new_box){+    (static_cast<Fl_Roller*>(roller))->box(new_box);+  }+  FL_EXPORT_C(Fl_Color,Fl_Roller_color)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->color();+  }+  FL_EXPORT_C(void,Fl_Roller_set_color)(fl_Roller roller,Fl_Color bg){+    (static_cast<Fl_Roller*>(roller))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Roller_set_color_with_bg_sel)(fl_Roller roller,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Roller*>(roller))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Roller_selection_color)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Roller_set_selection_color)(fl_Roller roller,Fl_Color a){+    (static_cast<Fl_Roller*>(roller))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Roller_label)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->label();+  }+  FL_EXPORT_C(void,Fl_Roller_copy_label)(fl_Roller roller,const char* new_label){+    (static_cast<Fl_Roller*>(roller))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Roller_set_label)(fl_Roller roller,const char* text){+    (static_cast<Fl_Roller*>(roller))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Roller_labeltype)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Roller_set_labeltype)(fl_Roller roller,Fl_Labeltype a){+    (static_cast<Fl_Roller*>(roller))->labeltype(a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Roller_labelcolor)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->labelcolor();+  }+  FL_EXPORT_C(void,Fl_Roller_set_labelcolor)(fl_Roller roller,Fl_Color c){+    (static_cast<Fl_Roller*>(roller))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Font,Fl_Roller_labelfont)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Roller_set_labelfont)(fl_Roller roller,Fl_Font c){+    (static_cast<Fl_Roller*>(roller))->labelfont(c);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Roller_labelsize)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Roller_set_labelsize)(fl_Roller roller,Fl_Fontsize pix){+    (static_cast<Fl_Roller*>(roller))->labelsize(pix);+  }+  FL_EXPORT_C(fl_Image,Fl_Roller_image)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->image();+  }+  FL_EXPORT_C(void,Fl_Roller_set_image)(fl_Roller roller,fl_Image pix){+    (static_cast<Fl_Roller*>(roller))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Roller_deimage)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->deimage();+  }+  FL_EXPORT_C(void,Fl_Roller_set_deimage)(fl_Roller roller,fl_Image pix){+    (static_cast<Fl_Roller*>(roller))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Roller_tooltip)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Roller_copy_tooltip)(fl_Roller roller,const char* text){+    (static_cast<Fl_Roller*>(roller))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Roller_set_tooltip)(fl_Roller roller,const char* text){+    (static_cast<Fl_Roller*>(roller))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Roller_set_callback_with_user_data)(fl_Roller roller,fl_Callback* cb,void* p){+    Fl_Roller* castedRoller = (static_cast<Fl_Roller*>(roller));+    new C_to_Fl_Callback(castedRoller, cb, p);+  }+  FL_EXPORT_C(void,Fl_Roller_set_callback)(fl_Roller roller,fl_Callback* cb){+    Fl_Roller* castedRoller = (static_cast<Fl_Roller*>(roller));+    new C_to_Fl_Callback(castedRoller, cb);+  }+  FL_EXPORT_C(void*,Fl_Roller_user_data)(fl_Roller roller){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Roller*>(roller))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Roller*>(roller))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Roller_set_user_data)(fl_Roller roller,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Roller*>(roller))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Roller*>(roller))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Roller*>(roller))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Roller_argument)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->argument();+  }+  FL_EXPORT_C(void,Fl_Roller_set_argument)(fl_Roller roller,long v){+    (static_cast<Fl_Roller*>(roller))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Roller_when)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->when();+  }+  FL_EXPORT_C(void,Fl_Roller_set_when)(fl_Roller roller,uchar i){+    (static_cast<Fl_Roller*>(roller))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Roller_visible)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->visible();+  }+  FL_EXPORT_C(int,Fl_Roller_visible_r)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Roller_show)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->show();+  }+  FL_EXPORT_C(void,Fl_Roller_hide)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->hide();+  }+  FL_EXPORT_C(void,Fl_Roller_set_visible)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->visible();+  }+  FL_EXPORT_C(void,Fl_Roller_clear_visible)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Roller_active)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->active();+  }+  FL_EXPORT_C(int,Fl_Roller_active_r)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->active_r();+  }+  FL_EXPORT_C(void,Fl_Roller_activate)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->activate();+  }+  FL_EXPORT_C(void,Fl_Roller_deactivate)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Roller_output)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->output();+  }+  FL_EXPORT_C(void,Fl_Roller_set_output)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->output();+  }+  FL_EXPORT_C(void,Fl_Roller_clear_output)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Roller_takesevents)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Roller_set_changed)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->changed();+  }+  FL_EXPORT_C(void,Fl_Roller_clear_changed)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Roller_take_focus)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Roller_set_visible_focus)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Roller_clear_visible_focus)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Roller_modify_visible_focus)(fl_Roller roller,int v){+    (static_cast<Fl_Roller*>(roller))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Roller_visible_focus)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_Roller_contains)(fl_Roller roller,fl_Widget w){+    return (static_cast<Fl_Roller*>(roller))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Roller_inside)(fl_Roller roller,fl_Widget w){+    return (static_cast<Fl_Roller*>(roller))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Roller_redraw)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->redraw();+  }+  FL_EXPORT_C(void,Fl_Roller_redraw_label)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Roller_damage)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->damage();+  }+  FL_EXPORT_C(void,Fl_Roller_clear_damage_with_bitmask)(fl_Roller roller,uchar c){+    (static_cast<Fl_Roller*>(roller))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Roller_clear_damage)(fl_Roller roller){+    (static_cast<Fl_Roller*>(roller))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Roller_damage_with_text)(fl_Roller roller,uchar c){+    (static_cast<Fl_Roller*>(roller))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Roller_damage_inside_widget)(fl_Roller roller,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Roller*>(roller))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Roller_draw_label_with_xywh_alignment)(fl_Roller roller,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Roller*>(roller))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Roller_measure_label)(fl_Roller roller,int* ww,int* hh){+    (static_cast<Fl_Roller*>(roller))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,Fl_Roller_window)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->window();+  }+  FL_EXPORT_C(fl_Window,Fl_Roller_top_window)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->top_window();+  }+  FL_EXPORT_C(fl_Window,Fl_Roller_top_window_offset)(fl_Roller roller,int* xoff,int* yoff){+    return (fl_Window)(static_cast<Fl_Roller*>(roller))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Roller_as_gl_window)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Roller_resize)(fl_Roller roller,int X,int Y,int W,int H){+    (static_cast<Fl_Roller*>(roller))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Roller_bounds)(fl_Roller roller,double a,double b){+    (static_cast<Fl_Roller*>(roller))->bounds(a,b);+  }+  FL_EXPORT_C(double,Fl_Roller_minimum)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->minimum();+  }+  FL_EXPORT_C(void,Fl_Roller_set_minimum)(fl_Roller roller,double a){+    (static_cast<Fl_Roller*>(roller))->minimum(a);+  }+  FL_EXPORT_C(double,Fl_Roller_maximum)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->maximum();+  }+  FL_EXPORT_C(void,Fl_Roller_set_maximum)(fl_Roller roller,double a){+    (static_cast<Fl_Roller*>(roller))->maximum(a);+  }+  FL_EXPORT_C(void,Fl_Roller_range)(fl_Roller roller,double a,double b){+    (static_cast<Fl_Roller*>(roller))->range(a,b);+  }+  FL_EXPORT_C(void,Fl_Roller_set_step)(fl_Roller roller,int a){+    (static_cast<Fl_Roller*>(roller))->step(a);+  }+  FL_EXPORT_C(void,Fl_Roller_set_step_with_a_b)(fl_Roller roller,double a,int b){+    (static_cast<Fl_Roller*>(roller))->step(a,b);+  }+  FL_EXPORT_C(void,Fl_Roller_step_with_s)(fl_Roller roller,double s){+    (static_cast<Fl_Roller*>(roller))->step(s);+  }+  FL_EXPORT_C(double,Fl_Roller_step)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->step();+  }+  FL_EXPORT_C(void,Fl_Roller_precision)(fl_Roller roller,int precision){+    (static_cast<Fl_Roller*>(roller))->precision(precision);+  }+  FL_EXPORT_C(double,Fl_Roller_value)(fl_Roller roller){+    return (static_cast<Fl_Roller*>(roller))->value();+  }+  FL_EXPORT_C(int,Fl_Roller_set_value)(fl_Roller roller,double v){+    return (static_cast<Fl_Roller*>(roller))->value(v);+  }+  FL_EXPORT_C(int,Fl_Roller_format)(fl_Roller roller,char* format){+    return (static_cast<Fl_Roller*>(roller))->format(format);+  }+  FL_EXPORT_C(double,Fl_Roller_round)(fl_Roller roller,double v){+    return (static_cast<Fl_Roller*>(roller))->round(v);+  }+  FL_EXPORT_C(double,Fl_Roller_clamp)(fl_Roller roller,double v){+    return (static_cast<Fl_Roller*>(roller))->clamp(v);+  }+  FL_EXPORT_C(double,Fl_Roller_increment)(fl_Roller roller,double v,int n){+    return (static_cast<Fl_Roller*>(roller))->increment(v,n);+  }+  FL_EXPORT_C(fl_Roller,Fl_Roller_New_WithLabel)(int x,int y,int w,int h,const char* label){+    Fl_Roller* roller = new Fl_Roller(x,y,w,h,label);+    return (fl_Roller) roller;+  }+  FL_EXPORT_C(fl_Roller,Fl_Roller_New)(int x,int y,int w,int h){+    Fl_Roller* roller = new Fl_Roller(x,y,w,h);+    return (fl_Roller) roller;+  }+  FL_EXPORT_C(void,Fl_Roller_Destroy)(fl_Roller roller){+    delete (static_cast<Fl_Roller*>(roller));+  }+  FL_EXPORT_C(int,Fl_Roller_handle)(fl_Roller roller,int event){+    return (static_cast<Fl_Roller*>(roller))->handle(event);+  }+#ifdef __cplusplus+}+#endif 
+ c-src/Fl_RollerC.h view
@@ -0,0 +1,123 @@+#ifndef __FL_ROLLER_C__+#define __FL_ROLLER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Roller is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Roller.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_Group,     Fl_Roller_parent)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_parent)(fl_Roller roller, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Roller_type)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_type)(fl_Roller roller, uchar t);++  FL_EXPORT_C(int,          Fl_Roller_x)(fl_Roller roller);+  FL_EXPORT_C(int,          Fl_Roller_y)(fl_Roller roller);+  FL_EXPORT_C(int,          Fl_Roller_w)(fl_Roller roller);+  FL_EXPORT_C(int,          Fl_Roller_h)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_align)(fl_Roller roller, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Roller_align)(fl_Roller roller);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Roller_box)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_box)(fl_Roller roller, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Roller_color)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_color)(fl_Roller roller, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Roller_set_color_with_bg_sel)(fl_Roller roller,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Roller_selection_color)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_selection_color)(fl_Roller roller, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Roller_label)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_copy_label)(fl_Roller roller, const char* new_label);+  FL_EXPORT_C(void,         Fl_Roller_set_label)(fl_Roller roller, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Roller_labeltype)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_labeltype)(fl_Roller roller, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Roller_labelcolor)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_labelcolor)(fl_Roller roller, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Roller_labelfont)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_labelfont)(fl_Roller roller, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Roller_labelsize)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_labelsize)(fl_Roller roller, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Roller_image)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_image)(fl_Roller roller, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Roller_deimage)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_deimage)(fl_Roller roller, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Roller_tooltip)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_copy_tooltip)(fl_Roller roller, const char* text);+  FL_EXPORT_C(void,         Fl_Roller_set_tooltip)(fl_Roller roller, const char* text);+  FL_EXPORT_C(void,         Fl_Roller_set_callback_with_user_data)(fl_Roller roller, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Roller_set_callback)(fl_Roller roller, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Roller_other_data)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_other_data)(fl_Roller roller, void* v);+  FL_EXPORT_C(void*,        Fl_Roller_user_data)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_user_data)(fl_Roller roller, void* v);+  FL_EXPORT_C(long,         Fl_Roller_argument)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_argument)(fl_Roller roller, long v);+  FL_EXPORT_C(Fl_When,      Fl_Roller_when)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_when)(fl_Roller roller, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Roller_visible)(fl_Roller roller);+  FL_EXPORT_C(int,          Fl_Roller_visible_r)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_show)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_hide)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_visible)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_clear_visible)(fl_Roller roller);+  FL_EXPORT_C(unsigned int, Fl_Roller_active)(fl_Roller roller);+  FL_EXPORT_C(int,          Fl_Roller_active_r)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_activate)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_deactivate)(fl_Roller roller);+  FL_EXPORT_C(unsigned int, Fl_Roller_output)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_output)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_clear_output)(fl_Roller roller);+  FL_EXPORT_C(unsigned int, Fl_Roller_takesevents)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_changed)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_clear_changed)(fl_Roller roller);+  FL_EXPORT_C(int,          Fl_Roller_take_focus)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_set_visible_focus)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_clear_visible_focus)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_modify_visible_focus)(fl_Roller roller, int v);+  FL_EXPORT_C(unsigned int, Fl_Roller_visible_focus)(fl_Roller roller);+  FL_EXPORT_C(int,          Fl_Roller_contains)(fl_Roller roller, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Roller_inside)(fl_Roller roller, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Roller_redraw)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_redraw_label)(fl_Roller roller);+  FL_EXPORT_C(uchar,        Fl_Roller_damage)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_clear_damage_with_bitmask)(fl_Roller roller, uchar c);+  FL_EXPORT_C(void,         Fl_Roller_clear_damage)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_damage_with_text)(fl_Roller roller, uchar c);+  FL_EXPORT_C(void,         Fl_Roller_damage_inside_widget)(fl_Roller roller, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Roller_draw_label_with_xywh_alignment)(fl_Roller roller, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Roller_measure_label)(fl_Roller roller, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Roller_window)(fl_Roller roller);+  FL_EXPORT_C(fl_Window,    Fl_Roller_top_window)(fl_Roller roller);+  FL_EXPORT_C(fl_Window ,   Fl_Roller_top_window_offset)(fl_Roller roller, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Gl_Window, Fl_Roller_as_gl_window)(fl_Roller roller);+  FL_EXPORT_C(void,         Fl_Roller_resize)(fl_Table table,int X, int Y, int W, int H);++  /* Inherited from Fl_Valuator */+  FL_EXPORT_C(void, Fl_Roller_bounds)(fl_Roller roller, double a, double b);+  FL_EXPORT_C(double, Fl_Roller_minimum)(fl_Roller roller);+  FL_EXPORT_C(void, Fl_Roller_set_minimum)(fl_Roller roller, double a);+  FL_EXPORT_C(double, Fl_Roller_maximum)(fl_Roller roller);+  FL_EXPORT_C(void, Fl_Roller_set_maximum)(fl_Roller roller, double a);+  FL_EXPORT_C(void, Fl_Roller_range)(fl_Roller roller, double a, double b);+  FL_EXPORT_C(void, Fl_Roller_set_step)(fl_Roller roller, int a);+  FL_EXPORT_C(void, Fl_Roller_set_step_with_a_b)(fl_Roller roller, double a, int b);+  FL_EXPORT_C(void, Fl_Roller_step_with_s)(fl_Roller roller, double s);+  FL_EXPORT_C(double, Fl_Roller_step)(fl_Roller roller);+  FL_EXPORT_C(void, Fl_Roller_precision)(fl_Roller roller, int precision);+  FL_EXPORT_C(double, Fl_Roller_value)(fl_Roller roller);+  FL_EXPORT_C(int, Fl_Roller_set_value)(fl_Roller roller, double v);+  FL_EXPORT_C(int, Fl_Roller_format)(fl_Roller roller, char* format);+  FL_EXPORT_C(double, Fl_Roller_round)(fl_Roller roller, double v);+  FL_EXPORT_C(double, Fl_Roller_clamp)(fl_Roller roller, double v);+  FL_EXPORT_C(double, Fl_Roller_increment)(fl_Roller roller, double v, int n);++  /* Fl_Roller specific */+  FL_EXPORT_C(fl_Roller,    Fl_Roller_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Roller   , Fl_Roller_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,      Fl_Roller_Destroy)(fl_Roller roller);+  FL_EXPORT_C(int,       Fl_Roller_handle)(fl_Roller roller, int event);+#ifdef __cplusplus+}+#endif+#endif /* __FL_ROLLER_C__ */
+ c-src/Fl_Round_ButtonC.cpp view
@@ -0,0 +1,312 @@+#include "Fl_Round_ButtonC.h"++#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Round_Button_handle)(fl_Round_Button self, int event){+    return (static_cast<Fl_Round_Button*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Round_Button_parent)(fl_Round_Button b){+    return (fl_Group) (static_cast<Fl_Round_Button*>(b))->parent();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_parent)(fl_Round_Button b,fl_Group grp){+    (static_cast<Fl_Round_Button*>(b))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Round_Button_type)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->type();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_type)(fl_Round_Button b,uchar t){+    (static_cast<Fl_Round_Button*>(b))->type(t);+  }++  FL_EXPORT_C(int,Fl_Round_Button_x)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->x();+  }+  FL_EXPORT_C(int,Fl_Round_Button_y)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->y();+  }+  FL_EXPORT_C(int,Fl_Round_Button_w)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->w();+  }+  FL_EXPORT_C(int,Fl_Round_Button_h)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->h();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_align)(fl_Round_Button round_button, Fl_Align alignment){+    (static_cast<Fl_Round_Button*>(round_button))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Round_Button_align)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Round_Button_box)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->box();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_box)(fl_Round_Button b,Fl_Boxtype new_box){+    (static_cast<Fl_Round_Button*>(b))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Round_Button_color)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->color();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_color)(fl_Round_Button b,Fl_Color bg){+    (static_cast<Fl_Round_Button*>(b))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_color_with_bg_sel)(fl_Round_Button b,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Round_Button*>(b))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Round_Button_selection_color)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_selection_color)(fl_Round_Button b,Fl_Color a){+    (static_cast<Fl_Round_Button*>(b))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Round_Button_label)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->label();+  }+  FL_EXPORT_C(void,Fl_Round_Button_copy_label)(fl_Round_Button b,const char* new_label){+    (static_cast<Fl_Round_Button*>(b))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_label)(fl_Round_Button b,const char* text){+    (static_cast<Fl_Round_Button*>(b))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Round_Button_labeltype)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_labeltype)(fl_Round_Button b,Fl_Labeltype a){+    (static_cast<Fl_Round_Button*>(b))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_labelcolor)(fl_Round_Button b,Fl_Color c){+    (static_cast<Fl_Round_Button*>(b))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Round_Button_labelcolor)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Round_Button_labelfont)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_labelfont)(fl_Round_Button b,Fl_Font c){+    (static_cast<Fl_Round_Button*>(b))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Round_Button_labelsize)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_labelsize)(fl_Round_Button b,Fl_Fontsize pix){+    (static_cast<Fl_Round_Button*>(b))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Round_Button_image)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->image();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_image)(fl_Round_Button b,fl_Image pix){+    (static_cast<Fl_Round_Button*>(b))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Round_Button_deimage)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->deimage();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_deimage)(fl_Round_Button b,fl_Image pix){+    (static_cast<Fl_Round_Button*>(b))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Round_Button_tooltip)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Round_Button_copy_tooltip)(fl_Round_Button b,const char* text){+    (static_cast<Fl_Round_Button*>(b))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_tooltip)(fl_Round_Button b,const char* text){+    (static_cast<Fl_Round_Button*>(b))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_callback_with_user_data)(fl_Round_Button b,fl_Callback* cb,void* p){+    Fl_Round_Button* castedButton = (static_cast<Fl_Round_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_callback)(fl_Round_Button b,fl_Callback* cb){+    Fl_Round_Button* castedButton = (static_cast<Fl_Round_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Round_Button_user_data)(fl_Round_Button b){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Round_Button*>(b))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Round_Button*>(b))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_user_data)(fl_Round_Button b,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Round_Button*>(b))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Round_Button*>(b))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Round_Button*>(b))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Round_Button_argument)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->argument();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_argument)(fl_Round_Button b,long v){+    (static_cast<Fl_Round_Button*>(b))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Round_Button_when)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->when();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_when)(fl_Round_Button b,uchar i){+    (static_cast<Fl_Round_Button*>(b))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Round_Button_visible)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->visible();+  }+  FL_EXPORT_C(int,Fl_Round_Button_visible_r)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_visible)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->visible();+  }+  FL_EXPORT_C(void,Fl_Round_Button_clear_visible)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Round_Button_active)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->active();+  }+  FL_EXPORT_C(int,Fl_Round_Button_active_r)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->active_r();+  }+  FL_EXPORT_C(void,Fl_Round_Button_activate)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->activate();+  }+  FL_EXPORT_C(void,Fl_Round_Button_deactivate)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Round_Button_output)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_output)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Round_Button_clear_output)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Round_Button_takesevents)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_changed)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->changed();+  }+  FL_EXPORT_C(void,Fl_Round_Button_clear_changed)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Round_Button_take_focus)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_visible_focus)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Round_Button_clear_visible_focus)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Round_Button_modify_visible_focus)(fl_Round_Button b,int v){+    (static_cast<Fl_Round_Button*>(b))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Round_Button_visible_focus)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Round_Button_do_callback)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Round_Button_do_callback_with_widget_and_user_data)(fl_Round_Button b,fl_Widget w,long arg){+    (static_cast<Fl_Round_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Round_Button_do_callback_with_widget_and_default_user_data)(fl_Round_Button b,fl_Widget w){+    (static_cast<Fl_Round_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Round_Button_contains)(fl_Round_Button b,fl_Widget w){+    return (static_cast<Fl_Round_Button*>(b))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Round_Button_inside)(fl_Round_Button b,fl_Widget w){+    return (static_cast<Fl_Round_Button*>(b))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Round_Button_redraw)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->redraw();+  }+  FL_EXPORT_C(void,Fl_Round_Button_redraw_label)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Round_Button_damage)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->damage();+  }+  FL_EXPORT_C(void,Fl_Round_Button_clear_damage_with_bitmask)(fl_Round_Button b,uchar c){+    (static_cast<Fl_Round_Button*>(b))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Round_Button_clear_damage)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Round_Button_damage_with_text)(fl_Round_Button b,uchar c){+    (static_cast<Fl_Round_Button*>(b))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Round_Button_damage_inside_widget)(fl_Round_Button b,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Round_Button*>(b))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Round_Button_draw_label_with_xywh_alignment)(fl_Round_Button b,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Round_Button*>(b))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Round_Button_measure_label)(fl_Round_Button b,int* ww,int* hh){+    (static_cast<Fl_Round_Button*>(b))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Round_Button_window)(fl_Round_Button round_button){+    return (fl_Window) (static_cast<Fl_Round_Button*>(round_button))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Round_Button_top_window)(fl_Round_Button round_button){+    return (fl_Window) (static_cast<Fl_Round_Button*>(round_button))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Round_Button_top_window_offset)(fl_Round_Button round_button, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Round_Button*>(round_button))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Round_Button_as_group)(fl_Round_Button round_button){+    return (fl_Group) (static_cast<Fl_Round_Button*>(round_button))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Round_Button_as_gl_window)(fl_Round_Button round_button){+    return (fl_Gl_Window) (static_cast<Fl_Round_Button*>(round_button))->as_gl_window();+  }+  FL_EXPORT_C(fl_Round_Button, Fl_Round_Button_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Round_Button* button = new Fl_Round_Button(x,y,w,h,label);+    return (static_cast<fl_Round_Button>(button));+  }+  FL_EXPORT_C(fl_Round_Button, Fl_Round_Button_New)(int x, int y, int w, int h) {+    Fl_Round_Button* button = new Fl_Round_Button(x,y,w,h,0);+    return (fl_Round_Button)button;+  }+  FL_EXPORT_C(void,Fl_Round_Button_Destroy)(fl_Round_Button button){+    delete (static_cast<Fl_Round_Button*>(button));+  }+  FL_EXPORT_C(int,Fl_Round_Button_set_value)(fl_Round_Button b,int v){+    return (static_cast<Fl_Round_Button*>(b))->value(v);+  }+  FL_EXPORT_C(char,Fl_Round_Button_value)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->value();+  }+  FL_EXPORT_C(int,Fl_Round_Button_clear)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->clear();+  }+  FL_EXPORT_C(void,Fl_Round_Button_setonly)(fl_Round_Button b){+    (static_cast<Fl_Round_Button*>(b))->setonly();+  }+  FL_EXPORT_C(int,Fl_Round_Button_get_shortcut)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_shortcut)(fl_Round_Button b,int s){+    (static_cast<Fl_Round_Button*>(b))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Round_Button_down_box)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->down_box();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_down_box)(fl_Round_Button b,Fl_Boxtype boxtype){+    (static_cast<Fl_Round_Button*>(b))->down_box(boxtype);+  }+  FL_EXPORT_C(Fl_Color,Fl_Round_Button_down_color)(fl_Round_Button b){+    return (static_cast<Fl_Round_Button*>(b))->down_color();+  }+  FL_EXPORT_C(void,Fl_Round_Button_set_down_color)(fl_Round_Button b,Fl_Color c){+    (static_cast<Fl_Round_Button*>(b))->down_color(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Round_ButtonC.h view
@@ -0,0 +1,115 @@+#ifndef __FL_ROUND_BUTTON_C__+#define __FL_ROUND_BUTTON_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Round_Button.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Round_Button_handle)(fl_Round_Button self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Round_Button_parent)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_parent)(fl_Round_Button round_button, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Round_Button_type)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_type)(fl_Round_Button round_button, uchar t);++  FL_EXPORT_C(int,          Fl_Round_Button_x)(fl_Round_Button round_button);+  FL_EXPORT_C(int,          Fl_Round_Button_y)(fl_Round_Button round_button);+  FL_EXPORT_C(int,          Fl_Round_Button_w)(fl_Round_Button round_button);+  FL_EXPORT_C(int,          Fl_Round_Button_h)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_align)(fl_Round_Button round_button, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Round_Button_align)(fl_Round_Button round_button);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Round_Button_box)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_box)(fl_Round_Button round_button, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Round_Button_color)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_color)(fl_Round_Button round_button, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Round_Button_set_color_with_bg_sel)(fl_Round_Button round_button,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Round_Button_selection_color)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_selection_color)(fl_Round_Button round_button, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Round_Button_label)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_copy_label)(fl_Round_Button round_button, const char* new_label);+  FL_EXPORT_C(void,         Fl_Round_Button_set_label)(fl_Round_Button round_button, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Round_Button_labeltype)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_labeltype)(fl_Round_Button round_button, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Round_Button_labelcolor)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_labelcolor)(fl_Round_Button round_button, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Round_Button_labelfont)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_labelfont)(fl_Round_Button round_button, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Round_Button_labelsize)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_labelsize)(fl_Round_Button round_button, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Round_Button_image)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_image)(fl_Round_Button round_button, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Round_Button_deimage)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_deimage)(fl_Round_Button round_button, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Round_Button_tooltip)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_copy_tooltip)(fl_Round_Button round_button, const char* text);+  FL_EXPORT_C(void,         Fl_Round_Button_set_tooltip)(fl_Round_Button round_button, const char* text);+  FL_EXPORT_C(void,         Fl_Round_Button_set_callback_with_user_data)(fl_Round_Button round_button, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Round_Button_set_callback)(fl_Round_Button round_button, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Round_Button_user_data)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_user_data)(fl_Round_Button round_button, void* v);+  FL_EXPORT_C(long,         Fl_Round_Button_argument)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_argument)(fl_Round_Button round_button, long v);+  FL_EXPORT_C(Fl_When,      Fl_Round_Button_when)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_when)(fl_Round_Button round_button, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Round_Button_visible)(fl_Round_Button round_button);+  FL_EXPORT_C(int,          Fl_Round_Button_visible_r)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_visible)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_clear_visible)(fl_Round_Button round_button);+  FL_EXPORT_C(unsigned int, Fl_Round_Button_active)(fl_Round_Button round_button);+  FL_EXPORT_C(int,          Fl_Round_Button_active_r)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_activate)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_deactivate)(fl_Round_Button round_button);+  FL_EXPORT_C(unsigned int, Fl_Round_Button_output)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_output)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_clear_output)(fl_Round_Button round_button);+  FL_EXPORT_C(unsigned int, Fl_Round_Button_takesevents)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_changed)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_clear_changed)(fl_Round_Button round_button);+  FL_EXPORT_C(int,          Fl_Round_Button_take_focus)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_set_visible_focus)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_clear_visible_focus)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_modify_visible_focus)(fl_Round_Button round_button, int v);+  FL_EXPORT_C(unsigned int, Fl_Round_Button_visible_focus)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_do_callback)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_do_callback_with_widget_and_user_data)(fl_Round_Button round_button, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Round_Button_do_callback_with_widget_and_default_user_data)(fl_Round_Button round_button, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Round_Button_contains)(fl_Round_Button round_button, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Round_Button_inside)(fl_Round_Button round_button, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Round_Button_redraw)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_redraw_label)(fl_Round_Button round_button);+  FL_EXPORT_C(uchar,        Fl_Round_Button_damage)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_clear_damage_with_bitmask)(fl_Round_Button round_button, uchar c);+  FL_EXPORT_C(void,         Fl_Round_Button_clear_damage)(fl_Round_Button round_button);+  FL_EXPORT_C(void,         Fl_Round_Button_damage_with_text)(fl_Round_Button round_button, uchar c);+  FL_EXPORT_C(void,         Fl_Round_Button_damage_inside_widget)(fl_Round_Button round_button, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Round_Button_draw_label_with_xywh_alignment)(fl_Round_Button round_button, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Round_Button_measure_label)(fl_Round_Button round_button, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Round_Button_window)(fl_Round_Button round_button);+  FL_EXPORT_C(fl_Window,    Fl_Round_Button_top_window)(fl_Round_Button round_button);+  FL_EXPORT_C(fl_Window ,   Fl_Round_Button_top_window_offset)(fl_Round_Button round_button, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Round_Button_as_group)(fl_Round_Button round_button);+  FL_EXPORT_C(fl_Gl_Window, Fl_Round_Button_as_gl_window)(fl_Round_Button round_button);+  /* Fl_Round_Button specific functions */+  FL_EXPORT_C(fl_Round_Button,    Fl_Round_Button_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Round_Button,    Fl_Round_Button_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,Fl_Round_Button_Destroy)(fl_Round_Button button);+  FL_EXPORT_C(char        , Fl_Round_Button_value)(fl_Round_Button b);+  FL_EXPORT_C(int         , Fl_Round_Button_set_value)(fl_Round_Button b, int v);+  FL_EXPORT_C(int         , Fl_Round_Button_set)(fl_Round_Button b);+  FL_EXPORT_C(int         , Fl_Round_Button_clear)(fl_Round_Button b);+  FL_EXPORT_C(void        , Fl_Round_Button_setonly)(fl_Round_Button b);+  FL_EXPORT_C(int         , Fl_Round_Button_get_shortcut )(fl_Round_Button b);+  FL_EXPORT_C(void        , Fl_Round_Button_set_shortcut )(fl_Round_Button b, int s);+  FL_EXPORT_C(Fl_Boxtype  , Fl_Round_Button_down_box)(fl_Round_Button b);+  FL_EXPORT_C(void        , Fl_Round_Button_set_down_box)(fl_Round_Button b,Fl_Boxtype boxtype);+  FL_EXPORT_C(Fl_Color    , Fl_Round_Button_down_color )(fl_Round_Button b);+  FL_EXPORT_C(void        , Fl_Round_Button_set_down_color)(fl_Round_Button b, Fl_Color c);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_ROUND_BUTTON_C__*/
+ c-src/Fl_Round_ClockC.cpp view
@@ -0,0 +1,300 @@+#include "Fl_Round_ClockC.h"++#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Round_Clock_handle)(fl_Round_Clock self, int event){+    return (static_cast<Fl_Round_Clock*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Round_Clock_parent)(fl_Round_Clock b){+    return (fl_Group) (static_cast<Fl_Round_Clock*>(b))->parent();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_parent)(fl_Round_Clock b,fl_Group grp){+    (static_cast<Fl_Round_Clock*>(b))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Round_Clock_type)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->type();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_type)(fl_Round_Clock b,uchar t){+    (static_cast<Fl_Round_Clock*>(b))->type(t);+  }++  FL_EXPORT_C(int,Fl_Round_Clock_x)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->x();+  }+  FL_EXPORT_C(int,Fl_Round_Clock_y)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->y();+  }+  FL_EXPORT_C(int,Fl_Round_Clock_w)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->w();+  }+  FL_EXPORT_C(int,Fl_Round_Clock_h)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->h();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_align)(fl_Round_Clock round_clock, Fl_Align alignment){+    (static_cast<Fl_Round_Clock*>(round_clock))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Round_Clock_align)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Round_Clock_box)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->box();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_box)(fl_Round_Clock b,Fl_Boxtype new_box){+    (static_cast<Fl_Round_Clock*>(b))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Round_Clock_color)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->color();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_color)(fl_Round_Clock b,Fl_Color bg){+    (static_cast<Fl_Round_Clock*>(b))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_color_with_bg_sel)(fl_Round_Clock b,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Round_Clock*>(b))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Round_Clock_selection_color)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_selection_color)(fl_Round_Clock b,Fl_Color a){+    (static_cast<Fl_Round_Clock*>(b))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Round_Clock_label)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->label();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_copy_label)(fl_Round_Clock b,const char* new_label){+    (static_cast<Fl_Round_Clock*>(b))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_label)(fl_Round_Clock b,const char* text){+    (static_cast<Fl_Round_Clock*>(b))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Round_Clock_labeltype)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_labeltype)(fl_Round_Clock b,Fl_Labeltype a){+    (static_cast<Fl_Round_Clock*>(b))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_labelcolor)(fl_Round_Clock b,Fl_Color c){+    (static_cast<Fl_Round_Clock*>(b))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Round_Clock_labelcolor)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Round_Clock_labelfont)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_labelfont)(fl_Round_Clock b,Fl_Font c){+    (static_cast<Fl_Round_Clock*>(b))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Round_Clock_labelsize)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_labelsize)(fl_Round_Clock b,Fl_Fontsize pix){+    (static_cast<Fl_Round_Clock*>(b))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Round_Clock_image)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->image();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_image)(fl_Round_Clock b,fl_Image pix){+    (static_cast<Fl_Round_Clock*>(b))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Round_Clock_deimage)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->deimage();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_deimage)(fl_Round_Clock b,fl_Image pix){+    (static_cast<Fl_Round_Clock*>(b))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Round_Clock_tooltip)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_copy_tooltip)(fl_Round_Clock b,const char* text){+    (static_cast<Fl_Round_Clock*>(b))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_tooltip)(fl_Round_Clock b,const char* text){+    (static_cast<Fl_Round_Clock*>(b))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_callback_with_user_data)(fl_Round_Clock b,fl_Callback* cb,void* p){+    Fl_Round_Clock* castedButton = (static_cast<Fl_Round_Clock*>(b));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_callback)(fl_Round_Clock b,fl_Callback* cb){+    Fl_Round_Clock* castedButton = (static_cast<Fl_Round_Clock*>(b));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Round_Clock_user_data)(fl_Round_Clock b){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Round_Clock*>(b))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Round_Clock*>(b))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_user_data)(fl_Round_Clock b,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Round_Clock*>(b))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Round_Clock*>(b))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Round_Clock*>(b))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Round_Clock_argument)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->argument();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_argument)(fl_Round_Clock b,long v){+    (static_cast<Fl_Round_Clock*>(b))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Round_Clock_when)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->when();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_when)(fl_Round_Clock b,uchar i){+    (static_cast<Fl_Round_Clock*>(b))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Round_Clock_visible)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->visible();+  }+  FL_EXPORT_C(int,Fl_Round_Clock_visible_r)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_visible)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->visible();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_clear_visible)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Round_Clock_active)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->active();+  }+  FL_EXPORT_C(int,Fl_Round_Clock_active_r)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->active_r();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_activate)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->activate();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_deactivate)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Round_Clock_output)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_output)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_clear_output)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Round_Clock_takesevents)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_changed)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->changed();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_clear_changed)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Round_Clock_take_focus)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_visible_focus)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_clear_visible_focus)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_modify_visible_focus)(fl_Round_Clock b,int v){+    (static_cast<Fl_Round_Clock*>(b))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Round_Clock_visible_focus)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_do_callback)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_do_callback_with_widget_and_user_data)(fl_Round_Clock b,fl_Widget w,long arg){+    (static_cast<Fl_Round_Clock*>(b))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Round_Clock_do_callback_with_widget_and_default_user_data)(fl_Round_Clock b,fl_Widget w){+    (static_cast<Fl_Round_Clock*>(b))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Round_Clock_contains)(fl_Round_Clock b,fl_Widget w){+    return (static_cast<Fl_Round_Clock*>(b))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Round_Clock_inside)(fl_Round_Clock b,fl_Widget w){+    return (static_cast<Fl_Round_Clock*>(b))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Round_Clock_redraw)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->redraw();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_redraw_label)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Round_Clock_damage)(fl_Round_Clock b){+    return (static_cast<Fl_Round_Clock*>(b))->damage();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_clear_damage_with_bitmask)(fl_Round_Clock b,uchar c){+    (static_cast<Fl_Round_Clock*>(b))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Round_Clock_clear_damage)(fl_Round_Clock b){+    (static_cast<Fl_Round_Clock*>(b))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Round_Clock_damage_with_text)(fl_Round_Clock b,uchar c){+    (static_cast<Fl_Round_Clock*>(b))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Round_Clock_damage_inside_widget)(fl_Round_Clock b,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Round_Clock*>(b))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Round_Clock_draw_label_with_xywh_alignment)(fl_Round_Clock b,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Round_Clock*>(b))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Round_Clock_measure_label)(fl_Round_Clock b,int* ww,int* hh){+    (static_cast<Fl_Round_Clock*>(b))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Round_Clock_window)(fl_Round_Clock round_clock){+    return (fl_Window) (static_cast<Fl_Round_Clock*>(round_clock))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Round_Clock_top_window)(fl_Round_Clock round_clock){+    return (fl_Window) (static_cast<Fl_Round_Clock*>(round_clock))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Round_Clock_top_window_offset)(fl_Round_Clock round_clock, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Round_Clock*>(round_clock))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Round_Clock_as_group)(fl_Round_Clock round_clock){+    return (fl_Group) (static_cast<Fl_Round_Clock*>(round_clock))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Round_Clock_as_gl_window)(fl_Round_Clock round_clock){+    return (fl_Gl_Window) (static_cast<Fl_Round_Clock*>(round_clock))->as_gl_window();+  }+  FL_EXPORT_C(fl_Round_Clock, Fl_Round_Clock_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Round_Clock* button = new Fl_Round_Clock(x,y,w,h,label);+    return (static_cast<fl_Round_Clock>(button));+  }+  FL_EXPORT_C(fl_Round_Clock, Fl_Round_Clock_New)(int x, int y, int w, int h) {+    Fl_Round_Clock* button = new Fl_Round_Clock(x,y,w,h,0);+    return (fl_Round_Clock)button;+  }+  FL_EXPORT_C(void,Fl_Round_Clock_Destroy)(fl_Round_Clock button){+    delete (static_cast<Fl_Round_Clock*>(button));+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_value)(fl_Round_Clock round_clock,ulong v){+    return (static_cast<Fl_Round_Clock*>(round_clock))->value(v);+  }+  FL_EXPORT_C(void,Fl_Round_Clock_set_value_with_hms)(fl_Round_Clock round_clock,int H,int m,int s){+    return (static_cast<Fl_Round_Clock*>(round_clock))->value(H,m,s);+  }+  FL_EXPORT_C(ulong,Fl_Round_Clock_value)(fl_Round_Clock round_clock){+    return (static_cast<Fl_Round_Clock*>(round_clock))->value();+  }+  FL_EXPORT_C(int,Fl_Round_Clock_hour)(fl_Round_Clock round_clock){+    return (static_cast<Fl_Round_Clock*>(round_clock))->hour();+  }+  FL_EXPORT_C(int,Fl_Round_Clock_minute)(fl_Round_Clock round_clock){+    return (static_cast<Fl_Round_Clock*>(round_clock))->minute();+  }+  FL_EXPORT_C(int,Fl_Round_Clock_second)(fl_Round_Clock round_clock){+    return (static_cast<Fl_Round_Clock*>(round_clock))->second();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Round_ClockC.h view
@@ -0,0 +1,109 @@+#ifndef __FL_ROUND_CLOCK_C__+#define __FL_ROUND_CLOCK_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Round_Clock.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Round_Clock_handle)(fl_Round_Clock self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Round_Clock_parent)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_parent)(fl_Round_Clock round_clock, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Round_Clock_type)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_type)(fl_Round_Clock round_clock, uchar t);++  FL_EXPORT_C(int,          Fl_Round_Clock_x)(fl_Round_Clock round_clock);+  FL_EXPORT_C(int,          Fl_Round_Clock_y)(fl_Round_Clock round_clock);+  FL_EXPORT_C(int,          Fl_Round_Clock_w)(fl_Round_Clock round_clock);+  FL_EXPORT_C(int,          Fl_Round_Clock_h)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_align)(fl_Round_Clock round_clock, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Round_Clock_align)(fl_Round_Clock round_clock);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Round_Clock_box)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_box)(fl_Round_Clock round_clock, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Round_Clock_color)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_color)(fl_Round_Clock round_clock, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_color_with_bg_sel)(fl_Round_Clock round_clock,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Round_Clock_selection_color)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_selection_color)(fl_Round_Clock round_clock, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Round_Clock_label)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_copy_label)(fl_Round_Clock round_clock, const char* new_label);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_label)(fl_Round_Clock round_clock, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Round_Clock_labeltype)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_labeltype)(fl_Round_Clock round_clock, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Round_Clock_labelcolor)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_labelcolor)(fl_Round_Clock round_clock, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Round_Clock_labelfont)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_labelfont)(fl_Round_Clock round_clock, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Round_Clock_labelsize)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_labelsize)(fl_Round_Clock round_clock, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Round_Clock_image)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_image)(fl_Round_Clock round_clock, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Round_Clock_deimage)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_deimage)(fl_Round_Clock round_clock, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Round_Clock_tooltip)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_copy_tooltip)(fl_Round_Clock round_clock, const char* text);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_tooltip)(fl_Round_Clock round_clock, const char* text);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_callback_with_user_data)(fl_Round_Clock round_clock, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_callback)(fl_Round_Clock round_clock, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Round_Clock_user_data)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_user_data)(fl_Round_Clock round_clock, void* v);+  FL_EXPORT_C(long,         Fl_Round_Clock_argument)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_argument)(fl_Round_Clock round_clock, long v);+  FL_EXPORT_C(Fl_When,      Fl_Round_Clock_when)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_when)(fl_Round_Clock round_clock, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Round_Clock_visible)(fl_Round_Clock round_clock);+  FL_EXPORT_C(int,          Fl_Round_Clock_visible_r)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_visible)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_clear_visible)(fl_Round_Clock round_clock);+  FL_EXPORT_C(unsigned int, Fl_Round_Clock_active)(fl_Round_Clock round_clock);+  FL_EXPORT_C(int,          Fl_Round_Clock_active_r)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_activate)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_deactivate)(fl_Round_Clock round_clock);+  FL_EXPORT_C(unsigned int, Fl_Round_Clock_output)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_output)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_clear_output)(fl_Round_Clock round_clock);+  FL_EXPORT_C(unsigned int, Fl_Round_Clock_takesevents)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_changed)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_clear_changed)(fl_Round_Clock round_clock);+  FL_EXPORT_C(int,          Fl_Round_Clock_take_focus)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_set_visible_focus)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_clear_visible_focus)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_modify_visible_focus)(fl_Round_Clock round_clock, int v);+  FL_EXPORT_C(unsigned int, Fl_Round_Clock_visible_focus)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_do_callback)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_do_callback_with_widget_and_user_data)(fl_Round_Clock round_clock, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Round_Clock_do_callback_with_widget_and_default_user_data)(fl_Round_Clock round_clock, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Round_Clock_contains)(fl_Round_Clock round_clock, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Round_Clock_inside)(fl_Round_Clock round_clock, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Round_Clock_redraw)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_redraw_label)(fl_Round_Clock round_clock);+  FL_EXPORT_C(uchar,        Fl_Round_Clock_damage)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_clear_damage_with_bitmask)(fl_Round_Clock round_clock, uchar c);+  FL_EXPORT_C(void,         Fl_Round_Clock_clear_damage)(fl_Round_Clock round_clock);+  FL_EXPORT_C(void,         Fl_Round_Clock_damage_with_text)(fl_Round_Clock round_clock, uchar c);+  FL_EXPORT_C(void,         Fl_Round_Clock_damage_inside_widget)(fl_Round_Clock round_clock, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Round_Clock_draw_label_with_xywh_alignment)(fl_Round_Clock round_clock, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Round_Clock_measure_label)(fl_Round_Clock round_clock, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Round_Clock_window)(fl_Round_Clock round_clock);+  FL_EXPORT_C(fl_Window,    Fl_Round_Clock_top_window)(fl_Round_Clock round_clock);+  FL_EXPORT_C(fl_Window ,   Fl_Round_Clock_top_window_offset)(fl_Round_Clock round_clock, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Round_Clock_as_group)(fl_Round_Clock round_clock);+  FL_EXPORT_C(fl_Gl_Window, Fl_Round_Clock_as_gl_window)(fl_Round_Clock round_clock);+  /* Fl_Round_Clock specific functions */+  FL_EXPORT_C(fl_Round_Clock,    Fl_Round_Clock_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Round_Clock,    Fl_Round_Clock_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void, Fl_Round_Clock_set_value)(fl_Round_Clock round_clock, ulong v);+  FL_EXPORT_C(void, Fl_Round_Clock_set_value_with_hms)(fl_Round_Clock round_clock, int H, int m, int s);+  FL_EXPORT_C(ulong, Fl_Round_Clock_value)(fl_Round_Clock round_clock);+  FL_EXPORT_C(int, Fl_Round_Clock_hour)(fl_Round_Clock round_clock);+  FL_EXPORT_C(int, Fl_Round_Clock_minute)(fl_Round_Clock round_clock);+  FL_EXPORT_C(int, Fl_Round_Clock_second)(fl_Round_Clock round_clock);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_ROUND_CLOCK_C__*/
+ c-src/Fl_ScrollbarC.cpp view
@@ -0,0 +1,364 @@+#include "Fl_ScrollbarC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Scrollbar_handle )(fl_Scrollbar slider, int event){+    return (static_cast<Fl_Scrollbar*>(slider))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_resize )(fl_Scrollbar slider,int x, int y, int w, int h){+    (static_cast<Fl_Scrollbar*>(slider))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_show )(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->show();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_hide )(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Scrollbar_as_window )(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->as_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Scrollbar_as_gl_window )(fl_Scrollbar slider){+    return (fl_Gl_Window) (static_cast<Fl_Scrollbar*>(slider))->as_gl_window();+  };+  FL_EXPORT_C(fl_Group,Fl_Scrollbar_parent)(fl_Scrollbar slider){+    return (fl_Group) (static_cast<Fl_Scrollbar*>(slider))->parent();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_parent)(fl_Scrollbar slider,fl_Group grp){+    (static_cast<Fl_Scrollbar*>(slider))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Scrollbar_type)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->type();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_type)(fl_Scrollbar slider,uchar t){+    (static_cast<Fl_Scrollbar*>(slider))->type(t);+  }++  FL_EXPORT_C(int,Fl_Scrollbar_x)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->x();+  }+  FL_EXPORT_C(int,Fl_Scrollbar_y)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->y();+  }+  FL_EXPORT_C(int,Fl_Scrollbar_w)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->w();+  }+  FL_EXPORT_C(int,Fl_Scrollbar_h)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->h();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_align)(fl_Scrollbar slider, Fl_Align alignment){+    (static_cast<Fl_Scrollbar*>(slider))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Scrollbar_align)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Scrollbar_box)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->box();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_box)(fl_Scrollbar slider,Fl_Boxtype new_box){+    (static_cast<Fl_Scrollbar*>(slider))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Scrollbar_color)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->color();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_color)(fl_Scrollbar slider,Fl_Color bg){+    (static_cast<Fl_Scrollbar*>(slider))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_color_with_bg_sel)(fl_Scrollbar slider,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Scrollbar*>(slider))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Scrollbar_selection_color)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_selection_color)(fl_Scrollbar slider,Fl_Color a){+    (static_cast<Fl_Scrollbar*>(slider))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Scrollbar_label)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->label();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_copy_label)(fl_Scrollbar slider,const char* new_label){+    (static_cast<Fl_Scrollbar*>(slider))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_label)(fl_Scrollbar slider,const char* text){+    (static_cast<Fl_Scrollbar*>(slider))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Scrollbar_labeltype)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_labeltype)(fl_Scrollbar slider,Fl_Labeltype a){+    (static_cast<Fl_Scrollbar*>(slider))->labeltype(a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Scrollbar_labelcolor)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->labelcolor();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_labelcolor)(fl_Scrollbar slider,Fl_Color c){+    (static_cast<Fl_Scrollbar*>(slider))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Font,Fl_Scrollbar_labelfont)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_labelfont)(fl_Scrollbar slider,Fl_Font c){+    (static_cast<Fl_Scrollbar*>(slider))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Scrollbar_labelsize)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_labelsize)(fl_Scrollbar slider,Fl_Fontsize pix){+    (static_cast<Fl_Scrollbar*>(slider))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Scrollbar_image)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->image();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_image)(fl_Scrollbar slider,fl_Image pix){+    (static_cast<Fl_Scrollbar*>(slider))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Scrollbar_deimage)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->deimage();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_deimage)(fl_Scrollbar slider,fl_Image pix){+    (static_cast<Fl_Scrollbar*>(slider))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Scrollbar_tooltip)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_copy_tooltip)(fl_Scrollbar slider,const char* text){+    (static_cast<Fl_Scrollbar*>(slider))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_tooltip)(fl_Scrollbar slider,const char* text){+    (static_cast<Fl_Scrollbar*>(slider))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_callback_with_user_data)(fl_Scrollbar slider,fl_Callback cb,void* p){+    Fl_Scrollbar* castedBox = (static_cast<Fl_Scrollbar*>(slider));+    new C_to_Fl_Callback(castedBox, cb, p);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_callback)(fl_Scrollbar slider,fl_Callback cb){+    Fl_Scrollbar* castedBox = (static_cast<Fl_Scrollbar*>(slider));+    new C_to_Fl_Callback(castedBox, cb);+  }+  FL_EXPORT_C(void*,Fl_Scrollbar_user_data)(fl_Scrollbar slider){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Scrollbar*>(slider))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Scrollbar*>(slider))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_user_data)(fl_Scrollbar slider,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Scrollbar*>(slider))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Scrollbar*>(slider))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Scrollbar*>(slider))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Scrollbar_argument)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->argument();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_argument)(fl_Scrollbar slider,long v){+    (static_cast<Fl_Scrollbar*>(slider))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Scrollbar_when)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->when();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_when)(fl_Scrollbar slider,uchar i){+    (static_cast<Fl_Scrollbar*>(slider))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Scrollbar_visible)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->visible();+  }+  FL_EXPORT_C(int,Fl_Scrollbar_visible_r)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_visible)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->visible();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_clear_visible)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Scrollbar_active)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->active();+  }+  FL_EXPORT_C(int,Fl_Scrollbar_active_r)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->active_r();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_activate)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->activate();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_deactivate)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Scrollbar_output)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->output();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_output)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->output();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_clear_output)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Scrollbar_takesevents)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_changed)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->changed();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_clear_changed)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Scrollbar_take_focus)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_visible_focus)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_clear_visible_focus)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_modify_visible_focus)(fl_Scrollbar slider,int v){+    (static_cast<Fl_Scrollbar*>(slider))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Scrollbar_visible_focus)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_do_callback)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_do_callback_with_widget_and_user_data)(fl_Scrollbar slider,fl_Widget w,long arg){+    (static_cast<Fl_Scrollbar*>(slider))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_do_callback_with_widget_and_default_user_data)(fl_Scrollbar slider,fl_Widget w){+    (static_cast<Fl_Scrollbar*>(slider))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Scrollbar_contains)(fl_Scrollbar slider,fl_Widget w){+    return (static_cast<Fl_Scrollbar*>(slider))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Scrollbar_inside)(fl_Scrollbar slider,fl_Widget w){+    return (static_cast<Fl_Scrollbar*>(slider))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Scrollbar_redraw)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->redraw();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_redraw_label)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Scrollbar_damage)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->damage();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_clear_damage_with_bitmask)(fl_Scrollbar slider,uchar c){+    (static_cast<Fl_Scrollbar*>(slider))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_clear_damage)(fl_Scrollbar slider){+    (static_cast<Fl_Scrollbar*>(slider))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_damage_with_text)(fl_Scrollbar slider,uchar c){+    (static_cast<Fl_Scrollbar*>(slider))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_damage_inside_widget)(fl_Scrollbar slider,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Scrollbar*>(slider))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_draw_label_with_xywh_alignment)(fl_Scrollbar slider,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Scrollbar*>(slider))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_measure_label)(fl_Scrollbar slider,int* ww,int* hh){+    (static_cast<Fl_Scrollbar*>(slider))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Scrollbar_window)(fl_Scrollbar slider){+    return (fl_Window) (static_cast<Fl_Scrollbar*>(slider))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Scrollbar_top_window)(fl_Scrollbar slider){+    return (fl_Window) (static_cast<Fl_Scrollbar*>(slider))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Scrollbar_top_window_offset)(fl_Scrollbar slider, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Scrollbar*>(slider))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Scrollbar_as_group)(fl_Scrollbar slider){+    return (fl_Group) (static_cast<Fl_Scrollbar*>(slider))->as_group();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_bounds)(fl_Scrollbar slider,double a,double b){+    (static_cast<Fl_Scrollbar*>(slider))->bounds(a,b);+  }+  FL_EXPORT_C(double,Fl_Scrollbar_minimum)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->minimum();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_minimum)(fl_Scrollbar slider,double a){+    (static_cast<Fl_Scrollbar*>(slider))->minimum(a);+  }+  FL_EXPORT_C(double,Fl_Scrollbar_maximum)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->maximum();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_maximum)(fl_Scrollbar slider,double a){+    (static_cast<Fl_Scrollbar*>(slider))->maximum(a);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_precision)(fl_Scrollbar slider,int precision){+    (static_cast<Fl_Scrollbar*>(slider))->precision(precision);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_range)(fl_Scrollbar slider,double a,double b){+    (static_cast<Fl_Scrollbar*>(slider))->range(a,b);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_step)(fl_Scrollbar slider,int a){+    (static_cast<Fl_Scrollbar*>(slider))->step(a);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_step_with_a_b)(fl_Scrollbar slider,double a,int b){+    (static_cast<Fl_Scrollbar*>(slider))->step(a,b);+  }+  FL_EXPORT_C(void,Fl_Scrollbar_step_with_s)(fl_Scrollbar slider,double s){+    (static_cast<Fl_Scrollbar*>(slider))->step(s);+  }+  FL_EXPORT_C(double,Fl_Scrollbar_step)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->step();+  }+  FL_EXPORT_C(double,Fl_Scrollbar_value)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->value();+  }+  FL_EXPORT_C(int,Fl_Scrollbar_set_value)(fl_Scrollbar slider,double v){+    return (static_cast<Fl_Scrollbar*>(slider))->value(v);+  }+  FL_EXPORT_C(int,Fl_Scrollbar_format)(fl_Scrollbar slider,char* format){+    return (static_cast<Fl_Scrollbar*>(slider))->format(format);+  }+  FL_EXPORT_C(double,Fl_Scrollbar_round)(fl_Scrollbar slider,double v){+    return (static_cast<Fl_Scrollbar*>(slider))->round(v);+  }+  FL_EXPORT_C(double,Fl_Scrollbar_clamp)(fl_Scrollbar slider,double v){+    return (static_cast<Fl_Scrollbar*>(slider))->clamp(v);+  }+  FL_EXPORT_C(double,Fl_Scrollbar_increment)(fl_Scrollbar slider,double v,int n){+    return (static_cast<Fl_Scrollbar*>(slider))->increment(v,n);+  }+  FL_EXPORT_C(fl_Scrollbar, Fl_Scrollbar_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Scrollbar* slider = new Fl_Scrollbar(x,y,w,h,label);+    return (static_cast<fl_Scrollbar>(slider));+  }+  FL_EXPORT_C(fl_Scrollbar, Fl_Scrollbar_New)(int x, int y, int w, int h) {+    Fl_Scrollbar* slider = new Fl_Scrollbar(x,y,w,h,0);+    return (fl_Scrollbar)slider;+  }+  FL_EXPORT_C(void,      Fl_Scrollbar_Destroy)(fl_Scrollbar slider){+    delete (static_cast<Fl_Scrollbar*>(slider));+  }+  FL_EXPORT_C(int,Fl_Scrollbar_scrollvalue)(fl_Scrollbar slider,int pos,int size,int first,int total){+    return (static_cast<Fl_Scrollbar*>(slider))->scrollvalue(pos,size,first,total);+  }+  FL_EXPORT_C(float,Fl_Scrollbar_set_slider_size)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->slider_size();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_slider_size)(fl_Scrollbar slider,double v){+    (static_cast<Fl_Scrollbar*>(slider))->slider_size(v);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Scrollbar_slider)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->slider();+  }+  FL_EXPORT_C(void,Fl_Scrollbar_set_slider)(fl_Scrollbar slider,Fl_Boxtype c){+    (static_cast<Fl_Scrollbar*>(slider))->slider(c);+  }+  FL_EXPORT_C(void, Fl_Scrollbar_set_linesize)(fl_Scrollbar slider, int i) {+    (static_cast<Fl_Scrollbar*>(slider))->linesize(i);+  }+  FL_EXPORT_C(int  , Fl_Scrollbar_linesize)(fl_Scrollbar slider){+    return (static_cast<Fl_Scrollbar*>(slider))->linesize();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_ScrollbarC.h view
@@ -0,0 +1,130 @@+#ifndef __FL_SLIDER_C__+#define __FL_SLIDER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Scrollbar is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Scrollbar.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Scrollbar_handle)(fl_Widget self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Scrollbar_parent)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_parent)(fl_Scrollbar slider, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Scrollbar_type)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_type)(fl_Scrollbar slider, uchar t);++  FL_EXPORT_C(int,          Fl_Scrollbar_x)(fl_Scrollbar slider);+  FL_EXPORT_C(int,          Fl_Scrollbar_y)(fl_Scrollbar slider);+  FL_EXPORT_C(int,          Fl_Scrollbar_w)(fl_Scrollbar slider);+  FL_EXPORT_C(int,          Fl_Scrollbar_h)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_align)(fl_Scrollbar slider, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Scrollbar_align)(fl_Scrollbar slider);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Scrollbar_box)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_box)(fl_Scrollbar slider, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Scrollbar_color)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_color)(fl_Scrollbar slider, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_color_with_bg_sel)(fl_Scrollbar slider,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Scrollbar_selection_color)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_selection_color)(fl_Scrollbar slider, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Scrollbar_label)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_copy_label)(fl_Scrollbar slider, const char* new_label);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_label)(fl_Scrollbar slider, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Scrollbar_labeltype)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_labeltype)(fl_Scrollbar slider, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Scrollbar_labelcolor)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_labelcolor)(fl_Scrollbar slider, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Scrollbar_labelfont)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_labelfont)(fl_Scrollbar slider, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Scrollbar_labelsize)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_labelsize)(fl_Scrollbar slider, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Scrollbar_image)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_image)(fl_Scrollbar slider, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Scrollbar_deimage)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_deimage)(fl_Scrollbar slider, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Scrollbar_tooltip)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_copy_tooltip)(fl_Scrollbar slider, const char* text);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_tooltip)(fl_Scrollbar slider, const char* text);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_callback_with_user_data)(fl_Scrollbar slider, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_callback)(fl_Scrollbar slider, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Scrollbar_other_data)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_other_data)(fl_Scrollbar slider, void* v);+  FL_EXPORT_C(void*,        Fl_Scrollbar_user_data)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_user_data)(fl_Scrollbar slider, void* v);+  FL_EXPORT_C(long,         Fl_Scrollbar_argument)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_argument)(fl_Scrollbar slider, long v);+  FL_EXPORT_C(Fl_When,      Fl_Scrollbar_when)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_when)(fl_Scrollbar slider, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Scrollbar_visible)(fl_Scrollbar slider);+  FL_EXPORT_C(int,          Fl_Scrollbar_visible_r)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_show)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_hide)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_visible)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_clear_visible)(fl_Scrollbar slider);+  FL_EXPORT_C(unsigned int, Fl_Scrollbar_active)(fl_Scrollbar slider);+  FL_EXPORT_C(int,          Fl_Scrollbar_active_r)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_activate)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_deactivate)(fl_Scrollbar slider);+  FL_EXPORT_C(unsigned int, Fl_Scrollbar_output)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_output)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_clear_output)(fl_Scrollbar slider);+  FL_EXPORT_C(unsigned int, Fl_Scrollbar_takesevents)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_changed)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_clear_changed)(fl_Scrollbar slider);+  FL_EXPORT_C(int,          Fl_Scrollbar_take_focus)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_set_visible_focus)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_clear_visible_focus)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_modify_visible_focus)(fl_Scrollbar slider, int v);+  FL_EXPORT_C(unsigned int, Fl_Scrollbar_visible_focus)(fl_Scrollbar slider);+  FL_EXPORT_C(int,          Fl_Scrollbar_contains)(fl_Scrollbar slider, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Scrollbar_inside)(fl_Scrollbar slider, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Scrollbar_redraw)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_redraw_label)(fl_Scrollbar slider);+  FL_EXPORT_C(uchar,        Fl_Scrollbar_damage)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_clear_damage_with_bitmask)(fl_Scrollbar slider, uchar c);+  FL_EXPORT_C(void,         Fl_Scrollbar_clear_damage)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_damage_with_text)(fl_Scrollbar slider, uchar c);+  FL_EXPORT_C(void,         Fl_Scrollbar_damage_inside_widget)(fl_Scrollbar slider, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Scrollbar_draw_label_with_xywh_alignment)(fl_Scrollbar slider, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Scrollbar_measure_label)(fl_Scrollbar slider, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Scrollbar_window)(fl_Scrollbar slider);+  FL_EXPORT_C(fl_Window,    Fl_Scrollbar_top_window)(fl_Scrollbar slider);+  FL_EXPORT_C(fl_Window ,   Fl_Scrollbar_top_window_offset)(fl_Scrollbar slider, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Gl_Window, Fl_Scrollbar_as_gl_window)(fl_Scrollbar slider);+  FL_EXPORT_C(void,         Fl_Scrollbar_resize)(fl_Table table,int X, int Y, int W, int H);++  /* Inherited from Fl_Valuator */+  FL_EXPORT_C(void, Fl_Scrollbar_bounds)(fl_Scrollbar slider, double a, double b);+  FL_EXPORT_C(double, Fl_Scrollbar_minimum)(fl_Scrollbar slider);+  FL_EXPORT_C(void, Fl_Scrollbar_set_minimum)(fl_Scrollbar slider, double a);+  FL_EXPORT_C(double, Fl_Scrollbar_maximum)(fl_Scrollbar slider);+  FL_EXPORT_C(void, Fl_Scrollbar_set_maximum)(fl_Scrollbar slider, double a);+  FL_EXPORT_C(void, Fl_Scrollbar_range)(fl_Scrollbar slider, double a, double b);+  FL_EXPORT_C(void, Fl_Scrollbar_set_step)(fl_Scrollbar slider, int a);+  FL_EXPORT_C(void, Fl_Scrollbar_set_step_with_a_b)(fl_Scrollbar slider, double a, int b);+  FL_EXPORT_C(void, Fl_Scrollbar_step_with_s)(fl_Scrollbar slider, double s);+  FL_EXPORT_C(double, Fl_Scrollbar_step)(fl_Scrollbar slider);+  FL_EXPORT_C(void, Fl_Scrollbar_precision)(fl_Scrollbar slider, int precision);+  FL_EXPORT_C(double, Fl_Scrollbar_value)(fl_Scrollbar slider);+  FL_EXPORT_C(int, Fl_Scrollbar_set_value)(fl_Scrollbar slider, double v);+  FL_EXPORT_C(int, Fl_Scrollbar_format)(fl_Scrollbar slider, char* format);+  FL_EXPORT_C(double, Fl_Scrollbar_round)(fl_Scrollbar slider, double v);+  FL_EXPORT_C(double, Fl_Scrollbar_clamp)(fl_Scrollbar slider, double v);+  FL_EXPORT_C(double, Fl_Scrollbar_increment)(fl_Scrollbar slider, double v, int n);++  /* Fl_Scrollbar specific */+  FL_EXPORT_C(fl_Scrollbar,    Fl_Scrollbar_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Scrollbar   , Fl_Scrollbar_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,      Fl_Scrollbar_Destroy)(fl_Scrollbar slider);+  FL_EXPORT_C(int, Fl_Scrollbar_scrollvalue)(fl_Scrollbar slider, int pos,int size,int first,int total);+  FL_EXPORT_C(float, Fl_Scrollbar_set_slider_size)(fl_Scrollbar slider);+  FL_EXPORT_C(void, Fl_Scrollbar_slider_size)(fl_Scrollbar slider, double v);+  FL_EXPORT_C(Fl_Boxtype, Fl_Scrollbar_slider)(fl_Scrollbar slider);+  FL_EXPORT_C(void, Fl_Scrollbar_set_slider)(fl_Scrollbar slider, Fl_Boxtype c);+  FL_EXPORT_C(void, Fl_Scrollbar_set_linesize)(fl_Scrollbar slider, int i);+  FL_EXPORT_C(int  , Fl_Scrollbar_linesize)(fl_Scrollbar slider);+#ifdef __cplusplus+}+#endif+#endif /* __FL_SLIDER_C__ */
+ c-src/Fl_Secret_InputC.cpp view
@@ -0,0 +1,416 @@+#include "Fl_Secret_InputC.h"++#ifdef __cplusplus+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Secret_Input_handle)(fl_Secret_Input self, int event){+    return (static_cast<Fl_Secret_Input*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Secret_Input_parent)(fl_Secret_Input secret_input){+    return (fl_Group) (static_cast<Fl_Secret_Input*>(secret_input))->parent();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_parent)(fl_Secret_Input secret_input,fl_Group grp){+    (static_cast<Fl_Secret_Input*>(secret_input))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Secret_Input_type)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->type();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_type)(fl_Secret_Input secret_input,uchar t){+    (static_cast<Fl_Secret_Input*>(secret_input))->type(t);+  }++  FL_EXPORT_C(int,Fl_Secret_Input_x)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->x();+  }+  FL_EXPORT_C(int,Fl_Secret_Input_y)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->y();+  }+  FL_EXPORT_C(int,Fl_Secret_Input_w)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->w();+  }+  FL_EXPORT_C(int,Fl_Secret_Input_h)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->h();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_align)(fl_Secret_Input secret_input, Fl_Align alignment){+    (static_cast<Fl_Secret_Input*>(secret_input))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Secret_Input_align)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Secret_Input_box)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->box();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_box)(fl_Secret_Input secret_input,Fl_Boxtype new_box){+    (static_cast<Fl_Secret_Input*>(secret_input))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Secret_Input_color)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->color();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_color)(fl_Secret_Input secret_input,Fl_Color bg){+    (static_cast<Fl_Secret_Input*>(secret_input))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_color_with_bg_sel)(fl_Secret_Input secret_input,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Secret_Input*>(secret_input))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Secret_Input_selection_color)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_selection_color)(fl_Secret_Input secret_input,Fl_Color a){+    (static_cast<Fl_Secret_Input*>(secret_input))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Secret_Input_label)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->label();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_copy_label)(fl_Secret_Input secret_input,const char* new_label){+    (static_cast<Fl_Secret_Input*>(secret_input))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_label)(fl_Secret_Input secret_input,const char* text){+    (static_cast<Fl_Secret_Input*>(secret_input))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Secret_Input_labeltype)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_labeltype)(fl_Secret_Input secret_input,Fl_Labeltype a){+    (static_cast<Fl_Secret_Input*>(secret_input))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_labelcolor)(fl_Secret_Input secret_input,Fl_Color c){+    (static_cast<Fl_Secret_Input*>(secret_input))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Secret_Input_labelcolor)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Secret_Input_labelfont)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_labelfont)(fl_Secret_Input secret_input,Fl_Font c){+    (static_cast<Fl_Secret_Input*>(secret_input))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Secret_Input_labelsize)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_labelsize)(fl_Secret_Input secret_input,Fl_Fontsize pix){+    (static_cast<Fl_Secret_Input*>(secret_input))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Secret_Input_image)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->image();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_image)(fl_Secret_Input secret_input,fl_Image pix){+    (static_cast<Fl_Secret_Input*>(secret_input))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Secret_Input_deimage)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->deimage();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_deimage)(fl_Secret_Input secret_input,fl_Image pix){+    (static_cast<Fl_Secret_Input*>(secret_input))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Secret_Input_tooltip)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_copy_tooltip)(fl_Secret_Input secret_input,const char* text){+    (static_cast<Fl_Secret_Input*>(secret_input))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_tooltip)(fl_Secret_Input secret_input,const char* text){+    (static_cast<Fl_Secret_Input*>(secret_input))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_callback_with_user_data)(fl_Secret_Input secret_input,fl_Callback* cb,void* p){+    Fl_Secret_Input* castedInput_dow = (static_cast<Fl_Secret_Input*>(secret_input));+    new C_to_Fl_Callback(castedInput_dow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_callback)(fl_Secret_Input secret_input,fl_Callback* cb){+    Fl_Secret_Input* castedInput_dow = (static_cast<Fl_Secret_Input*>(secret_input));+    new C_to_Fl_Callback(castedInput_dow, cb);+  }+  FL_EXPORT_C(void*,Fl_Secret_Input_user_data)(fl_Secret_Input secret_input){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Secret_Input*>(secret_input))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Secret_Input*>(secret_input))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_user_data)(fl_Secret_Input secret_input,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Secret_Input*>(secret_input))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Secret_Input*>(secret_input))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Secret_Input*>(secret_input))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Secret_Input_argument)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->argument();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_argument)(fl_Secret_Input secret_input,long v){+    (static_cast<Fl_Secret_Input*>(secret_input))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Secret_Input_when)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->when();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_when)(fl_Secret_Input secret_input,uchar i){+    (static_cast<Fl_Secret_Input*>(secret_input))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Secret_Input_visible)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->visible();+  }+  FL_EXPORT_C(int,Fl_Secret_Input_visible_r)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_visible)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->visible();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_clear_visible)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Secret_Input_active)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->active();+  }+  FL_EXPORT_C(int,Fl_Secret_Input_active_r)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->active_r();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_activate)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->activate();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_deactivate)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Secret_Input_output)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->output();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_output)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->output();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_clear_output)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Secret_Input_takesevents)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_changed)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->changed();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_clear_changed)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Secret_Input_take_focus)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_visible_focus)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_clear_visible_focus)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_modify_visible_focus)(fl_Secret_Input secret_input,int v){+    (static_cast<Fl_Secret_Input*>(secret_input))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Secret_Input_visible_focus)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_do_callback)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_do_callback_with_widget_and_user_data)(fl_Secret_Input secret_input,fl_Widget w,long arg){+    (static_cast<Fl_Secret_Input*>(secret_input))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Secret_Input_do_callback_with_widget_and_default_user_data)(fl_Secret_Input secret_input,fl_Widget w){+    (static_cast<Fl_Secret_Input*>(secret_input))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Secret_Input_contains)(fl_Secret_Input secret_input,fl_Widget w){+    return (static_cast<Fl_Secret_Input*>(secret_input))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Secret_Input_inside)(fl_Secret_Input secret_input,fl_Widget w){+    return (static_cast<Fl_Secret_Input*>(secret_input))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Secret_Input_redraw)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->redraw();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_redraw_label)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Secret_Input_damage)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->damage();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_clear_damage_with_bitmask)(fl_Secret_Input secret_input,uchar c){+    (static_cast<Fl_Secret_Input*>(secret_input))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Secret_Input_clear_damage)(fl_Secret_Input secret_input){+    (static_cast<Fl_Secret_Input*>(secret_input))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_damage_with_text)(fl_Secret_Input secret_input,uchar c){+    (static_cast<Fl_Secret_Input*>(secret_input))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Secret_Input_damage_inside_widget)(fl_Secret_Input secret_input,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Secret_Input*>(secret_input))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Secret_Input_draw_label_with_xywh_alignment)(fl_Secret_Input secret_input,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Secret_Input*>(secret_input))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Secret_Input_measure_label)(fl_Secret_Input secret_input,int* ww,int* hh){+    (static_cast<Fl_Secret_Input*>(secret_input))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Secret_Input_window)(fl_Secret_Input secret_input){+    return (fl_Window) (static_cast<Fl_Secret_Input*>(secret_input))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Secret_Input_top_window)(fl_Secret_Input secret_input){+    return (fl_Window) (static_cast<Fl_Secret_Input*>(secret_input))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Secret_Input_top_window_offset)(fl_Secret_Input secret_input, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Secret_Input*>(secret_input))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Secret_Input_as_group)(fl_Secret_Input secret_input){+    return (fl_Group) (static_cast<Fl_Secret_Input*>(secret_input))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Secret_Input_as_gl_window)(fl_Secret_Input secret_input){+    return (fl_Gl_Window) (static_cast<Fl_Secret_Input*>(secret_input))->as_gl_window();+  }+  /* Fl_Secret_Input specific functions */+  FL_EXPORT_C(fl_Secret_Input, Fl_Secret_Input_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Secret_Input* secret_input = new Fl_Secret_Input(x,y,w,h,label);+    return (static_cast<fl_Secret_Input>(secret_input));+  }+  FL_EXPORT_C(fl_Secret_Input, Fl_Secret_Input_New)(int x, int y, int w, int h) {+    Fl_Secret_Input* secret_input = new Fl_Secret_Input(x,y,w,h,0);+    return (static_cast<fl_Secret_Input>(secret_input));+  }+  FL_EXPORT_C(void,Fl_Secret_Input_Destroy)(fl_Secret_Input secret_input){+    delete (static_cast<Fl_Secret_Input*>(secret_input));+  }+  FL_EXPORT_C(void,Fl_Secret_Input_resize)(fl_Secret_Input secret_input,int X,int Y,int W,int H){+    (static_cast<Fl_Secret_Input*>(secret_input))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_set_value)(fl_Secret_Input secret_input,const char* text){+    return (static_cast<Fl_Secret_Input*>(secret_input))->value(text);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_set_value_with_length)(fl_Secret_Input secret_input,const char* text,int length){+    return (static_cast<Fl_Secret_Input*>(secret_input))->value(text,length);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_static_value)(fl_Secret_Input secret_input,const char* text){+    return (static_cast<Fl_Secret_Input*>(secret_input))->static_value(text);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_static_value_with_length)(fl_Secret_Input secret_input,const char* text,int length){+    return (static_cast<Fl_Secret_Input*>(secret_input))->static_value(text,length);+  }+  FL_EXPORT_C(const char*,Fl_Secret_Input_value)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->value();+  }+  FL_EXPORT_C(Fl_Char,Fl_Secret_Input_index)(fl_Secret_Input secret_input,int i){+    return (static_cast<Fl_Secret_Input*>(secret_input))->index(i);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_size)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->size();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_size)(fl_Secret_Input secret_input,int W,int H){+    (static_cast<Fl_Secret_Input*>(secret_input))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_maximum_size)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->maximum_size();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_maximum_size)(fl_Secret_Input secret_input,int m){+    (static_cast<Fl_Secret_Input*>(secret_input))->maximum_size(m);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_position)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->position();+  }+  FL_EXPORT_C(int,Fl_Secret_Input_mark)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->mark();+  }+  FL_EXPORT_C(int,Fl_Secret_Input_set_position_with_cursor_mark)(fl_Secret_Input secret_input,int p,int m){+    return (static_cast<Fl_Secret_Input*>(secret_input))->position(p,m);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_set_position_n_n)(fl_Secret_Input secret_input,int p){+    return (static_cast<Fl_Secret_Input*>(secret_input))->position(p);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_set_mark)(fl_Secret_Input secret_input,int m){+    return (static_cast<Fl_Secret_Input*>(secret_input))->mark(m);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_replace)(fl_Secret_Input secret_input,int b,int e,const char* text){+    return (static_cast<Fl_Secret_Input*>(secret_input))->replace(b,e,text);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_replace_with_ilen)(fl_Secret_Input secret_input,int b,int e,const char* text,int ilen){+    return (static_cast<Fl_Secret_Input*>(secret_input))->replace(b,e,text,ilen);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_cut)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->cut();+  }+  FL_EXPORT_C(int,Fl_Secret_Input_cut_bytes)(fl_Secret_Input secret_input,int n){+    return (static_cast<Fl_Secret_Input*>(secret_input))->cut(n);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_cut_range)(fl_Secret_Input secret_input,int a,int b){+    return (static_cast<Fl_Secret_Input*>(secret_input))->cut(a,b);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_insert)(fl_Secret_Input secret_input,const char* t){+    return (static_cast<Fl_Secret_Input*>(secret_input))->insert(t);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_insert_with_length)(fl_Secret_Input secret_input,const char* t,int l){+    return (static_cast<Fl_Secret_Input*>(secret_input))->insert(t,l);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_copy)(fl_Secret_Input secret_input,int clipboard){+    return (static_cast<Fl_Secret_Input*>(secret_input))->copy(clipboard);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_undo)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->undo();+  }+  FL_EXPORT_C(int,Fl_Secret_Input_copy_cuts)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->copy_cuts();+  }+  FL_EXPORT_C(int,Fl_Secret_Input_shortcut)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_shortcut)(fl_Secret_Input secret_input,int s){+    (static_cast<Fl_Secret_Input*>(secret_input))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Font,Fl_Secret_Input_textfont)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->textfont();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_textfont)(fl_Secret_Input secret_input,Fl_Font s){+    (static_cast<Fl_Secret_Input*>(secret_input))->textfont(s);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Secret_Input_textsize)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->textsize();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_textsize)(fl_Secret_Input secret_input,Fl_Fontsize s){+    (static_cast<Fl_Secret_Input*>(secret_input))->textsize(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_Secret_Input_textcolor)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_textcolor)(fl_Secret_Input secret_input,Fl_Color n){+    (static_cast<Fl_Secret_Input*>(secret_input))->textcolor(n);+  }+  FL_EXPORT_C(Fl_Color,Fl_Secret_Input_cursor_color)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->cursor_color();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_cursor_color)(fl_Secret_Input secret_input,Fl_Color n){+    (static_cast<Fl_Secret_Input*>(secret_input))->cursor_color(n);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_input_type)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->input_type();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_input_type)(fl_Secret_Input secret_input,int t){+    (static_cast<Fl_Secret_Input*>(secret_input))->input_type(t);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_readonly)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->readonly();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_readonly)(fl_Secret_Input secret_input,int b){+    (static_cast<Fl_Secret_Input*>(secret_input))->readonly(b);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_wrap)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->wrap();+  }+  FL_EXPORT_C(void,Fl_Secret_Input_set_wrap)(fl_Secret_Input secret_input,int b){+    (static_cast<Fl_Secret_Input*>(secret_input))->wrap(b);+  }+  FL_EXPORT_C(void,Fl_Secret_Input_tab_nav)(fl_Secret_Input secret_input,int val){+    (static_cast<Fl_Secret_Input*>(secret_input))->tab_nav(val);+  }+  FL_EXPORT_C(int,Fl_Secret_Input_set_tab_nav)(fl_Secret_Input secret_input){+    return (static_cast<Fl_Secret_Input*>(secret_input))->tab_nav();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Secret_InputC.h view
@@ -0,0 +1,150 @@+#ifndef __FL_SECRET_INPUT_C__+#define __FL_SECRET_INPUT_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Secret_Input.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Secret_Input_handle)(fl_Secret_Input self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Secret_Input_parent)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_parent)(fl_Secret_Input secret_input, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Secret_Input_type)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_type)(fl_Secret_Input secret_input, uchar t);++  FL_EXPORT_C(int,          Fl_Secret_Input_x)(fl_Secret_Input secret_input);+  FL_EXPORT_C(int,          Fl_Secret_Input_y)(fl_Secret_Input secret_input);+  FL_EXPORT_C(int,          Fl_Secret_Input_w)(fl_Secret_Input secret_input);+  FL_EXPORT_C(int,          Fl_Secret_Input_h)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_align)(fl_Secret_Input secret_input, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Secret_Input_align)(fl_Secret_Input secret_input);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Secret_Input_box)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_box)(fl_Secret_Input secret_input, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Secret_Input_color)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_color)(fl_Secret_Input secret_input, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_color_with_bg_sel)(fl_Secret_Input secret_input,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Secret_Input_selection_color)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_selection_color)(fl_Secret_Input secret_input, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Secret_Input_label)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_copy_label)(fl_Secret_Input secret_input, const char* new_label);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_label)(fl_Secret_Input secret_input, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Secret_Input_labeltype)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_labeltype)(fl_Secret_Input secret_input, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Secret_Input_labelcolor)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_labelcolor)(fl_Secret_Input secret_input, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Secret_Input_labelfont)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_labelfont)(fl_Secret_Input secret_input, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Secret_Input_labelsize)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_labelsize)(fl_Secret_Input secret_input, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Secret_Input_image)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_image)(fl_Secret_Input secret_input, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Secret_Input_deimage)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_deimage)(fl_Secret_Input secret_input, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Secret_Input_tooltip)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_copy_tooltip)(fl_Secret_Input secret_input, const char* text);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_tooltip)(fl_Secret_Input secret_input, const char* text);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_callback_with_user_data)(fl_Secret_Input secret_input, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_callback)(fl_Secret_Input secret_input, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Secret_Input_user_data)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_user_data)(fl_Secret_Input secret_input, void* v);+  FL_EXPORT_C(long,         Fl_Secret_Input_argument)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_argument)(fl_Secret_Input secret_input, long v);+  FL_EXPORT_C(Fl_When,      Fl_Secret_Input_when)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_when)(fl_Secret_Input secret_input, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Secret_Input_visible)(fl_Secret_Input secret_input);+  FL_EXPORT_C(int,          Fl_Secret_Input_visible_r)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_visible)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_clear_visible)(fl_Secret_Input secret_input);+  FL_EXPORT_C(unsigned int, Fl_Secret_Input_active)(fl_Secret_Input secret_input);+  FL_EXPORT_C(int,          Fl_Secret_Input_active_r)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_activate)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_deactivate)(fl_Secret_Input secret_input);+  FL_EXPORT_C(unsigned int, Fl_Secret_Input_output)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_output)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_clear_output)(fl_Secret_Input secret_input);+  FL_EXPORT_C(unsigned int, Fl_Secret_Input_takesevents)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_changed)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_clear_changed)(fl_Secret_Input secret_input);+  FL_EXPORT_C(int,          Fl_Secret_Input_take_focus)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_visible_focus)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_clear_visible_focus)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_modify_visible_focus)(fl_Secret_Input secret_input, int v);+  FL_EXPORT_C(unsigned int, Fl_Secret_Input_visible_focus)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_do_callback)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_do_callback_with_widget_and_user_data)(fl_Secret_Input secret_input, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Secret_Input_do_callback_with_widget_and_default_user_data)(fl_Secret_Input secret_input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Secret_Input_contains)(fl_Secret_Input secret_input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Secret_Input_inside)(fl_Secret_Input secret_input, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Secret_Input_redraw)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_redraw_label)(fl_Secret_Input secret_input);+  FL_EXPORT_C(uchar,        Fl_Secret_Input_damage)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_clear_damage_with_bitmask)(fl_Secret_Input secret_input, uchar c);+  FL_EXPORT_C(void,         Fl_Secret_Input_clear_damage)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_damage_with_text)(fl_Secret_Input secret_input, uchar c);+  FL_EXPORT_C(void,         Fl_Secret_Input_damage_inside_widget)(fl_Secret_Input secret_input, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Secret_Input_draw_label_with_xywh_alignment)(fl_Secret_Input secret_input, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Secret_Input_measure_label)(fl_Secret_Input secret_input, int* ww , int* hh);++  FL_EXPORT_C(fl_Window,    Fl_Secret_Input_window)(fl_Secret_Input secret_input);+  FL_EXPORT_C(fl_Window,    Fl_Secret_Input_top_window)(fl_Secret_Input secret_input);+  FL_EXPORT_C(fl_Window ,   Fl_Secret_Input_top_window_offset)(fl_Secret_Input secret_input, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Secret_Input_as_group)(fl_Secret_Input secret_input);+  FL_EXPORT_C(fl_Gl_Window, Fl_Secret_Input_as_gl_window)(fl_Secret_Input secret_input);+  /* Fl_Secret_Input specific functions */+  FL_EXPORT_C(int,      Fl_Secret_Input_handle)(fl_Secret_Input secret_input, int event);+  FL_EXPORT_C(fl_Float_Input, Fl_Secret_Input_New_WithLabel)(int x, int y, int w, int h, const char* label); +  FL_EXPORT_C(fl_Float_Input, Fl_Secret_Input_New)(int x, int y, int w, int h); +  FL_EXPORT_C(void,     Fl_Secret_Input_Destroy)(fl_Secret_Input secret_input);+  +  FL_EXPORT_C(void,         Fl_Secret_Input_resize)(fl_Secret_Input secret_input, int X, int Y, int W, int H);+  FL_EXPORT_C(int,          Fl_Secret_Input_set_value)(fl_Secret_Input secret_input, const char*);+  FL_EXPORT_C(int,          Fl_Secret_Input_set_value_with_length)(fl_Secret_Input secret_input, const char* text, int length);+  FL_EXPORT_C(int,          Fl_Secret_Input_static_value)(fl_Secret_Input secret_input, const char* text);+  FL_EXPORT_C(int,          Fl_Secret_Input_static_value_with_length)(fl_Secret_Input secret_input, const char* text, int length);+  FL_EXPORT_C(const char*,  Fl_Secret_Input_value)(fl_Secret_Input secret_input);+  FL_EXPORT_C(Fl_Char,      Fl_Secret_Input_index)(fl_Secret_Input secret_input, int i);+  FL_EXPORT_C(int,          Fl_Secret_Input_size)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_size)(fl_Secret_Input secret_input, int W, int H);+  FL_EXPORT_C(int,          Fl_Secret_Input_maximum_size)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_maximum_size)(fl_Secret_Input secret_input, int m);+  FL_EXPORT_C(int,          Fl_Secret_Input_position)(fl_Secret_Input secret_input);+  FL_EXPORT_C(int,          Fl_Secret_Input_mark)(fl_Secret_Input secret_input);+  FL_EXPORT_C(int,          Fl_Secret_Input_set_position_with_cursor_mark)(fl_Secret_Input secret_input,int p, int m);+  FL_EXPORT_C(int,          Fl_Secret_Input_set_position_n_n)(fl_Secret_Input secret_input,int p);+  FL_EXPORT_C(int,          Fl_Secret_Input_set_mark)(fl_Secret_Input secret_input,int m);+  FL_EXPORT_C(int,          Fl_Secret_Input_replace)(fl_Secret_Input secret_input,int b, int e, const char *text);+  FL_EXPORT_C(int,          Fl_Secret_Input_replace_with_ilen)(fl_Secret_Input secret_input,int b, int e, const char *text, int ilen);+  FL_EXPORT_C(int,          Fl_Secret_Input_cut)(fl_Secret_Input secret_input);+  FL_EXPORT_C(int,          Fl_Secret_Input_cut_bytes)(fl_Secret_Input secret_input,int n);+  FL_EXPORT_C(int,          Fl_Secret_Input_cut_range)(fl_Secret_Input secret_input,int a, int b);+  FL_EXPORT_C(int,          Fl_Secret_Input_insert)(fl_Secret_Input secret_input,const char* t);+  FL_EXPORT_C(int,          Fl_Secret_Input_insert_with_length)(fl_Secret_Input secret_input,const char* t, int l);+  FL_EXPORT_C(int,          Fl_Secret_Input_copy)(fl_Secret_Input secret_input,int clipboard);+  FL_EXPORT_C(int,          Fl_Secret_Input_undo)(fl_Secret_Input secret_input);+  FL_EXPORT_C(int,          Fl_Secret_Input_copy_cuts)(fl_Secret_Input secret_input);+  FL_EXPORT_C(int,          Fl_Secret_Input_shortcut)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_shortcut)(fl_Secret_Input secret_input,int s);+  FL_EXPORT_C(Fl_Font,      Fl_Secret_Input_textfont)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_textfont)(fl_Secret_Input secret_input,Fl_Font s);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Secret_Input_textsize)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_textsize)(fl_Secret_Input secret_input,Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color,     Fl_Secret_Input_textcolor)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_textcolor)(fl_Secret_Input secret_input,Fl_Color n);+  FL_EXPORT_C(Fl_Color,     Fl_Secret_Input_cursor_color)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_cursor_color)(fl_Secret_Input secret_input,Fl_Color n);+  FL_EXPORT_C(int,          Fl_Secret_Input_input_type)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_input_type)(fl_Secret_Input secret_input,int t);+  FL_EXPORT_C(int,          Fl_Secret_Input_readonly)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_readonly)(fl_Secret_Input secret_input,int b);+  FL_EXPORT_C(int,          Fl_Secret_Input_wrap)(fl_Secret_Input secret_input);+  FL_EXPORT_C(void,         Fl_Secret_Input_set_wrap)(fl_Secret_Input secret_input,int b);+  FL_EXPORT_C(void,         Fl_Secret_Input_tab_nav)(fl_Secret_Input secret_input,int val);+  FL_EXPORT_C(int,          Fl_Secret_Input_set_tab_nav)(fl_Secret_Input secret_input);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_SECRET_INPUT_C__*/
+ c-src/Fl_Select_BrowserC.cpp view
@@ -0,0 +1,507 @@+#include "Fl_Select_BrowserC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Select_Browser_handle)(fl_Select_Browser self, int event){+    return (static_cast<Fl_Select_Browser*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Select_Browser_parent)(fl_Select_Browser select_browser){+    return (fl_Group) (static_cast<Fl_Select_Browser*>(select_browser))->parent();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_parent)(fl_Select_Browser select_browser,fl_Group grp){+    (static_cast<Fl_Select_Browser*>(select_browser))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Select_Browser_type)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->type();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_type)(fl_Select_Browser select_browser,uchar t){+    (static_cast<Fl_Select_Browser*>(select_browser))->type(t);+  }++  FL_EXPORT_C(int,Fl_Select_Browser_x)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->x();+  }+  FL_EXPORT_C(int,Fl_Select_Browser_y)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->y();+  }+  FL_EXPORT_C(int,Fl_Select_Browser_w)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->w();+  }+  FL_EXPORT_C(int,Fl_Select_Browser_h)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->h();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_align)(fl_Select_Browser select_browser, Fl_Align alignment){+    (static_cast<Fl_Select_Browser*>(select_browser))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Select_Browser_align)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Select_Browser_box)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->box();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_box)(fl_Select_Browser select_browser,Fl_Boxtype new_box){+    (static_cast<Fl_Select_Browser*>(select_browser))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Select_Browser_color)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->color();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_color)(fl_Select_Browser select_browser,Fl_Color bg){+    (static_cast<Fl_Select_Browser*>(select_browser))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_color_with_bg_sel)(fl_Select_Browser select_browser,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Select_Browser*>(select_browser))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Select_Browser_selection_color)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_selection_color)(fl_Select_Browser select_browser,Fl_Color a){+    (static_cast<Fl_Select_Browser*>(select_browser))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Select_Browser_label)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->label();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_copy_label)(fl_Select_Browser select_browser,const char* new_label){+    (static_cast<Fl_Select_Browser*>(select_browser))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_label)(fl_Select_Browser select_browser,const char* text){+    (static_cast<Fl_Select_Browser*>(select_browser))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Select_Browser_labeltype)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_labeltype)(fl_Select_Browser select_browser,Fl_Labeltype a){+    (static_cast<Fl_Select_Browser*>(select_browser))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_labelcolor)(fl_Select_Browser select_browser,Fl_Color c){+    (static_cast<Fl_Select_Browser*>(select_browser))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Select_Browser_labelcolor)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Select_Browser_labelfont)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_labelfont)(fl_Select_Browser select_browser,Fl_Font c){+    (static_cast<Fl_Select_Browser*>(select_browser))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Select_Browser_labelsize)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_labelsize)(fl_Select_Browser select_browser,Fl_Fontsize pix){+    (static_cast<Fl_Select_Browser*>(select_browser))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Select_Browser_image)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->image();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_image)(fl_Select_Browser select_browser,fl_Image pix){+    (static_cast<Fl_Select_Browser*>(select_browser))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Select_Browser_deimage)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->deimage();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_deimage)(fl_Select_Browser select_browser,fl_Image pix){+    (static_cast<Fl_Select_Browser*>(select_browser))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Select_Browser_tooltip)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_copy_tooltip)(fl_Select_Browser select_browser,const char* text){+    (static_cast<Fl_Select_Browser*>(select_browser))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_tooltip)(fl_Select_Browser select_browser,const char* text){+    (static_cast<Fl_Select_Browser*>(select_browser))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_callback_with_user_data)(fl_Select_Browser select_browser,fl_Callback* cb,void* p){+    Fl_Select_Browser* castedWindow = (static_cast<Fl_Select_Browser*>(select_browser));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_callback)(fl_Select_Browser select_browser,fl_Callback* cb){+    Fl_Select_Browser* castedWindow = (static_cast<Fl_Select_Browser*>(select_browser));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Select_Browser_user_data)(fl_Select_Browser select_browser){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Select_Browser*>(select_browser))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Select_Browser*>(select_browser))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_user_data)(fl_Select_Browser select_browser,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Select_Browser*>(select_browser))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Select_Browser*>(select_browser))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Select_Browser*>(select_browser))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Select_Browser_argument)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->argument();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_argument)(fl_Select_Browser select_browser,long v){+    (static_cast<Fl_Select_Browser*>(select_browser))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Select_Browser_when)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->when();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_when)(fl_Select_Browser select_browser,uchar i){+    (static_cast<Fl_Select_Browser*>(select_browser))->when(i);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_visible_r)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_show_super)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->show();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_hide_super)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->hide();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_clear_visible)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Select_Browser_active)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->active();+  }+  FL_EXPORT_C(int,Fl_Select_Browser_active_r)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->active_r();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_activate)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->activate();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_deactivate)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Select_Browser_output)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->output();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_output)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->output();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_clear_output)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Select_Browser_takesevents)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_changed)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->changed();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_clear_changed)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Select_Browser_take_focus)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_visible_focus)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_clear_visible_focus)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_modify_visible_focus)(fl_Select_Browser select_browser,int v){+    (static_cast<Fl_Select_Browser*>(select_browser))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Select_Browser_visible_focus)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_Select_Browser_contains)(fl_Select_Browser select_browser,fl_Widget w){+    return (static_cast<Fl_Select_Browser*>(select_browser))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Select_Browser_inside)(fl_Select_Browser select_browser,fl_Widget w){+    return (static_cast<Fl_Select_Browser*>(select_browser))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Select_Browser_redraw)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->redraw();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_redraw_label)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Select_Browser_damage)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->damage();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_clear_damage_with_bitmask)(fl_Select_Browser select_browser,uchar c){+    (static_cast<Fl_Select_Browser*>(select_browser))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_clear_damage)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_damage_with_text)(fl_Select_Browser select_browser,uchar c){+    (static_cast<Fl_Select_Browser*>(select_browser))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_damage_inside_widget)(fl_Select_Browser select_browser,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Select_Browser*>(select_browser))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_draw_label_with_xywh_alignment)(fl_Select_Browser select_browser,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Select_Browser*>(select_browser))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_measure_label)(fl_Select_Browser select_browser,int* ww,int* hh){+    (static_cast<Fl_Select_Browser*>(select_browser))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Select_Browser_window)(fl_Select_Browser select_browser){+    return (fl_Window) (static_cast<Fl_Select_Browser*>(select_browser))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Select_Browser_top_window)(fl_Select_Browser select_browser){+    return (fl_Window) (static_cast<Fl_Select_Browser*>(select_browser))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Select_Browser_top_window_offset)(fl_Select_Browser select_browser, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Select_Browser*>(select_browser))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Select_Browser_as_group_super)(fl_Select_Browser select_browser){+    return (fl_Group) (static_cast<Fl_Select_Browser*>(select_browser))->as_group();+  }+  FL_EXPORT_C(fl_Group,Fl_Select_Browser_as_group)(fl_Select_Browser select_browser){+    return (fl_Group) (static_cast<Fl_Select_Browser*>(select_browser))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Select_Browser_as_gl_window_super)(fl_Select_Browser select_browser){+    return (fl_Gl_Window) (static_cast<Fl_Select_Browser*>(select_browser))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Select_Browser_as_gl_window)(fl_Select_Browser select_browser){+    return (fl_Gl_Window) (static_cast<Fl_Select_Browser*>(select_browser))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_resizable_by_reference)(fl_Select_Browser select_browser,fl_Widget o){+    (static_cast<Fl_Select_Browser*>(select_browser))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_resizable)(fl_Select_Browser select_browser,fl_Widget o){+    (static_cast<Fl_Select_Browser*>(select_browser))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Select_Browser_resizable)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->resizable();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_add_resizable)(fl_Select_Browser select_browser,fl_Widget o){+    (static_cast<Fl_Select_Browser*>(select_browser))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_clip_children)(fl_Select_Browser select_browser,int c){+    (static_cast<Fl_Select_Browser*>(select_browser))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Select_Browser_clip_children)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_focus)(fl_Select_Browser select_browser, fl_Widget W){+    (static_cast<Fl_Select_Browser*>(select_browser))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Select_Browser__ddfdesign_kludge)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->_ddfdesign_kludge();+  }+  // FL_EXPORT_C(void,Fl_Select_Browser_forms_end)(fl_Select_Browser self){+  //   (static_cast<Fl_Select_Browser*>(self))->forms_end();+  // }++  FL_EXPORT_C(fl_Select_Browser, Fl_Select_Browser_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Select_Browser* select_browser = new Fl_Select_Browser(x,y,w,h,label);+    return (static_cast<fl_Select_Browser>(select_browser));+  }+  FL_EXPORT_C(fl_Select_Browser, Fl_Select_Browser_New)(int x, int y, int w, int h) {+    Fl_Select_Browser* select_browser = new Fl_Select_Browser(x,y,w,h,0);+    return (fl_Select_Browser)select_browser;+  }+  FL_EXPORT_C(void,Fl_Select_Browser_Destroy)(fl_Select_Browser select_browser){+    delete (static_cast<Fl_Select_Browser*>(select_browser));+  }+  FL_EXPORT_C(void,Fl_Select_Browser_remove)(fl_Select_Browser select_browser,int line){+    (static_cast<Fl_Select_Browser*>(select_browser))->remove(line);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_add)(fl_Select_Browser select_browser,const char* newtext){+    (static_cast<Fl_Select_Browser*>(select_browser))->add(newtext);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_add_with_d)(fl_Select_Browser select_browser,const char* newtext,void* d){+    (static_cast<Fl_Select_Browser*>(select_browser))->add(newtext,d);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_insert)(fl_Select_Browser select_browser,int line,const char* newtext){+    (static_cast<Fl_Select_Browser*>(select_browser))->insert(line,newtext);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_insert_with_d)(fl_Select_Browser select_browser,int line,const char* newtext,void* d){+    (static_cast<Fl_Select_Browser*>(select_browser))->insert(line,newtext,d);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_move)(fl_Select_Browser select_browser,int to,int from){+    (static_cast<Fl_Select_Browser*>(select_browser))->move(to,from);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_load)(fl_Select_Browser select_browser,const char* filename){+    return (static_cast<Fl_Select_Browser*>(select_browser))->load(filename);+  }+  FL_EXPORT_C(void, Fl_Select_Browser_swap)(fl_Select_Browser select_browser, int a, int b){+    (static_cast<Fl_Select_Browser*>(select_browser))->swap(a,b);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_clear)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->clear();+  }+  FL_EXPORT_C(int,Fl_Select_Browser_size)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->size();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_size)(fl_Select_Browser select_browser,int W,int H){+    (static_cast<Fl_Select_Browser*>(select_browser))->size(W,H);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_topline)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->topline();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_lineposition)(fl_Select_Browser select_browser,int line,Fl_Line_Position pos){+    Fl_Select_Browser::Fl_Line_Position p = (Fl_Select_Browser::Fl_Line_Position)-1;+    switch(p){+    case TOP :    {p = Fl_Select_Browser::TOP; break;}+    case BOTTOM : {p = Fl_Select_Browser::BOTTOM; break;}+    case MIDDLE : {p = Fl_Select_Browser::MIDDLE; break;}+    default:      {p = (Fl_Select_Browser::Fl_Line_Position)-1; break;}+    }+    return (static_cast<Fl_Select_Browser*>(select_browser))->lineposition(line,p);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_topline)(fl_Select_Browser select_browser,int line){+    (static_cast<Fl_Select_Browser*>(select_browser))->topline(line);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_bottomline)(fl_Select_Browser select_browser,int line){+    (static_cast<Fl_Select_Browser*>(select_browser))->bottomline(line);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_middleline)(fl_Select_Browser select_browser,int line){+    (static_cast<Fl_Select_Browser*>(select_browser))->middleline(line);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_select)(fl_Select_Browser select_browser,int line){+    return (static_cast<Fl_Select_Browser*>(select_browser))->select(line);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_select_with_val)(fl_Select_Browser select_browser,int line,int val){+    return (static_cast<Fl_Select_Browser*>(select_browser))->select(line,val);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_selected)(fl_Select_Browser select_browser,int line){+    return (static_cast<Fl_Select_Browser*>(select_browser))->selected(line);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_show_with_line)(fl_Select_Browser select_browser,int line){+    (static_cast<Fl_Select_Browser*>(select_browser))->show(line);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_show)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->show();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_hide_with_line)(fl_Select_Browser select_browser,int line){+    (static_cast<Fl_Select_Browser*>(select_browser))->hide(line);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_hide)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->hide();+  }+  FL_EXPORT_C(int,Fl_Select_Browser_visible)(fl_Select_Browser select_browser,int line){+    return (static_cast<Fl_Select_Browser*>(select_browser))->visible(line);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_value)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->value();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_value)(fl_Select_Browser select_browser,int line){+    (static_cast<Fl_Select_Browser*>(select_browser))->value(line);+  }+  FL_EXPORT_C(const char*,Fl_Select_Browser_text)(fl_Select_Browser select_browser,int line){+    return (static_cast<Fl_Select_Browser*>(select_browser))->text(line);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_text)(fl_Select_Browser select_browser,int line,const char* newtext){+    (static_cast<Fl_Select_Browser*>(select_browser))->text(line,newtext);+  }+  FL_EXPORT_C(void*,Fl_Select_Browser_data)(fl_Select_Browser select_browser,int line){+    return (static_cast<Fl_Select_Browser*>(select_browser))->data(line);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_data)(fl_Select_Browser select_browser,int line,void* d){+    (static_cast<Fl_Select_Browser*>(select_browser))->data(line,d);+  }+  FL_EXPORT_C(char,Fl_Select_Browser_format_char)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->format_char();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_format_char)(fl_Select_Browser select_browser,char c){+    (static_cast<Fl_Select_Browser*>(select_browser))->format_char(c);+  }+  FL_EXPORT_C(char,Fl_Select_Browser_column_char)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->column_char();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_column_char)(fl_Select_Browser select_browser,char c){+    (static_cast<Fl_Select_Browser*>(select_browser))->column_char(c);+  }+  FL_EXPORT_C(const int*,Fl_Select_Browser_column_widths)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->column_widths();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_column_widths)(fl_Select_Browser select_browser,const int* arr){+    (static_cast<Fl_Select_Browser*>(select_browser))->column_widths(arr);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_displayed)(fl_Select_Browser select_browser,int line){+    return (static_cast<Fl_Select_Browser*>(select_browser))->displayed(line);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_make_visible)(fl_Select_Browser select_browser,int line){+    (static_cast<Fl_Select_Browser*>(select_browser))->make_visible(line);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_icon)(fl_Select_Browser select_browser,int line,fl_Image icon){+    (static_cast<Fl_Select_Browser*>(select_browser))->icon(line,(static_cast<Fl_Image*>(icon)));+  }+  FL_EXPORT_C(fl_Image,Fl_Select_Browser_icon)(fl_Select_Browser select_browser,int line){+    return (fl_Image)(static_cast<Fl_Select_Browser*>(select_browser))->icon(line);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_remove_icon)(fl_Select_Browser select_browser,int line){+    (static_cast<Fl_Select_Browser*>(select_browser))->remove_icon(line);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_select_only)(fl_Select_Browser select_browser,void *item){+    return (static_cast<Fl_Select_Browser*>(select_browser))->select_only(item);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_select_only_with_docallbacks)(fl_Select_Browser select_browser,void *item,int docallbacks){+    return (static_cast<Fl_Select_Browser*>(select_browser))->select_only(item,docallbacks);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_deselect)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->deselect();+  }+  FL_EXPORT_C(int,Fl_Select_Browser_deselect_with_docallbacks)(fl_Select_Browser select_browser,int docallbacks){+    return (static_cast<Fl_Select_Browser*>(select_browser))->deselect(docallbacks);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_position)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->position();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_position)(fl_Select_Browser select_browser,int pos){+    (static_cast<Fl_Select_Browser*>(select_browser))->position(pos);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_hposition)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->hposition();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_hposition)(fl_Select_Browser select_browser,int ){+    (static_cast<Fl_Select_Browser*>(select_browser))->hposition();+  }+  FL_EXPORT_C(uchar,Fl_Select_Browser_has_scrollbar)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->has_scrollbar();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_has_scrollbar)(fl_Select_Browser select_browser,uchar mode){+    (static_cast<Fl_Select_Browser*>(select_browser))->has_scrollbar(mode);+  }+  FL_EXPORT_C(Fl_Font,Fl_Select_Browser_textfont)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->textfont();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_textfont)(fl_Select_Browser select_browser,Fl_Font font){+    (static_cast<Fl_Select_Browser*>(select_browser))->textfont(font);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Select_Browser_textsize)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->textsize();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_textsize)(fl_Select_Browser select_browser,Fl_Fontsize newSize){+    (static_cast<Fl_Select_Browser*>(select_browser))->textsize(newSize);+  }+  FL_EXPORT_C(Fl_Color,Fl_Select_Browser_textcolor)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_textcolor)(fl_Select_Browser select_browser,Fl_Color col){+    (static_cast<Fl_Select_Browser*>(select_browser))->textcolor(col);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_scrollbar_size)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->scrollbar_size();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_scrollbar_size)(fl_Select_Browser select_browser,int newSize){+    (static_cast<Fl_Select_Browser*>(select_browser))->scrollbar_size(newSize);+  }+  FL_EXPORT_C(int,Fl_Select_Browser_scrollbar_width)(fl_Select_Browser select_browser){+    return (static_cast<Fl_Select_Browser*>(select_browser))->scrollbar_width();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_scrollbar_width)(fl_Select_Browser select_browser,int width){+    (static_cast<Fl_Select_Browser*>(select_browser))->scrollbar_width(width);+  }+  FL_EXPORT_C(void,Fl_Select_Browser_scrollbar_right)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->scrollbar_right();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_set_scrollbar_left)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->scrollbar_left();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_sort)(fl_Select_Browser select_browser){+    (static_cast<Fl_Select_Browser*>(select_browser))->sort();+  }+  FL_EXPORT_C(void,Fl_Select_Browser_sort_with_flags)(fl_Select_Browser select_browser,int flags){+    (static_cast<Fl_Select_Browser*>(select_browser))->sort(flags);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Select_BrowserC.h view
@@ -0,0 +1,201 @@+#ifndef __FL_SELECT_BROWSER_C__+#define __FL_SELECT_BROWSER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Select_Browser.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif++  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int ,         Fl_Select_Browser_handle_super)(fl_Select_Browser select_browser,int event);+  FL_EXPORT_C(int ,         Fl_Select_Browser_handle )(fl_Select_Browser select_browser,int event);+  FL_EXPORT_C(void,         Fl_Select_Browser_resize_super)(fl_Select_Browser select_browser,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Select_Browser_resize )(fl_Select_Browser select_browser,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Select_Browser_show_super)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_show )(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_hide_super)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_hide )(fl_Select_Browser select_browser);+  FL_EXPORT_C(fl_Window,    Fl_Select_Browser_as_window_super)(fl_Select_Browser select_browser);+  FL_EXPORT_C(fl_Window,    Fl_Select_Browser_as_window )(fl_Select_Browser select_browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Select_Browser_as_gl_window_super)(fl_Select_Browser select_browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Select_Browser_as_gl_window)(fl_Select_Browser select_browser);+  FL_EXPORT_C(fl_Group,     Fl_Select_Browser_parent)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_parent)(fl_Select_Browser select_browser, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Select_Browser_type)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_type)(fl_Select_Browser select_browser, uchar t);++  FL_EXPORT_C(int,          Fl_Select_Browser_x)(fl_Select_Browser select_browser);+  FL_EXPORT_C(int,          Fl_Select_Browser_y)(fl_Select_Browser select_browser);+  FL_EXPORT_C(int,          Fl_Select_Browser_w)(fl_Select_Browser select_browser);+  FL_EXPORT_C(int,          Fl_Select_Browser_h)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_align)(fl_Select_Browser select_browser, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Select_Browser_align)(fl_Select_Browser select_browser);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Select_Browser_box)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_box)(fl_Select_Browser select_browser, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Select_Browser_color)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_color)(fl_Select_Browser select_browser, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_color_with_bg_sel)(fl_Select_Browser select_browser,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Select_Browser_selection_color)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_selection_color)(fl_Select_Browser select_browser, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Select_Browser_label)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_copy_label)(fl_Select_Browser select_browser, const char* new_label);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_label)(fl_Select_Browser select_browser, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Select_Browser_labeltype)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_labeltype)(fl_Select_Browser select_browser, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Select_Browser_labelcolor)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_labelcolor)(fl_Select_Browser select_browser, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Select_Browser_labelfont)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_labelfont)(fl_Select_Browser select_browser, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Select_Browser_labelsize)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_labelsize)(fl_Select_Browser select_browser, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Select_Browser_image)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_image)(fl_Select_Browser select_browser, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Select_Browser_deimage)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_deimage)(fl_Select_Browser select_browser, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Select_Browser_tooltip)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_copy_tooltip)(fl_Select_Browser select_browser, const char* text);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_tooltip)(fl_Select_Browser select_browser, const char* text);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_callback_with_user_data)(fl_Select_Browser select_browser, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_callback)(fl_Select_Browser select_browser, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Select_Browser_user_data)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_user_data)(fl_Select_Browser select_browser, void* v);+  FL_EXPORT_C(long,         Fl_Select_Browser_argument)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_argument)(fl_Select_Browser select_browser, long v);+  FL_EXPORT_C(Fl_When,      Fl_Select_Browser_when)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_when)(fl_Select_Browser select_browser, uchar i);+  FL_EXPORT_C(int,          Fl_Select_Browser_visible_r)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_visible)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_clear_visible)(fl_Select_Browser select_browser);+  FL_EXPORT_C(unsigned int, Fl_Select_Browser_active)(fl_Select_Browser select_browser);+  FL_EXPORT_C(int,          Fl_Select_Browser_active_r)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_activate)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_deactivate)(fl_Select_Browser select_browser);+  FL_EXPORT_C(unsigned int, Fl_Select_Browser_output)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_output)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_clear_output)(fl_Select_Browser select_browser);+  FL_EXPORT_C(unsigned int, Fl_Select_Browser_takesevents)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_changed)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_clear_changed)(fl_Select_Browser select_browser);+  FL_EXPORT_C(int,          Fl_Select_Browser_take_focus)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_visible_focus)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_clear_visible_focus)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_modify_visible_focus)(fl_Select_Browser select_browser, int v);+  FL_EXPORT_C(unsigned int, Fl_Select_Browser_visible_focus)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_do_callback)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_do_callback_with_widget_and_user_data)(fl_Select_Browser select_browser, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Select_Browser_do_callback_with_widget_and_default_user_data)(fl_Select_Browser select_browser, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Select_Browser_contains)(fl_Select_Browser select_browser, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Select_Browser_inside)(fl_Select_Browser select_browser, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Select_Browser_redraw)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_redraw_label)(fl_Select_Browser select_browser);+  FL_EXPORT_C(uchar,        Fl_Select_Browser_damage)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_clear_damage_with_bitmask)(fl_Select_Browser select_browser, uchar c);+  FL_EXPORT_C(void,         Fl_Select_Browser_clear_damage)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,         Fl_Select_Browser_damage_with_text)(fl_Select_Browser select_browser, uchar c);+  FL_EXPORT_C(void,         Fl_Select_Browser_damage_inside_widget)(fl_Select_Browser select_browser, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Select_Browser_draw_label_with_xywh_alignment)(fl_Select_Browser select_browser, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Select_Browser_measure_label)(fl_Select_Browser select_browser, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Select_Browser_window)(fl_Select_Browser select_browser);+  FL_EXPORT_C(fl_Window,    Fl_Select_Browser_top_window)(fl_Select_Browser select_browser);+  FL_EXPORT_C(fl_Window ,   Fl_Select_Browser_top_window_offset)(fl_Select_Browser select_browser, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Select_Browser_as_group)(fl_Select_Browser select_browser);+  FL_EXPORT_C(fl_Gl_Window, Fl_Select_Browser_as_gl_window)(fl_Select_Browser select_browser);+  /* Inherited from Fl_Group */+  FL_EXPORT_C(void,         Fl_Select_Browser_begin)(fl_Select_Browser self);+  FL_EXPORT_C(void,         Fl_Select_Browser_end)(fl_Select_Browser self);+  FL_EXPORT_C(int,          Fl_Select_Browser_find)(fl_Select_Browser self, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Select_Browser_remove_index)(fl_Select_Browser self, int index);+  FL_EXPORT_C(void,         Fl_Select_Browser_remove_widget)(fl_Select_Browser self, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Select_Browser_clear)(fl_Select_Browser self);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_resizable_by_reference)(fl_Select_Browser self,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_resizable)(fl_Select_Browser self,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Select_Browser_resizable)(fl_Select_Browser self);+  FL_EXPORT_C(void,         Fl_Select_Browser_add_resizable)(fl_Select_Browser self,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Select_Browser_init_sizes)(fl_Select_Browser self);+  FL_EXPORT_C(int,          Fl_Select_Browser_children)(fl_Select_Browser self);+  FL_EXPORT_C(void,         Fl_Select_Browser_set_clip_children)(fl_Select_Browser self,int c);+  FL_EXPORT_C(unsigned int, Fl_Select_Browser_clip_children)(fl_Select_Browser self);+  FL_EXPORT_C(void,         Fl_Select_Browser_focus)(fl_Select_Browser self,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Select_Browser__ddfdesign_kludge)(fl_Select_Browser self);+  FL_EXPORT_C(void,         Fl_Select_Browser_insert_with_before)(fl_Select_Browser self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Select_Browser_array)(fl_Select_Browser self);+  FL_EXPORT_C(fl_Widget,    Fl_Select_Browser_child)(fl_Select_Browser self, int n);+  FL_EXPORT_C(void,         Fl_Select_Browser_forms_end)(fl_Select_Browser self);++  /* Fl_Select_Browser specific functions */+  FL_EXPORT_C(fl_Select_Browser, Fl_Select_Browser_New_WithLabel)(int x, int y, int w, int h, const char* label); +  FL_EXPORT_C(fl_Select_Browser, Fl_Select_Browser_New)(int x, int y, int w, int h); +  FL_EXPORT_C(void,Fl_Select_Browser_Destroy)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void,Fl_Select_Browser_remove)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(void, Fl_Select_Browser_add)(fl_Select_Browser select_browser, const char* newtext);+  FL_EXPORT_C(void, Fl_Select_Browser_add_with_d)(fl_Select_Browser select_browser, const char* newtext, void* d);+  FL_EXPORT_C(void, Fl_Select_Browser_insert)(fl_Select_Browser select_browser, int line, const char* newtext);+  FL_EXPORT_C(void, Fl_Select_Browser_insert_with_d)(fl_Select_Browser select_browser, int line, const char* newtext, void* d);+  FL_EXPORT_C(void, Fl_Select_Browser_move)(fl_Select_Browser select_browser, int to, int from);+  FL_EXPORT_C(int , Fl_Select_Browser_load)(fl_Select_Browser select_browser, const char* filename);+  FL_EXPORT_C(void, Fl_Select_Browser_swap)(fl_Select_Browser select_browser, int a, int b);+  FL_EXPORT_C(void, Fl_Select_Browser_clear)(fl_Select_Browser select_browser);+  FL_EXPORT_C(int, Fl_Select_Browser_size)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void, Fl_Select_Browser_set_size)(fl_Select_Browser select_browser, int W, int H);+  FL_EXPORT_C(int, Fl_Select_Browser_topline)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void, Fl_Select_Browser_lineposition)(fl_Select_Browser select_browser, int line, Fl_Line_Position pos);+  FL_EXPORT_C(void, Fl_Select_Browser_set_topline)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(void, Fl_Select_Browser_bottomline)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(void, Fl_Select_Browser_middleline)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(int, Fl_Select_Browser_select)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(int, Fl_Select_Browser_select_with_val)(fl_Select_Browser select_browser, int line, int val);+  FL_EXPORT_C(int, Fl_Select_Browser_selected)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(void, Fl_Select_Browser_show_with_line)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(void, Fl_Select_Browser_show)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void, Fl_Select_Browser_hide_with_line)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(void, Fl_Select_Browser_hide)(fl_Select_Browser select_browser);+  FL_EXPORT_C(int, Fl_Select_Browser_visible)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(int, Fl_Select_Browser_value)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void, Fl_Select_Browser_set_value)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(const char*, Fl_Select_Browser_text)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(void, Fl_Select_Browser_set_text)(fl_Select_Browser select_browser, int line, const char* newtext);+  FL_EXPORT_C(void*, Fl_Select_Browser_data)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(void, Fl_Select_Browser_set_data)(fl_Select_Browser select_browser, int line, void* d);+  FL_EXPORT_C(char, Fl_Select_Browser_format_char)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void, Fl_Select_Browser_set_format_char)(fl_Select_Browser select_browser, char c);+  FL_EXPORT_C(char, Fl_Select_Browser_column_char)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void, Fl_Select_Browser_set_column_char)(fl_Select_Browser select_browser, char c);+  FL_EXPORT_C(const int*, Fl_Select_Browser_column_widths)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void, Fl_Select_Browser_set_column_widths)(fl_Select_Browser select_browser, const int* arr);+  FL_EXPORT_C(int, Fl_Select_Browser_displayed)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(void, Fl_Select_Browser_make_visible)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(void, Fl_Select_Browser_set_icon)(fl_Select_Browser select_browser, int line, fl_Image icon);+  FL_EXPORT_C(fl_Image, Fl_Select_Browser_icon)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(void, Fl_Select_Browser_remove_icon)(fl_Select_Browser select_browser, int line);+  FL_EXPORT_C(int, Fl_Select_Browser_select_only)(fl_Select_Browser select_browser,void *item);+  FL_EXPORT_C(int, Fl_Select_Browser_select_only_with_docallbacks)(fl_Select_Browser select_browser,void *item,int docallbacks);+  FL_EXPORT_C(int, Fl_Select_Browser_deselect)(fl_Select_Browser select_browser);+  FL_EXPORT_C(int, Fl_Select_Browser_deselect_with_docallbacks)(fl_Select_Browser select_browser,int docallbacks);+  FL_EXPORT_C(int, Fl_Select_Browser_position)(fl_Select_Browser select_browser); +  FL_EXPORT_C(void, Fl_Select_Browser_set_position)(fl_Select_Browser select_browser,int pos); // scroll to here+  FL_EXPORT_C(int, Fl_Select_Browser_hposition)(fl_Select_Browser select_browser); +  FL_EXPORT_C(void, Fl_Select_Browser_set_hposition)(fl_Select_Browser select_browser,int); // pan to here+  FL_EXPORT_C(uchar, Fl_Select_Browser_has_scrollbar)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void, Fl_Select_Browser_set_has_scrollbar)(fl_Select_Browser select_browser,uchar mode); +  FL_EXPORT_C(Fl_Font, Fl_Select_Browser_textfont)(fl_Select_Browser select_browser); +  FL_EXPORT_C(void, Fl_Select_Browser_set_textfont)(fl_Select_Browser select_browser,Fl_Font font); +  FL_EXPORT_C(Fl_Fontsize, Fl_Select_Browser_textsize)(fl_Select_Browser select_browser);  +  FL_EXPORT_C(void, Fl_Select_Browser_set_textsize)(fl_Select_Browser select_browser,Fl_Fontsize newSize); +  FL_EXPORT_C(Fl_Color, Fl_Select_Browser_textcolor)(fl_Select_Browser select_browser); +  FL_EXPORT_C(void, Fl_Select_Browser_set_textcolor)(fl_Select_Browser select_browser,Fl_Color col); +  FL_EXPORT_C(int, Fl_Select_Browser_scrollbar_size)(fl_Select_Browser select_browser); +  FL_EXPORT_C(void, Fl_Select_Browser_set_scrollbar_size)(fl_Select_Browser select_browser,int newSize); +  FL_EXPORT_C(int, Fl_Select_Browser_scrollbar_width)(fl_Select_Browser select_browser); +  FL_EXPORT_C(void, Fl_Select_Browser_set_scrollbar_width)(fl_Select_Browser select_browser,int width); +  FL_EXPORT_C(void, Fl_Select_Browser_scrollbar_right)(fl_Select_Browser select_browser); +  FL_EXPORT_C(void, Fl_Select_Browser_set_scrollbar_left)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void, Fl_Select_Browser_sort)(fl_Select_Browser select_browser);+  FL_EXPORT_C(void, Fl_Select_Browser_sort_with_flags)(fl_Select_Browser select_browser,int flags);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_SELECT_BROWSER_C__*/
+ c-src/Fl_Shared_ImageC.cpp view
@@ -0,0 +1,103 @@+#include "Fl_Shared_ImageC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Shared_Image_w)(fl_Shared_Image shared_image){+    return (static_cast<DerivedShared_Image*>(shared_image))->w();+  }+  FL_EXPORT_C(int,Fl_Shared_Image_h)(fl_Shared_Image shared_image){+    return (static_cast<DerivedShared_Image*>(shared_image))->h();+  }+  FL_EXPORT_C(int,Fl_Shared_Image_d)(fl_Shared_Image shared_image){+    return (static_cast<DerivedShared_Image*>(shared_image))->d();+  }+  FL_EXPORT_C(int,Fl_Shared_Image_ld)(fl_Shared_Image shared_image){+    return (static_cast<DerivedShared_Image*>(shared_image))->ld();+  }+  FL_EXPORT_C(int,Fl_Shared_Image_count)(fl_Shared_Image shared_image){+    return (static_cast<DerivedShared_Image*>(shared_image))->count();+  }+  FL_EXPORT_C(fl_Image,Fl_Shared_Image_copy_with_w_h)(fl_Shared_Image shared_image,int W,int H){+    return (fl_Image)(static_cast<DerivedShared_Image*>(shared_image))->copy(W,H);+  }+  FL_EXPORT_C(void,Fl_Shared_Image_inactive)(fl_Shared_Image shared_image){+    return (static_cast<DerivedShared_Image*>(shared_image))->inactive();+  }+  FL_EXPORT_C(void,Fl_Shared_Image_label)(fl_Shared_Image shared_image,fl_Widget w){+    return (static_cast<DerivedShared_Image*>(shared_image))->label((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Shared_Image_label_with_menu_item)(fl_Shared_Image shared_image,fl_Menu_Item m){+    return (static_cast<DerivedShared_Image*>(shared_image))->label((static_cast<Fl_Menu_Item*>(m)));+  }+  FL_EXPORT_C(const char*,Fl_Shared_Image_name)(fl_Shared_Image shared_image){+    return (static_cast<DerivedShared_Image*>(shared_image))->name();+  }+  FL_EXPORT_C(int,Fl_Shared_Image_refcount)(fl_Shared_Image shared_image){+    return (static_cast<DerivedShared_Image*>(shared_image))->refcount();+  }+  FL_EXPORT_C(void,Fl_Shared_Image_release)(fl_Shared_Image shared_image){+    (static_cast<DerivedShared_Image*>(shared_image))->release();+  }+  FL_EXPORT_C(void,Fl_Shared_Image_reload)(fl_Shared_Image shared_image){+    (static_cast<DerivedShared_Image*>(shared_image))->reload();+  }+  FL_EXPORT_C(fl_Image,Fl_Shared_Image_copy_with_WH)(fl_Shared_Image shared_image, int W,int H){+    return (fl_Image)(static_cast<DerivedShared_Image*>(shared_image))->copy(W,H);+  }+  FL_EXPORT_C(fl_Image,Fl_Shared_Image_copy)(fl_Shared_Image shared_image){+    return (fl_Image)(static_cast<DerivedShared_Image*>(shared_image))->copy();+  }+  FL_EXPORT_C(void,Fl_Shared_Image_color_average)(fl_Shared_Image shared_image,Fl_Color c,float i){+    (static_cast<DerivedShared_Image*>(shared_image))->color_average(c,i);+  }+  FL_EXPORT_C(void,Fl_Shared_Image_desaturate)(fl_Shared_Image shared_image){+    (static_cast<DerivedShared_Image*>(shared_image))->desaturate();+  }+  FL_EXPORT_C(void,Fl_Shared_Image_draw_with_WHcxcy)(fl_Shared_Image shared_image,int X,int Y,int W,int H,int cx,int cy){+    (static_cast<DerivedShared_Image*>(shared_image))->draw(X,Y,W,H,cx,cy);+  }+  FL_EXPORT_C(void,Fl_Shared_Image_draw)(fl_Shared_Image shared_image,int X,int Y){+    (static_cast<DerivedShared_Image*>(shared_image))->draw(X,Y);+  }+  FL_EXPORT_C(void,Fl_Shared_Image_uncache)(fl_Shared_Image shared_image){+    (static_cast<DerivedShared_Image*>(shared_image))->uncache();+  }+  FL_EXPORT_C(fl_Shared_Image,Fl_Shared_Image_find)(const char* n){+    return (fl_Shared_Image)DerivedShared_Image::find(n);+  }+  FL_EXPORT_C(fl_Shared_Image,Fl_Shared_Image_find_W)(const char* n,int W){+    return (fl_Shared_Image)DerivedShared_Image::find(n,W);+  }+  FL_EXPORT_C(fl_Shared_Image,Fl_Shared_Image_find_H)(const char* n,int H){+    return (fl_Shared_Image)DerivedShared_Image::find(n,0,H);+  }+  FL_EXPORT_C(fl_Shared_Image,Fl_Shared_Image_find_WH)(const char* n,int W,int H){+    return (fl_Shared_Image)DerivedShared_Image::find(n,W,H);+  }+  FL_EXPORT_C(fl_Shared_Image,Fl_Shared_Image_get)(const char* n){+    return (fl_Shared_Image)DerivedShared_Image::get(n);+  }+  FL_EXPORT_C(fl_Shared_Image,Fl_Shared_Image_get_W)(const char* n,int W){+    return (fl_Shared_Image)DerivedShared_Image::get(n,W);+  }+  FL_EXPORT_C(fl_Shared_Image,Fl_Shared_Image_get_H)(const char* n,int H){+    return (fl_Shared_Image)DerivedShared_Image::get(n,0,H);+  }+  FL_EXPORT_C(fl_Shared_Image,Fl_Shared_Image_get_WH)(const char* n,int W,int H){+    return (fl_Shared_Image)DerivedShared_Image::get(n,W,H);+  }+  FL_EXPORT_C(fl_Shared_Image*,Fl_Shared_Image_images)(){+    return (fl_Shared_Image*)DerivedShared_Image::images();+  }+  FL_EXPORT_C(int,Fl_Shared_Image_num_images)( ){+    return DerivedShared_Image::num_images();+  }+  FL_EXPORT_C(void,Fl_Shared_Image_add_handler)(fl_Shared_Image_Handler f){+    DerivedShared_Image::add_handler(f);+  }+  FL_EXPORT_C(void,Fl_Shared_Image_remove_handler)(fl_Shared_Image_Handler f){+    DerivedShared_Image::remove_handler(f);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Shared_ImageC.h view
@@ -0,0 +1,51 @@+#ifndef __FL_SHARED_IMAGE_C__+#define __FL_SHARED_IMAGE_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "DerivedShared_Image.h"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(int, Fl_Shared_Image_w)(fl_Shared_Image shared_image);+  FL_EXPORT_C(int, Fl_Shared_Image_h)(fl_Shared_Image shared_image);+  FL_EXPORT_C(int, Fl_Shared_Image_d)(fl_Shared_Image shared_image);+  FL_EXPORT_C(int, Fl_Shared_Image_ld)(fl_Shared_Image shared_image);+  FL_EXPORT_C(int, Fl_Shared_Image_count)(fl_Shared_Image shared_image);+  FL_EXPORT_C(fl_Shared_Image, Fl_Shared_Image_copy_with_w_h)(fl_Shared_Image shared_image,int W, int H);+  FL_EXPORT_C(fl_Shared_Image, Fl_Shared_Image_copy)(fl_Shared_Image shared_image);+  FL_EXPORT_C(void, Fl_Shared_Image_color_average)(fl_Shared_Image shared_image,Fl_Color c, float i);+  FL_EXPORT_C(void, Fl_Shared_Image_inactive)(fl_Shared_Image shared_image);+  FL_EXPORT_C(void, Fl_Shared_Image_desaturate)(fl_Shared_Image shared_image);+  FL_EXPORT_C(void, Fl_Shared_Image_label)(fl_Shared_Image shared_image,fl_Widget w);+  FL_EXPORT_C(void, Fl_Shared_Image_label_with_menu_item)(fl_Shared_Image shared_image,fl_Menu_Item m);+  FL_EXPORT_C(void, Fl_Shared_Image_uncache)(fl_Shared_Image shared_image);+  FL_EXPORT_C(const char*, Fl_Shared_Image_name)(fl_Shared_Image shared_image);+  FL_EXPORT_C(int, Fl_Shared_Image_refcount)(fl_Shared_Image shared_image);+  FL_EXPORT_C(void, Fl_Shared_Image_release)(fl_Shared_Image shared_image);+  FL_EXPORT_C(void, Fl_Shared_Image_reload)(fl_Shared_Image shared_image);+  FL_EXPORT_C(fl_Image, Fl_Shared_Image_copy_with_WH)(fl_Shared_Image shared_image,int W, int H);+  FL_EXPORT_C(fl_Image, Fl_Shared_Image_copy)(fl_Shared_Image shared_image);+  FL_EXPORT_C(void, Fl_Shared_Image_color_average)(fl_Shared_Image shared_image,Fl_Color c, float i);+  FL_EXPORT_C(void, Fl_Shared_Image_desaturate)(fl_Shared_Image shared_image);+  FL_EXPORT_C(void, Fl_Shared_Image_draw_with_XYWHcxcy)(fl_Shared_Image shared_image,int X, int Y, int W, int H, int cx, int cy);+  FL_EXPORT_C(void, Fl_Shared_Image_draw)(fl_Shared_Image shared_image,int X, int Y);+  FL_EXPORT_C(void, Fl_Shared_Image_uncache)(fl_Shared_Image shared_image);+  FL_EXPORT_C(fl_Shared_Image, Fl_Shared_Image_find)(const char* n);+  FL_EXPORT_C(fl_Shared_Image, Fl_Shared_Image_find_W)(const char* n, int H);+  FL_EXPORT_C(fl_Shared_Image, Fl_Shared_Image_find_H)(const char* n, int H); /* int W = 0, */+  FL_EXPORT_C(fl_Shared_Image, Fl_Shared_Image_find_WH)(const char* n, int W, int H);+  FL_EXPORT_C(fl_Shared_Image, Fl_Shared_Image_get)(const char* n);+  FL_EXPORT_C(fl_Shared_Image, Fl_Shared_Image_get_W)(const char* n, int H);+  FL_EXPORT_C(fl_Shared_Image, Fl_Shared_Image_get_H)(const char* n, int H);+  FL_EXPORT_C(fl_Shared_Image, Fl_Shared_Image_get_WH)(const char* n, int W, int H);+  FL_EXPORT_C(fl_Shared_Image*, Fl_Shared_Image_images)();+  FL_EXPORT_C(int, Fl_Shared_Image_num_images)();+  FL_EXPORT_C(void, Fl_Shared_Image_add_handler)(fl_Shared_Image_Handler f);+  FL_EXPORT_C(void, Fl_Shared_Image_remove_handler)(fl_Shared_Image_Handler f);+#ifdef __cplusplus+}+#endif+#endif /* __FL_SHARED_IMAGE_C__ */
+ c-src/Fl_Single_WindowC.cpp view
@@ -0,0 +1,782 @@+#include "Fl_WindowC.h"+#include "Fl_Single_WindowC.h"++#ifdef __cplusplus+Fl_DerivedSingle_Window::Fl_DerivedSingle_Window(int X, int Y, int W, int H, const char *l, fl_Window_Virtual_Funcs* funcs) : Fl_Single_Window(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = 0;+ }+Fl_DerivedSingle_Window::Fl_DerivedSingle_Window(int X, int Y, int W, int H, fl_Window_Virtual_Funcs* funcs):Fl_Single_Window(X,Y,W,H,0){+    overriddenFuncs = funcs;+    other_data = 0;+  }+Fl_DerivedSingle_Window::Fl_DerivedSingle_Window(int W, int H, const char *l, fl_Window_Virtual_Funcs* funcs) :Fl_Single_Window(W,H,l){+    overriddenFuncs = funcs;+    other_data = 0;+ }+Fl_DerivedSingle_Window::Fl_DerivedSingle_Window(int W, int H, fl_Window_Virtual_Funcs* funcs):Fl_Single_Window(W,H,0){+    overriddenFuncs = funcs;+    other_data = 0;+  }+Fl_DerivedSingle_Window::~Fl_DerivedSingle_Window(){+  destroy_data();+  free(overriddenFuncs);+}+void* Fl_DerivedSingle_Window::get_other_data(){+  return this->other_data;+}+void Fl_DerivedSingle_Window::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedSingle_Window::destroy_data(){+  if (this->overriddenFuncs->destroy_data != NULL){+    this->overriddenFuncs->destroy_data((fl_Window) this);+  }+}+void Fl_DerivedSingle_Window::draw_box(){+  Fl_Single_Window::draw_box();+}+void Fl_DerivedSingle_Window::draw_box(Fl_Boxtype t, Fl_Color c){+  Fl_Single_Window::draw_box(t,c);+}+void Fl_DerivedSingle_Window::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+  Fl_Single_Window::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedSingle_Window::draw_backdrop(){+  Fl_Single_Window::draw_backdrop();+}+void Fl_DerivedSingle_Window::draw_focus(){+  Fl_Single_Window::draw_focus();+}+void Fl_DerivedSingle_Window::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+  Fl_Single_Window::draw_focus(t,x,y,w,h);+}+void Fl_DerivedSingle_Window::draw_label(){+  Fl_Single_Window::draw_label();+}+void Fl_DerivedSingle_Window::draw_label(int x,int y,int w,int h,Fl_Align alignment){+  Fl_Single_Window::draw_label(x,y,w,h,alignment);+}+void Fl_DerivedSingle_Window::draw_child(Fl_Widget* widget){+  Fl_Single_Window::draw_child(*widget);+}+void Fl_DerivedSingle_Window::draw_children(){+  Fl_Single_Window::draw_children();+}+void Fl_DerivedSingle_Window::draw_outside_label(Fl_Widget* widget){+  Fl_Single_Window::draw_outside_label(*widget);+}+void Fl_DerivedSingle_Window::update_child(Fl_Widget* widget){+  Fl_Single_Window::update_child(*widget);+}+int* Fl_DerivedSingle_Window:: sizes(){+  return Fl_Single_Window::sizes();+}+int Fl_DerivedSingle_Window::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Window) this,event);+  }+  else {+    i = Fl_Single_Window::handle(event);+  }+  return i;+}+int Fl_DerivedSingle_Window::handle_super(int event){+return Fl_Single_Window::handle(event);+}+void Fl_DerivedSingle_Window::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Window) this,x,y,w,h);+  }+  else {+    Fl_Single_Window::resize(x,y,w,h);+  }+}++void Fl_DerivedSingle_Window::resize_super(int x, int y, int w, int h){+  Fl_Single_Window::resize(x,y,w,h);+}+void Fl_DerivedSingle_Window::flush(){+  if (this->overriddenFuncs->flush != NULL) {+    this->overriddenFuncs->flush((fl_Window) this);+  }+  else {+    Fl_Single_Window::flush();+  }+}++void Fl_DerivedSingle_Window::flush_super(){+Fl_Single_Window::flush();+}+void Fl_DerivedSingle_Window::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Window) this);+  }+  else {+    Fl_Single_Window::show();+  }+}+void Fl_DerivedSingle_Window::show_super(){+Fl_Single_Window::show();+}+void Fl_DerivedSingle_Window::show(int argc, char** argv){+  Fl_Single_Window::show(argc,argv);+}+void Fl_DerivedSingle_Window::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Window) this);+  }+  else {+    Fl_Single_Window::hide();+  }+}+void Fl_DerivedSingle_Window::hide_super(){+Fl_Single_Window::hide();+}+void Fl_DerivedSingle_Window::draw(){+  if (this->overriddenFuncs->draw != NULL) {+    this->overriddenFuncs->draw((fl_Window) this);+  }+  else {+    Fl_Single_Window::draw();+  }+}+void Fl_DerivedSingle_Window::draw_super(){+  Fl_Single_Window::draw();+}+Fl_Window* Fl_DerivedSingle_Window::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Window) this)));+  }+  else {+    win = Fl_Single_Window::as_window();+  }+  return win;+}+Fl_Window* Fl_DerivedSingle_Window::as_window_super(){+  return Fl_Single_Window::as_window();+}+Fl_Group* Fl_DerivedSingle_Window::as_group(){+  Fl_Group* grp;+  if (this->overriddenFuncs->as_group != NULL) {+    grp= (static_cast<Fl_Window*>(this->overriddenFuncs->as_group((fl_Window) this)));+  }+  else {+    grp= Fl_Single_Window::as_group();+  }+  return grp;+}+Fl_Group* Fl_DerivedSingle_Window::as_group_super(){+  return Fl_Single_Window::as_group();+}+Fl_Gl_Window* Fl_DerivedSingle_Window::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Window) this)));+  }+  else {+    win = Fl_Single_Window::as_gl_window();+  }+  return win;+}+Fl_Gl_Window* Fl_DerivedSingle_Window::as_gl_window_super(){+  return Fl_Single_Window::as_gl_window();+}+EXPORT {+#endif+  FL_EXPORT_C(fl_Single_Window_Virtual_Funcs*, Fl_Single_Window_default_virtual_funcs)(){+    fl_Single_Window_Virtual_Funcs* ptr = (fl_Single_Window_Virtual_Funcs*)malloc(sizeof(fl_Single_Window_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->hide = NULL;+    ptr->as_window = NULL;+    ptr->as_gl_window = NULL;+    ptr->flush = NULL;+    ptr->destroy_data = NULL;+    return ptr;+  }+FL_EXPORT_C(fl_Window,Fl_Single_Window_as_window)(fl_Single_Window self){+return (fl_Window)(static_cast<Fl_DerivedSingle_Window*>(self))->as_window();+}+FL_EXPORT_C(fl_Window,Fl_Single_Window_as_window_super)(fl_Single_Window self){+return (fl_Window)(static_cast<Fl_DerivedSingle_Window*>(self))->as_window_super();+  }+  FL_EXPORT_C(int,Fl_Single_Window_handle)(fl_Single_Window self, int event){+    return (static_cast<Fl_DerivedSingle_Window*>(self))->handle(event);+  }+  FL_EXPORT_C(int,Fl_Single_Window_handle_super)(fl_Single_Window self, int event){+    return (static_cast<Fl_DerivedSingle_Window*>(self))->handle_super(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Single_Window_parent)(fl_Single_Window win){+    return (fl_Group) (static_cast<Fl_DerivedSingle_Window*>(win))->parent();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_parent)(fl_Single_Window win,fl_Group grp){+    (static_cast<Fl_DerivedSingle_Window*>(win))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Single_Window_type)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->type();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_type)(fl_Single_Window win,uchar t){+    (static_cast<Fl_DerivedSingle_Window*>(win))->type(t);+  }++  FL_EXPORT_C(int,Fl_Single_Window_x)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->x();+  }+  FL_EXPORT_C(int,Fl_Single_Window_y)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->y();+  }+  FL_EXPORT_C(int,Fl_Single_Window_w)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->w();+  }+  FL_EXPORT_C(int,Fl_Single_Window_h)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->h();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_align)(fl_Single_Window double_window, Fl_Align alignment){+    (static_cast<Fl_DerivedSingle_Window*>(double_window))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Single_Window_align)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Single_Window_box)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->box();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_box)(fl_Single_Window win,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedSingle_Window*>(win))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Single_Window_color)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->color();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_color)(fl_Single_Window win,Fl_Color bg){+    (static_cast<Fl_DerivedSingle_Window*>(win))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_color_with_bg_sel)(fl_Single_Window win,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedSingle_Window*>(win))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Single_Window_selection_color)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_selection_color)(fl_Single_Window win,Fl_Color a){+    (static_cast<Fl_DerivedSingle_Window*>(win))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Single_Window_label)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->label();+  }+  FL_EXPORT_C(void,Fl_Single_Window_copy_label)(fl_Single_Window win,const char* new_label){+    (static_cast<Fl_DerivedSingle_Window*>(win))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_label)(fl_Single_Window win,const char* text){+    (static_cast<Fl_DerivedSingle_Window*>(win))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Single_Window_labeltype)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_labeltype)(fl_Single_Window win,Fl_Labeltype a){+    (static_cast<Fl_DerivedSingle_Window*>(win))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_labelcolor)(fl_Single_Window win,Fl_Color c){+    (static_cast<Fl_DerivedSingle_Window*>(win))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Single_Window_labelcolor)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Single_Window_labelfont)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_labelfont)(fl_Single_Window win,Fl_Font c){+    (static_cast<Fl_DerivedSingle_Window*>(win))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Single_Window_labelsize)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_labelsize)(fl_Single_Window win,Fl_Fontsize pix){+    (static_cast<Fl_DerivedSingle_Window*>(win))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Single_Window_image)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->image();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_image)(fl_Single_Window win,fl_Image pix){+    (static_cast<Fl_DerivedSingle_Window*>(win))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Single_Window_deimage)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->deimage();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_deimage)(fl_Single_Window win,fl_Image pix){+    (static_cast<Fl_DerivedSingle_Window*>(win))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Single_Window_tooltip)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Single_Window_copy_tooltip)(fl_Single_Window win,const char* text){+    (static_cast<Fl_DerivedSingle_Window*>(win))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_tooltip)(fl_Single_Window win,const char* text){+    (static_cast<Fl_DerivedSingle_Window*>(win))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_callback_with_user_data)(fl_Single_Window win,fl_Callback* cb,void* p){+    Fl_Single_Window* castedWindow = (static_cast<Fl_DerivedSingle_Window*>(win));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_callback)(fl_Single_Window win,fl_Callback* cb){+    Fl_Single_Window* castedWindow = (static_cast<Fl_DerivedSingle_Window*>(win));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Single_Window_user_data)(fl_Single_Window win){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedSingle_Window*>(win))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedSingle_Window*>(win))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_user_data)(fl_Single_Window win,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedSingle_Window*>(win))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_DerivedSingle_Window*>(win))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_DerivedSingle_Window*>(win))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Single_Window_argument)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->argument();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_argument)(fl_Single_Window win,long v){+    (static_cast<Fl_DerivedSingle_Window*>(win))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Single_Window_when)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->when();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_when)(fl_Single_Window win,uchar i){+    (static_cast<Fl_DerivedSingle_Window*>(win))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_visible)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->visible();+  }+  FL_EXPORT_C(int,Fl_Single_Window_visible_r)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_visible)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->visible();+  }+  FL_EXPORT_C(void,Fl_Single_Window_clear_visible)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_active)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->active();+  }+  FL_EXPORT_C(int,Fl_Single_Window_active_r)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->active_r();+  }+  FL_EXPORT_C(void,Fl_Single_Window_activate)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->activate();+  }+  FL_EXPORT_C(void,Fl_Single_Window_deactivate)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_output)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_output)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Single_Window_clear_output)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_takesevents)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_changed)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->changed();+  }+  FL_EXPORT_C(void,Fl_Single_Window_clear_changed)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Single_Window_take_focus)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_visible_focus)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Single_Window_clear_visible_focus)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Single_Window_modify_visible_focus)(fl_Single_Window win,int v){+    (static_cast<Fl_DerivedSingle_Window*>(win))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_visible_focus)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Single_Window_do_callback)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Single_Window_do_callback_with_widget_and_user_data)(fl_Single_Window win,fl_Widget w,long arg){+    (static_cast<Fl_DerivedSingle_Window*>(win))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Single_Window_do_callback_with_widget_and_default_user_data)(fl_Single_Window win,fl_Widget w){+    (static_cast<Fl_DerivedSingle_Window*>(win))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Single_Window_contains)(fl_Single_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Single_Window_inside)(fl_Single_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Single_Window_redraw)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->redraw();+  }+  FL_EXPORT_C(void,Fl_Single_Window_redraw_label)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Single_Window_damage)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->damage();+  }+  FL_EXPORT_C(void,Fl_Single_Window_clear_damage_with_bitmask)(fl_Single_Window win,uchar c){+    (static_cast<Fl_DerivedSingle_Window*>(win))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Single_Window_clear_damage)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Single_Window_damage_with_text)(fl_Single_Window win,uchar c){+    (static_cast<Fl_DerivedSingle_Window*>(win))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Single_Window_damage_inside_widget)(fl_Single_Window win,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedSingle_Window*>(win))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Single_Window_draw_super)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->draw_super();+  }+  FL_EXPORT_C(void,Fl_Single_Window_draw_label_with_xywh_alignment)(fl_Single_Window win,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedSingle_Window*>(win))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Single_Window_measure_label)(fl_Single_Window win,int* ww,int* hh){+    (static_cast<Fl_DerivedSingle_Window*>(win))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Single_Window_window)(fl_Single_Window double_window){+    return (fl_Window) (static_cast<Fl_DerivedSingle_Window*>(double_window))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Single_Window_top_window)(fl_Single_Window double_window){+    return (fl_Window) (static_cast<Fl_DerivedSingle_Window*>(double_window))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Single_Window_top_window_offset)(fl_Single_Window double_window, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedSingle_Window*>(double_window))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Single_Window_as_group)(fl_Single_Window win){+    return (fl_Group) (static_cast<Fl_DerivedSingle_Window*>(win))->as_group();+  }+  FL_EXPORT_C(fl_Group,Fl_Single_Window_as_group_super)(fl_Single_Window win){+    return (fl_Group) (static_cast<Fl_DerivedSingle_Window*>(win))->as_group_super();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Single_Window_as_gl_window)(fl_Single_Window win){+    return (fl_Gl_Window) (static_cast<Fl_DerivedSingle_Window*>(win))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Single_Window_as_gl_window_super)(fl_Single_Window win){+    return (fl_Gl_Window) (static_cast<Fl_DerivedSingle_Window*>(win))->as_gl_window();+  }+  FL_EXPORT_C(void, Fl_Single_Window_draw_child)(fl_Single_Window Single_Window,fl_Widget widget){+    (static_cast<Fl_DerivedSingle_Window*>(Single_Window))->draw_child(static_cast<Fl_Widget*>(widget));+  }+  FL_EXPORT_C(void, Fl_Single_Window_draw_children)(fl_Single_Window Single_Window){+    (static_cast<Fl_DerivedSingle_Window*>(Single_Window))->draw_children();+  }+  FL_EXPORT_C(void, Fl_Single_Window_draw_outside_label)(fl_Single_Window Single_Window,fl_Widget widget){+    (static_cast<Fl_DerivedSingle_Window*>(Single_Window))->draw_outside_label(static_cast<Fl_Widget*>(widget));+  }+  FL_EXPORT_C(void, Fl_Single_Window_update_child)(fl_Single_Window Single_Window,fl_Widget widget){+    (static_cast<Fl_DerivedSingle_Window*>(Single_Window))->update_child(static_cast<Fl_Widget*>(widget));+  }+  FL_EXPORT_C(int*, Fl_Single_Window_sizes)(fl_Single_Window Single_Window){+    return (static_cast<Fl_DerivedSingle_Window*>(Single_Window))->sizes();+  }+  FL_EXPORT_C(void,Fl_Single_Window_begin)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->begin();+  }+  FL_EXPORT_C(void,Fl_Single_Window_end)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->end();+  }+  FL_EXPORT_C(int,Fl_Single_Window_find)(fl_Single_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Single_Window_add)(fl_Single_Window win,fl_Widget w){+    (static_cast<Fl_DerivedSingle_Window*>(win))->add((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Single_Window_insert)(fl_Single_Window win,fl_Widget w,int i){+    (static_cast<Fl_DerivedSingle_Window*>(win))->insert(*(static_cast<Fl_Widget*>(w)),i);+  }+  FL_EXPORT_C(void,Fl_Single_Window_remove_index)(fl_Single_Window win,int index){+    (static_cast<Fl_DerivedSingle_Window*>(win))->remove(index);+  }+  FL_EXPORT_C(void,Fl_Single_Window_remove_widget)(fl_Single_Window win,fl_Widget w){+    (static_cast<Fl_DerivedSingle_Window*>(win))->remove((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Single_Window_clear)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->clear();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_resizable_by_reference)(fl_Single_Window win,fl_Widget o){+    (static_cast<Fl_DerivedSingle_Window*>(win))->resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_resizable)(fl_Single_Window win,fl_Widget o){+    (static_cast<Fl_DerivedSingle_Window*>(win))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Single_Window_resizable)(fl_Single_Window win){+    return (fl_Widget)(static_cast<Fl_DerivedSingle_Window*>(win))->resizable();+  }+  FL_EXPORT_C(void,Fl_Single_Window_add_resizable)(fl_Single_Window win,fl_Widget o){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Single_Window_init_sizes)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->init_sizes();+  }+  FL_EXPORT_C(int,Fl_Single_Window_children)(fl_Single_Window self){+    return (static_cast<Fl_DerivedSingle_Window*>(self))->children();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_clip_children)(fl_Single_Window win,int c){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_clip_children)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Single_Window_focus)(fl_Single_Window win, fl_Widget W){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Single_Window__ddfdesign_kludge)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(void, Fl_Single_Window_insert_with_before)(fl_Single_Window self, fl_Widget w, fl_Widget before){+    (static_cast<Fl_DerivedSingle_Window*>(self))->insert(*(static_cast<Fl_Widget*>(w)),(static_cast<Fl_Widget*>(before)));+  }+  FL_EXPORT_C(fl_Widget*, Fl_Single_Window_array)(fl_Single_Window self){+    return (fl_Widget*)(static_cast<Fl_DerivedSingle_Window*>(self))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Single_Window_child)(fl_Single_Window self, int n){+    return (fl_Widget)(static_cast<Fl_DerivedSingle_Window*>(self))->child(n);+  }+  // FL_EXPORT_C(void,Fl_Single_Window_forms_end)(fl_Single_Window win){+  //   return (static_cast<Fl_DerivedSingle_Window*>(win))->forms_end();+  // }+  FL_EXPORT_C(fl_Single_Window, Fl_Single_Window_New_WithLabel)(int w, int h, const char* title) {+    fl_Window_Virtual_Funcs* funcs = Fl_Window_default_virtual_funcs();+    Fl_DerivedSingle_Window* window = new Fl_DerivedSingle_Window(w,h,title,funcs);+    return (static_cast<fl_Single_Window>(window));+  }+  FL_EXPORT_C(fl_Single_Window, Fl_Single_Window_New)(int w, int h) {+    fl_Single_Window_Virtual_Funcs* funcs = Fl_Single_Window_default_virtual_funcs();+    Fl_DerivedSingle_Window* window = new Fl_DerivedSingle_Window(w,h,0,funcs);+    return (fl_Single_Window)window;+  }+  FL_EXPORT_C(fl_Single_Window, Fl_Single_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title) {+    fl_Single_Window_Virtual_Funcs* funcs = Fl_Single_Window_default_virtual_funcs();+    Fl_DerivedSingle_Window* window = new Fl_DerivedSingle_Window(x,y,w,h,title,funcs);+    return (fl_Single_Window)window;+  }+  FL_EXPORT_C(fl_Single_Window, Fl_Single_Window_NewXY)(int x, int y, int w, int h) {+    fl_Single_Window_Virtual_Funcs* funcs = Fl_Single_Window_default_virtual_funcs();+    Fl_DerivedSingle_Window* window = new Fl_DerivedSingle_Window(x,y,w,h,0,funcs);+    return (fl_Single_Window)window;+  }+  FL_EXPORT_C(fl_Single_Window, Fl_OverriddenSingle_Window_New_WithLabel)(int w, int h, const char* title, fl_Single_Window_Virtual_Funcs* funcs) {+    Fl_DerivedSingle_Window* window = new Fl_DerivedSingle_Window(w,h,title,funcs);+    return (static_cast<fl_Single_Window>(window));+  }+  FL_EXPORT_C(fl_Single_Window, Fl_OverriddenSingle_Window_New)(int w, int h,fl_Single_Window_Virtual_Funcs* funcs) {+    Fl_DerivedSingle_Window* window = new Fl_DerivedSingle_Window(w,h,0,funcs);+    return (fl_Single_Window)window;+  }+  FL_EXPORT_C(fl_Single_Window, Fl_OverriddenSingle_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title,fl_Single_Window_Virtual_Funcs* funcs) {+    Fl_DerivedSingle_Window* window = new Fl_DerivedSingle_Window(x,y,w,h,title,funcs);+    return (fl_Single_Window)window;+  }+  FL_EXPORT_C(fl_Single_Window, Fl_OverriddenSingle_Window_NewXY)(int x, int y, int w, int h,fl_Single_Window_Virtual_Funcs* funcs) {+    Fl_DerivedSingle_Window* window = new Fl_DerivedSingle_Window(x,y,w,h,0,funcs);+    return (fl_Single_Window)window;+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_changed)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->changed();+  }+  FL_EXPORT_C(void,Fl_Single_Window_fullscreen)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->fullscreen();+  }+  FL_EXPORT_C(void,Fl_Single_Window_fullscreen_off)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->fullscreen_off();+  }+  FL_EXPORT_C(void,Fl_Single_Window_fullscreen_off_with_resize)(fl_Single_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedSingle_Window*>(win))->fullscreen_off(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Single_Window_hide)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->hide();+  }+  FL_EXPORT_C(void,Fl_Single_Window_hide_super)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->hide_super();+  }+  FL_EXPORT_C(void,Fl_Single_Window_show)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->show();+  }+  FL_EXPORT_C(void,Fl_Single_Window_show_super)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->show_super();+  }+  FL_EXPORT_C(void,Fl_Single_Window_show_with_args)(fl_Single_Window win,int argc,char** argv){+    (static_cast<Fl_DerivedSingle_Window*>(win))->show(argc,argv);+  }+  FL_EXPORT_C(void,Fl_Single_Window_Destroy)(fl_Single_Window win){+    delete (static_cast<Fl_DerivedSingle_Window*>(win));+  }+  FL_EXPORT_C(void,Fl_Single_Window_resize)(fl_Single_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedSingle_Window*>(win))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Single_Window_resize_super)(fl_Single_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedSingle_Window*>(win))->resize_super(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Single_Window_iconize)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->iconize();+  }+  FL_EXPORT_C(void,Fl_Single_Window_flush)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->flush();+  }+  FL_EXPORT_C(void,Fl_Single_Window_flush_super)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->flush_super();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_border)(fl_Single_Window win,int b){+    (static_cast<Fl_DerivedSingle_Window*>(win))->border(b);+  }+  FL_EXPORT_C(void,Fl_Single_Window_clear_border)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->clear_border();+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_border)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->border();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_override)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->set_override();+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_override)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->override();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_modal)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->set_modal();+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_modal)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->modal();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_non_modal)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->set_non_modal();+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_non_modal)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->non_modal();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_menu_window)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->set_menu_window();+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_menu_window)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->menu_window();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_tooltip_window)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->set_tooltip_window();+  }+  FL_EXPORT_C(unsigned int,Fl_Single_Window_tooltip_window)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->tooltip_window();+  }+  FL_EXPORT_C(void,Fl_Single_Window_hotspot_with_x_y)(fl_Single_Window win,int x,int y){+    (static_cast<Fl_DerivedSingle_Window*>(win))->hotspot(x,y);+  }+  FL_EXPORT_C(void,Fl_Single_Window_hotspot_with_x_y_with_offscreen)(fl_Single_Window win,int x,int y,int offscreen){+    (static_cast<Fl_DerivedSingle_Window*>(win))->hotspot(x,y,offscreen);+  }+  FL_EXPORT_C(void,Fl_Single_Window_hotspot_with_widget)(fl_Single_Window win,fl_Widget w){+    (static_cast<Fl_DerivedSingle_Window*>(win))->hotspot((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Single_Window_hotspot_with_widget_with_offscreen)(fl_Single_Window win,fl_Widget w,int offscreen){+    (static_cast<Fl_DerivedSingle_Window*>(win))->hotspot((static_cast<Fl_Widget*>(w)),offscreen);+  }+  FL_EXPORT_C(void,Fl_Single_Window_free_position)(fl_Single_Window win){+    (static_cast<Fl_DerivedSingle_Window*>(win))->free_position();+  }+  FL_EXPORT_C(void,Fl_Single_Window_size_range)(fl_Single_Window win,int minw,int minh){+    (static_cast<Fl_DerivedSingle_Window*>(win))->size_range(minw,minh);+  }+  FL_EXPORT_C(void,Fl_Single_Window_size_range_with_args)(fl_Single_Window win,int minw,int minh,fl_Window_size_range_args* ptr){+    (static_cast<Fl_DerivedSingle_Window*>(win))->size_range(minw,minh,ptr->maxw, ptr->maxh, ptr->dw,ptr->dh,ptr->aspect);+  }+  FL_EXPORT_C(const char*,Fl_Single_Window_iconlabel)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->iconlabel();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_iconlabel)(fl_Single_Window win,const char* label){+    (static_cast<Fl_DerivedSingle_Window*>(win))->iconlabel(label);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_label_with_iconlabel)(fl_Single_Window win,const char* label,const char* iconlabel){+    (static_cast<Fl_DerivedSingle_Window*>(win))->label(label,iconlabel);+  }+  FL_EXPORT_C(const char*,Fl_Single_Window_xclass)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->xclass();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_xclass)(fl_Single_Window win,const char* c){+    (static_cast<Fl_DerivedSingle_Window*>(win))->xclass(c);+  }+  FL_EXPORT_C(const void*,Fl_Single_Window_icon)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->icon();+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_icon)(fl_Single_Window win,const void * ic){+    (static_cast<Fl_DerivedSingle_Window*>(win))->icon(ic);+  }+  FL_EXPORT_C(int,Fl_Single_Window_shown)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->shown();+  }+  FL_EXPORT_C(int,Fl_Single_Window_x_root)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->x_root();+  }+  FL_EXPORT_C(int,Fl_Single_Window_y_root)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->y_root();+  }+  // See header file to see why this is commented out.+  // FL_EXPORT_C(int,Fl_Single_Window_make_current)(fl_Single_Window win){+  //   return (static_cast<Fl_DerivedSingle_Window*>(win))->make_current();+  // }+  FL_EXPORT_C(void,Fl_Single_Window_set_cursor_with_bg)(fl_Single_Window win,Fl_Cursor cursor,Fl_Color bg){+    (static_cast<Fl_DerivedSingle_Window*>(win))->cursor(cursor,bg);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_cursor_with_fg)(fl_Single_Window win,Fl_Cursor cursor,Fl_Color fg){+    (static_cast<Fl_DerivedSingle_Window*>(win))->cursor(cursor,fg);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_cursor_with_fg_bg)(fl_Single_Window win,Fl_Cursor cursor,Fl_Color fg,Fl_Color bg){+    (static_cast<Fl_DerivedSingle_Window*>(win))->cursor(cursor,fg,bg);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_cursor)(fl_Single_Window win,Fl_Cursor cursor){+    (static_cast<Fl_DerivedSingle_Window*>(win))->cursor(cursor);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_default_cursor_with_bg)(fl_Single_Window win,Fl_Cursor cursor,Fl_Color bg){+    (static_cast<Fl_DerivedSingle_Window*>(win))->default_cursor(cursor,bg);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_default_cursor_with_fg)(fl_Single_Window win,Fl_Cursor cursor,Fl_Color fg){+    (static_cast<Fl_DerivedSingle_Window*>(win))->default_cursor(cursor,fg);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_default_cursor_with_fg_bg)(fl_Single_Window win,Fl_Cursor cursor,Fl_Color fg,Fl_Color bg){+    (static_cast<Fl_DerivedSingle_Window*>(win))->default_cursor(cursor,fg,bg);+  }+  FL_EXPORT_C(void,Fl_Single_Window_set_default_cursor)(fl_Single_Window win,Fl_Cursor cursor){+    (static_cast<Fl_DerivedSingle_Window*>(win))->default_cursor(cursor);+  }+  FL_EXPORT_C(int,Fl_Single_Window_decorated_w)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->decorated_w();+  }+  FL_EXPORT_C(int,Fl_Single_Window_decorated_h)(fl_Single_Window win){+    return (static_cast<Fl_DerivedSingle_Window*>(win))->decorated_h();+  }+  FL_EXPORT_C(void, Fl_Single_Window_set_default_xclass)(const char* label){+    Fl_Single_Window::default_xclass(label);+  }+  FL_EXPORT_C(const char*, Fl_Single_Window_default_xclass)(){+    return Fl_Single_Window::default_xclass();+  }+  FL_EXPORT_C(fl_Window, Fl_Single_Window_current)(){+    return (fl_Window)Fl_Single_Window::current();+  }+  FL_EXPORT_C(void, Fl_Single_Window_default_callback)(fl_Single_Window win, void* v){+    Fl_Single_Window::default_callback((static_cast<Fl_DerivedSingle_Window*>(win)), v);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Single_WindowC.h view
@@ -0,0 +1,272 @@+#ifndef __FL_SINGLE_WINDOW_C__+#define __FL_SINGLE_WINDOW_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Single_Window.H"+#include "Fl_WindowC.h"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Single_Window_handle)(fl_Single_Window self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Single_Window_parent)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_parent)(fl_Single_Window win, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Single_Window_type)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_type)(fl_Single_Window win, uchar t);++  FL_EXPORT_C(int,          Fl_Single_Window_x)(fl_Single_Window win);+  FL_EXPORT_C(int,          Fl_Single_Window_y)(fl_Single_Window win);+  FL_EXPORT_C(int,          Fl_Single_Window_w)(fl_Single_Window win);+  FL_EXPORT_C(int,          Fl_Single_Window_h)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_align)(fl_Single_Window double_window, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Single_Window_align)(fl_Single_Window win);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Single_Window_box)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_box)(fl_Single_Window win, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Single_Window_color)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_color)(fl_Single_Window win, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Single_Window_set_color_with_bg_sel)(fl_Single_Window win,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Single_Window_selection_color)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_selection_color)(fl_Single_Window win, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Single_Window_label)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_copy_label)(fl_Single_Window win, const char* new_label);+  FL_EXPORT_C(void,         Fl_Single_Window_set_label)(fl_Single_Window win, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Single_Window_labeltype)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_labeltype)(fl_Single_Window win, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Single_Window_labelcolor)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_labelcolor)(fl_Single_Window win, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Single_Window_labelfont)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_labelfont)(fl_Single_Window win, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Single_Window_labelsize)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_labelsize)(fl_Single_Window win, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Single_Window_image)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_image)(fl_Single_Window win, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Single_Window_deimage)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_deimage)(fl_Single_Window win, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Single_Window_tooltip)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_copy_tooltip)(fl_Single_Window win, const char* text);+  FL_EXPORT_C(void,         Fl_Single_Window_set_tooltip)(fl_Single_Window win, const char* text);+  FL_EXPORT_C(void,         Fl_Single_Window_set_callback_with_user_data)(fl_Single_Window win, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Single_Window_set_callback)(fl_Single_Window win, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Single_Window_user_data)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_user_data)(fl_Single_Window win, void* v);+  FL_EXPORT_C(long,         Fl_Single_Window_argument)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_argument)(fl_Single_Window win, long v);+  FL_EXPORT_C(Fl_When,      Fl_Single_Window_when)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_when)(fl_Single_Window win, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Single_Window_visible)(fl_Single_Window win);+  FL_EXPORT_C(int,          Fl_Single_Window_visible_r)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_visible)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_clear_visible)(fl_Single_Window win);+  FL_EXPORT_C(unsigned int, Fl_Single_Window_active)(fl_Single_Window win);+  FL_EXPORT_C(int,          Fl_Single_Window_active_r)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_activate)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_deactivate)(fl_Single_Window win);+  FL_EXPORT_C(unsigned int, Fl_Single_Window_output)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_output)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_clear_output)(fl_Single_Window win);+  FL_EXPORT_C(unsigned int, Fl_Single_Window_takesevents)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_changed)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_clear_changed)(fl_Single_Window win);+  FL_EXPORT_C(int,          Fl_Single_Window_take_focus)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_visible_focus)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_clear_visible_focus)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_modify_visible_focus)(fl_Single_Window win, int v);+  FL_EXPORT_C(unsigned int, Fl_Single_Window_visible_focus)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_do_callback)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_do_callback_with_widget_and_user_data)(fl_Single_Window win, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Single_Window_do_callback_with_widget_and_default_user_data)(fl_Single_Window win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Single_Window_contains)(fl_Single_Window win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Single_Window_inside)(fl_Single_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Single_Window_redraw)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_redraw_label)(fl_Single_Window win);+  FL_EXPORT_C(uchar,        Fl_Single_Window_damage)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_clear_damage_with_bitmask)(fl_Single_Window win, uchar c);+  FL_EXPORT_C(void,         Fl_Single_Window_clear_damage)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_damage_with_text)(fl_Single_Window win, uchar c);+  FL_EXPORT_C(void,         Fl_Single_Window_damage_inside_widget)(fl_Single_Window win, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Single_Window_draw_label_with_xywh_alignment)(fl_Single_Window win, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Single_Window_measure_label)(fl_Single_Window win, int* ww , int* hh);+  FL_EXPORT_C(fl_Group,     Fl_Single_Window_as_group)(fl_Single_Window win);+  FL_EXPORT_C(fl_Gl_Window, Fl_Single_Window_as_gl_window)(fl_Single_Window win);+  FL_EXPORT_C(fl_Window,    Fl_Single_Window_window)(fl_Single_Window double_window);+  FL_EXPORT_C(fl_Window,    Fl_Single_Window_top_window)(fl_Single_Window double_window);+  FL_EXPORT_C(fl_Window ,   Fl_Single_Window_top_window_offset)(fl_Single_Window double_window, int* xoff, int* yoff);+  /* Inherited from Fl_Group */+  FL_EXPORT_C(void, Fl_Single_Window_draw)(fl_Single_Window Single_Window);+  FL_EXPORT_C(void, Fl_Single_Window_draw_child)(fl_Single_Window Single_Window,fl_Widget widget);+  FL_EXPORT_C(void, Fl_Single_Window_draw_children)(fl_Single_Window Single_Window);+  FL_EXPORT_C(void, Fl_Single_Window_draw_outside_label)(fl_Single_Window Single_Window,fl_Widget widget);+  FL_EXPORT_C(void, Fl_Single_Window_update_child)(fl_Single_Window Single_Window,fl_Widget widget);+  FL_EXPORT_C(int*, Fl_Single_Window_sizes)(fl_Single_Window Single_Window);+  FL_EXPORT_C(void,         Fl_Single_Window_begin)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_end)(fl_Single_Window win);+  FL_EXPORT_C(int,          Fl_Single_Window_find)(fl_Single_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Single_Window_add)(fl_Single_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Single_Window_insert)(fl_Single_Window win, fl_Widget w, int i);+  FL_EXPORT_C(void,         Fl_Single_Window_remove_index)(fl_Single_Window win, int index);+  FL_EXPORT_C(void,         Fl_Single_Window_remove_widget)(fl_Single_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Single_Window_clear)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_resizable_by_reference)(fl_Single_Window win,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Single_Window_set_resizable)(fl_Single_Window win,fl_Widget o);+  FL_EXPORT_C(fl_Widget,         Fl_Single_Window_resizable)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_add_resizable)(fl_Single_Window win,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Single_Window_init_sizes)(fl_Single_Window win);+  FL_EXPORT_C(int,          Fl_Single_Window_children)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_set_clip_children)(fl_Single_Window win,int c);+  FL_EXPORT_C(unsigned int, Fl_Single_Window_clip_children)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_focus)(fl_Single_Window win,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Single_Window__ddfdesign_kludge)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_insert_with_before)(fl_Single_Window self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Single_Window_array)(fl_Single_Window self);+  FL_EXPORT_C(fl_Widget,    Fl_Single_Window_child)(fl_Single_Window self, int n);+  FL_EXPORT_C(void,         Fl_Single_Window_forms_end)(fl_Single_Window self);+  /* FL_EXPORT_C(void,         Fl_Single_Window_forms_end)(fl_Single_Window win); */+  /* Fl_Window inherited */+  FL_EXPORT_C(unsigned int, Fl_Single_Window_changed)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_fullscreen)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_fullscreen_off)(fl_Single_Window win);+  FL_EXPORT_C(void,         Fl_Single_Window_fullscreen_off_with_resize)(fl_Single_Window win,int X,int Y,int W,int H);+  FL_EXPORT_C(fl_Single_Window,    Fl_Single_Window_New_WithLabel)(int w, int h, const char* title);+  FL_EXPORT_C(fl_Single_Window,    Fl_Single_Window_New)(int w, int h);+  FL_EXPORT_C(fl_Single_Window,    Fl_Single_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title);+  FL_EXPORT_C(fl_Single_Window,    Fl_Single_Window_NewXY)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Single_Window, Fl_OverriddenSingle_Window_New_WithLabel)(int w, int h, const char* title, fl_Single_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Single_Window, Fl_OverriddenSingle_Window_New)(int w, int h,fl_Single_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Single_Window, Fl_OverriddenSingle_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title,fl_Single_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Single_Window, Fl_OverriddenSingle_Window_NewXY)(int x, int y, int w, int h,fl_Single_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(void,         Fl_Single_Window_iconize)(fl_Single_Window win);++  FL_EXPORT_C(fl_Single_Window, Fl_OverriddenSingle_Window_New_WithLabel)(int w, int h, const char* title, fl_Single_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Single_Window, Fl_OverriddenSingle_Window_New)(int w, int h,fl_Single_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Single_Window, Fl_OverriddenSingle_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title,fl_Single_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Single_Window, Fl_OverriddenSingle_Window_NewXY)(int x, int y, int w, int h,fl_Single_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(int ,Fl_Single_Window_handle)(fl_Single_Window win, int event);+  FL_EXPORT_C(void ,Fl_Single_Window_set_border)(fl_Single_Window win, int b);+  FL_EXPORT_C(void ,Fl_Single_Window_clear_border)(fl_Single_Window win);+  FL_EXPORT_C(unsigned int ,Fl_Single_Window_border)(fl_Single_Window win);+  FL_EXPORT_C(void ,Fl_Single_Window_set_override)(fl_Single_Window win);+  FL_EXPORT_C(unsigned int,Fl_Single_Window_override)(fl_Single_Window win);+  FL_EXPORT_C(void ,Fl_Single_Window_set_modal)(fl_Single_Window win);+  FL_EXPORT_C(unsigned int,Fl_Single_Window_modal)(fl_Single_Window win);+  FL_EXPORT_C(void ,Fl_Single_Window_set_non_modal)(fl_Single_Window win);+  FL_EXPORT_C(unsigned int ,Fl_Single_Window_non_modal)(fl_Single_Window win);+  FL_EXPORT_C(void ,Fl_Single_Window_set_menu_window)(fl_Single_Window win);+  FL_EXPORT_C(unsigned int,Fl_Single_Window_menu_window)(fl_Single_Window win);+  FL_EXPORT_C(void ,Fl_Single_Window_set_tooltip_window)(fl_Single_Window win);+  FL_EXPORT_C(unsigned int,Fl_Single_Window_tooltip_window)(fl_Single_Window win);+  FL_EXPORT_C(void ,Fl_Single_Window_hotspot_with_x_y)(fl_Single_Window win, int x, int y);+  FL_EXPORT_C(void ,Fl_Single_Window_hotspot_with_x_y_with_offscreen)(fl_Single_Window win, int x, int y, int offscreen);+  FL_EXPORT_C(void ,Fl_Single_Window_hotspot_with_widget)(fl_Single_Window win, fl_Widget w);//, int offscreen = 0);+  FL_EXPORT_C(void ,Fl_Single_Window_hotspot_with_widget_with_offscreen)(fl_Single_Window win, fl_Widget w, int offscreen);+  FL_EXPORT_C(void ,Fl_Single_Window_free_position)(fl_Single_Window win);+  FL_EXPORT_C(void ,Fl_Single_Window_size_range)(fl_Single_Window win, int minw, int minh);+  FL_EXPORT_C(void ,Fl_Single_Window_size_range_with_args)(fl_Window win, int minw, int minh, fl_Window_size_range_args* args);//int maxw=0, int maxh=0, int dw=0, int dh=0, int aspect=0);+  FL_EXPORT_C(const char*, Fl_Single_Window_label)(fl_Single_Window win);+  FL_EXPORT_C(const char*, Fl_Single_Window_iconlabel)(fl_Single_Window win);+  FL_EXPORT_C(void, Fl_Single_Window_set_label)(fl_Single_Window win,const char*);+  FL_EXPORT_C(void, Fl_Single_Window_set_iconlabel)(fl_Single_Window win,const char*);+  FL_EXPORT_C(void, Fl_Single_Window_set_label_with_iconlabel)(fl_Single_Window win,const char* label, const char* iconlabel);+  FL_EXPORT_C(void, Fl_Single_Window_copy_label)(fl_Single_Window win,const char* a);+  FL_EXPORT_C(void, Fl_Single_Window_set_default_xclass)(const char* label);+  FL_EXPORT_C(const char*, Fl_Single_Window_default_xclass)();+  FL_EXPORT_C(const char*, Fl_Single_Window_xclass)(fl_Single_Window win);+  FL_EXPORT_C(void, Fl_Single_Window_set_xclass)(fl_Single_Window win,const char* c);+  FL_EXPORT_C(const void*, Fl_Single_Window_icon)(fl_Single_Window win);+  FL_EXPORT_C(void, Fl_Single_Window_set_icon)(fl_Single_Window win,const void * ic);+  FL_EXPORT_C(int, Fl_Single_Window_shown)(fl_Single_Window win);+  FL_EXPORT_C(void, Fl_Single_Window_iconize)(fl_Single_Window win);+  FL_EXPORT_C(int, Fl_Single_Window_x_root)(fl_Single_Window win);+  FL_EXPORT_C(int, Fl_Single_Window_y_root)(fl_Single_Window win);+  FL_EXPORT_C(fl_Single_Window, Fl_Single_Window_current)();+  // There is no make_current implementation on Fl_Single_Window+  // even though it is in the header file.+  // FL_EXPORT_C(int, Fl_Single_Window_make_current)(fl_Single_Window win);+  FL_EXPORT_C(void, Fl_Single_Window_set_cursor_with_bg)(fl_Single_Window win, Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void, Fl_Single_Window_set_cursor_with_fg)(fl_Single_Window win,Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void, Fl_Single_Window_set_cursor_with_fg_bg)(fl_Single_Window win,Fl_Cursor cursor, Fl_Color fg , Fl_Color bg );/* =FL_BLACK *//*=FL_WHITE*/+  FL_EXPORT_C(void, Fl_Single_Window_set_cursor)(fl_Single_Window win,Fl_Cursor cursor);+  FL_EXPORT_C(void, Fl_Single_Window_set_default_cursor_with_bg)(fl_Single_Window win,Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void, Fl_Single_Window_set_default_cursor_with_fg)(fl_Single_Window win, Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void, Fl_Single_Window_set_default_cursor_with_fg_bg)(fl_Single_Window win,Fl_Cursor cursor, Fl_Color fg , Fl_Color bg );+  FL_EXPORT_C(void, Fl_Single_Window_set_default_cursor)(fl_Single_Window win,Fl_Cursor cursor);+  FL_EXPORT_C(void, Fl_Single_Window_default_callback)(fl_Single_Window win, void* v);+  FL_EXPORT_C(int, Fl_Single_Window_decorated_w)(fl_Single_Window win);+  FL_EXPORT_C(int, Fl_Single_Window_decorated_h)(fl_Single_Window win);+  /* Fl_Single_Window specific */+  // flush resize destructor, constructor+#ifdef __cplusplus+  class Fl_DerivedSingle_Window : public Fl_Single_Window {+    fl_Single_Window_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void destroy_data();+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    void draw_super();+    virtual int handle(int event);+    int handle_super(int event);+    virtual void resize(int x, int y, int w, int h);+    void resize_super(int x, int y, int w, int h);+    virtual void show();+    void show_super();+    virtual void show(int,char**);+    virtual void hide();+    void hide_super();+    virtual void flush();+    void flush_super();+    virtual Fl_Window* as_window();+    Fl_Window* as_window_super();+    virtual Fl_Group* as_group();+    Fl_Group* as_group_super();+    virtual Fl_Gl_Window* as_gl_window();+    Fl_Gl_Window* as_gl_window_super();+    void draw_child(Fl_Widget* widget);+    void draw_children();+    void draw_outside_label(Fl_Widget* widget);+    void update_child(Fl_Widget* widget);+    int* sizes();+    Fl_DerivedSingle_Window(int X, int Y, int W, int H, const char *l, fl_Single_Window_Virtual_Funcs* funcs);+    Fl_DerivedSingle_Window(int X, int Y, int W, int H, fl_Single_Window_Virtual_Funcs* funcs);+    Fl_DerivedSingle_Window(int W, int H, const char *l, fl_Single_Window_Virtual_Funcs* funcs);+    Fl_DerivedSingle_Window(int W, int H, fl_Single_Window_Virtual_Funcs* funcs);+    ~Fl_DerivedSingle_Window();+  };+#endif+  FL_EXPORT_C(fl_Single_Window_Virtual_Funcs*, Fl_Single_Window_default_virtual_funcs)();+  FL_EXPORT_C(int ,		Fl_Single_Window_handle)(fl_Single_Window win, int event);+  FL_EXPORT_C(int ,		Fl_Single_Window_handle_super)(fl_Single_Window win, int event);+  FL_EXPORT_C(void,		Fl_Single_Window_draw_super)(fl_Single_Window win);+  FL_EXPORT_C(fl_Group,		Fl_Single_Window_as_group)(fl_Single_Window window);+  FL_EXPORT_C(fl_Window,	Fl_Single_Window_as_window)(fl_Single_Window window);+  FL_EXPORT_C(fl_Gl_Window,	Fl_Single_Window_as_gl_window)(fl_Single_Window window);+  FL_EXPORT_C(fl_Group,		Fl_Single_Window_as_group_super)(fl_Single_Window window);+  FL_EXPORT_C(fl_Window,	Fl_Single_Window_as_window_super)(fl_Single_Window window);+  FL_EXPORT_C(fl_Gl_Window,	Fl_Single_Window_as_gl_window_super)(fl_Single_Window window);+  FL_EXPORT_C(void,		Fl_Single_Window_show_super)(fl_Single_Window win);+  FL_EXPORT_C(void,		Fl_Single_Window_show)(fl_Single_Window win);+  FL_EXPORT_C(void,		Fl_Single_Window_show_with_args)(fl_Single_Window win, int argc, char** argv);+  FL_EXPORT_C(void,		Fl_Single_Window_Destroy)(fl_Single_Window win);+  FL_EXPORT_C(void,		Fl_Single_Window_flush_super)(fl_Single_Window win);+  FL_EXPORT_C(void,		Fl_Single_Window_flush)(fl_Single_Window win);+  FL_EXPORT_C(void,		Fl_Single_Window_resize_super)(fl_Single_Window win, int X, int Y, int W, int H);+  FL_EXPORT_C(void,		Fl_Single_Window_resize)(fl_Single_Window win, int X, int Y, int W, int H);+  FL_EXPORT_C(void,		Fl_Single_Window_hide_super)(fl_Single_Window win);+  FL_EXPORT_C(void,             Fl_Single_Window_hide)(fl_Single_Window win);++#ifdef __cplusplus+}+#endif++#endif /* __FL_SINGLE_WINDOW_C__ */
+ c-src/Fl_SliderC.cpp view
@@ -0,0 +1,420 @@+#include "Fl_SliderC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Slider_handle_super)(fl_Slider slider,int event){+    return (static_cast<Fl_Slider*>(slider))->Fl_Slider::handle(event);+  }+  FL_EXPORT_C(int,Fl_Slider_handle )(fl_Slider slider, int event){+    return (static_cast<Fl_Slider*>(slider))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Slider_resize_super )(fl_Slider slider,int x, int y, int w, int h){+    (static_cast<Fl_Slider*>(slider))->Fl_Slider::resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Slider_resize )(fl_Slider slider,int x, int y, int w, int h){+    (static_cast<Fl_Slider*>(slider))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Slider_show_super)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->Fl_Slider::show();+  }+  FL_EXPORT_C(void,Fl_Slider_show )(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->show();+  }+  FL_EXPORT_C(void,Fl_Slider_hide_super)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->Fl_Slider::hide();+  }+  FL_EXPORT_C(void,Fl_Slider_hide )(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Slider_as_window_super)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->Fl_Slider::as_window();+  }+  FL_EXPORT_C(fl_Window,Fl_Slider_as_window )(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->as_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Slider_as_gl_window_super)(fl_Slider slider){+    return (fl_Gl_Window) (static_cast<Fl_Slider*>(slider))->Fl_Slider::as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Slider_as_gl_window )(fl_Slider slider){+    return (fl_Gl_Window) (static_cast<Fl_Slider*>(slider))->as_gl_window();+  };+  FL_EXPORT_C(fl_Group,Fl_Slider_parent)(fl_Slider slider){+    return (fl_Group) (static_cast<Fl_Slider*>(slider))->parent();+  }+  FL_EXPORT_C(void,Fl_Slider_set_parent)(fl_Slider slider,fl_Group grp){+    (static_cast<Fl_Slider*>(slider))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Slider_type)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->type();+  }+  FL_EXPORT_C(void,Fl_Slider_set_type)(fl_Slider slider,uchar t){+    (static_cast<Fl_Slider*>(slider))->type(t);+  }++  FL_EXPORT_C(int,Fl_Slider_x)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->x();+  }+  FL_EXPORT_C(int,Fl_Slider_y)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->y();+  }+  FL_EXPORT_C(int,Fl_Slider_w)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->w();+  }+  FL_EXPORT_C(int,Fl_Slider_h)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->h();+  }+  FL_EXPORT_C(void,Fl_Slider_set_align)(fl_Slider slider, Fl_Align alignment){+    (static_cast<Fl_Slider*>(slider))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Slider_align)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Slider_box)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->box();+  }+  FL_EXPORT_C(void,Fl_Slider_set_box)(fl_Slider slider,Fl_Boxtype new_box){+    (static_cast<Fl_Slider*>(slider))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Slider_color)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->color();+  }+  FL_EXPORT_C(void,Fl_Slider_set_color)(fl_Slider slider,Fl_Color bg){+    (static_cast<Fl_Slider*>(slider))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Slider_set_color_with_bg_sel)(fl_Slider slider,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Slider*>(slider))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Slider_selection_color)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Slider_set_selection_color)(fl_Slider slider,Fl_Color a){+    (static_cast<Fl_Slider*>(slider))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Slider_label)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->label();+  }+  FL_EXPORT_C(void,Fl_Slider_copy_label)(fl_Slider slider,const char* new_label){+    (static_cast<Fl_Slider*>(slider))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Slider_set_label)(fl_Slider slider,const char* text){+    (static_cast<Fl_Slider*>(slider))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Slider_labeltype)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Slider_set_labeltype)(fl_Slider slider,Fl_Labeltype a){+    (static_cast<Fl_Slider*>(slider))->labeltype(a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Slider_labelcolor)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->labelcolor();+  }+  FL_EXPORT_C(void,Fl_Slider_set_labelcolor)(fl_Slider slider,Fl_Color c){+    (static_cast<Fl_Slider*>(slider))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Font,Fl_Slider_labelfont)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Slider_set_labelfont)(fl_Slider slider,Fl_Font c){+    (static_cast<Fl_Slider*>(slider))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Slider_labelsize)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Slider_set_labelsize)(fl_Slider slider,Fl_Fontsize pix){+    (static_cast<Fl_Slider*>(slider))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Slider_image)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->image();+  }+  FL_EXPORT_C(void,Fl_Slider_set_image)(fl_Slider slider,fl_Image pix){+    (static_cast<Fl_Slider*>(slider))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Slider_deimage)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->deimage();+  }+  FL_EXPORT_C(void,Fl_Slider_set_deimage)(fl_Slider slider,fl_Image pix){+    (static_cast<Fl_Slider*>(slider))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Slider_tooltip)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Slider_copy_tooltip)(fl_Slider slider,const char* text){+    (static_cast<Fl_Slider*>(slider))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Slider_set_tooltip)(fl_Slider slider,const char* text){+    (static_cast<Fl_Slider*>(slider))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Slider_set_callback_with_user_data)(fl_Slider slider,fl_Callback cb,void* p){+    Fl_Slider* castedBox = (static_cast<Fl_Slider*>(slider));+    new C_to_Fl_Callback(castedBox, cb, p);+  }+  FL_EXPORT_C(void,Fl_Slider_set_callback)(fl_Slider slider,fl_Callback cb){+    Fl_Slider* castedBox = (static_cast<Fl_Slider*>(slider));+    new C_to_Fl_Callback(castedBox, cb);+  }+  FL_EXPORT_C(void*,Fl_Slider_user_data)(fl_Slider slider){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Slider*>(slider))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Slider*>(slider))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Slider_set_user_data)(fl_Slider slider,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Slider*>(slider))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Slider*>(slider))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Slider*>(slider))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Slider_argument)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->argument();+  }+  FL_EXPORT_C(void,Fl_Slider_set_argument)(fl_Slider slider,long v){+    (static_cast<Fl_Slider*>(slider))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Slider_when)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->when();+  }+  FL_EXPORT_C(void,Fl_Slider_set_when)(fl_Slider slider,uchar i){+    (static_cast<Fl_Slider*>(slider))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Slider_visible)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->visible();+  }+  FL_EXPORT_C(int,Fl_Slider_visible_r)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Slider_set_visible)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->visible();+  }+  FL_EXPORT_C(void,Fl_Slider_clear_visible)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Slider_active)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->active();+  }+  FL_EXPORT_C(int,Fl_Slider_active_r)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->active_r();+  }+  FL_EXPORT_C(void,Fl_Slider_activate)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->activate();+  }+  FL_EXPORT_C(void,Fl_Slider_deactivate)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Slider_output)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->output();+  }+  FL_EXPORT_C(void,Fl_Slider_set_output)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->output();+  }+  FL_EXPORT_C(void,Fl_Slider_clear_output)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Slider_takesevents)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Slider_set_changed)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->changed();+  }+  FL_EXPORT_C(void,Fl_Slider_clear_changed)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Slider_take_focus)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Slider_set_visible_focus)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Slider_clear_visible_focus)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Slider_modify_visible_focus)(fl_Slider slider,int v){+    (static_cast<Fl_Slider*>(slider))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Slider_visible_focus)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Slider_do_callback)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Slider_do_callback_with_widget_and_user_data)(fl_Slider slider,fl_Widget w,long arg){+    (static_cast<Fl_Slider*>(slider))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Slider_do_callback_with_widget_and_default_user_data)(fl_Slider slider,fl_Widget w){+    (static_cast<Fl_Slider*>(slider))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Slider_contains)(fl_Slider slider,fl_Widget w){+    return (static_cast<Fl_Slider*>(slider))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Slider_inside)(fl_Slider slider,fl_Widget w){+    return (static_cast<Fl_Slider*>(slider))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Slider_redraw)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->redraw();+  }+  FL_EXPORT_C(void,Fl_Slider_redraw_label)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Slider_damage)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->damage();+  }+  FL_EXPORT_C(void,Fl_Slider_clear_damage_with_bitmask)(fl_Slider slider,uchar c){+    (static_cast<Fl_Slider*>(slider))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Slider_clear_damage)(fl_Slider slider){+    (static_cast<Fl_Slider*>(slider))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Slider_damage_with_text)(fl_Slider slider,uchar c){+    (static_cast<Fl_Slider*>(slider))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Slider_damage_inside_widget)(fl_Slider slider,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Slider*>(slider))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Slider_draw_label_with_xywh_alignment)(fl_Slider slider,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Slider*>(slider))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Slider_measure_label)(fl_Slider slider,int* ww,int* hh){+    (static_cast<Fl_Slider*>(slider))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Slider_window)(fl_Slider slider){+    return (fl_Window) (static_cast<Fl_Slider*>(slider))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Slider_top_window)(fl_Slider slider){+    return (fl_Window) (static_cast<Fl_Slider*>(slider))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Slider_top_window_offset)(fl_Slider slider, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Slider*>(slider))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Slider_as_group)(fl_Slider slider){+    return (fl_Group) (static_cast<Fl_Slider*>(slider))->as_group();+  }+  FL_EXPORT_C(void,Fl_Slider_bounds)(fl_Slider slider,double a,double b){+    (static_cast<Fl_Slider*>(slider))->bounds(a,b);+  }+  FL_EXPORT_C(double,Fl_Slider_minimum)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->minimum();+  }+  FL_EXPORT_C(void,Fl_Slider_set_minimum)(fl_Slider slider,double a){+    (static_cast<Fl_Slider*>(slider))->minimum(a);+  }+  FL_EXPORT_C(double,Fl_Slider_maximum)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->maximum();+  }+  FL_EXPORT_C(void,Fl_Slider_set_maximum)(fl_Slider slider,double a){+    (static_cast<Fl_Slider*>(slider))->maximum(a);+  }+  FL_EXPORT_C(void,Fl_Slider_precision)(fl_Slider slider,int precision){+    (static_cast<Fl_Slider*>(slider))->precision(precision);+  }+  FL_EXPORT_C(void,Fl_Slider_range)(fl_Slider slider,double a,double b){+    (static_cast<Fl_Slider*>(slider))->range(a,b);+  }+  FL_EXPORT_C(void,Fl_Slider_set_step)(fl_Slider slider,int a){+    (static_cast<Fl_Slider*>(slider))->step(a);+  }+  FL_EXPORT_C(void,Fl_Slider_set_step_with_a_b)(fl_Slider slider,double a,int b){+    (static_cast<Fl_Slider*>(slider))->step(a,b);+  }+  FL_EXPORT_C(void,Fl_Slider_step_with_s)(fl_Slider slider,double s){+    (static_cast<Fl_Slider*>(slider))->step(s);+  }+  FL_EXPORT_C(double,Fl_Slider_step)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->step();+  }+  FL_EXPORT_C(double,Fl_Slider_value)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->value();+  }+  FL_EXPORT_C(int,Fl_Slider_set_value)(fl_Slider slider,double v){+    return (static_cast<Fl_Slider*>(slider))->value(v);+  }+  FL_EXPORT_C(int,Fl_Slider_format)(fl_Slider slider,char* format){+    return (static_cast<Fl_Slider*>(slider))->format(format);+  }+  FL_EXPORT_C(double,Fl_Slider_round)(fl_Slider slider,double v){+    return (static_cast<Fl_Slider*>(slider))->round(v);+  }+  FL_EXPORT_C(double,Fl_Slider_clamp)(fl_Slider slider,double v){+    return (static_cast<Fl_Slider*>(slider))->clamp(v);+  }+  FL_EXPORT_C(double,Fl_Slider_increment)(fl_Slider slider,double v,int n){+    return (static_cast<Fl_Slider*>(slider))->increment(v,n);+  }+  FL_EXPORT_C(fl_Slider, Fl_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Slider* slider = new Fl_Slider(x,y,w,h,label);+    return (static_cast<fl_Slider>(slider));+  }+  FL_EXPORT_C(fl_Slider, Fl_Slider_New)(int x, int y, int w, int h) {+    Fl_Slider* slider = new Fl_Slider(x,y,w,h,0);+    return (fl_Slider)slider;+  }+  FL_EXPORT_C(fl_Slider,    Fl_Slider_New_WithT)(uchar t, int x, int y, int w, int h, const char* label){+    Fl_Slider* slider = new Fl_Slider(t,x,y,w,h,label);+    return (fl_Slider)slider;+  }+  FL_EXPORT_C(fl_Fill_Slider, Fl_Fill_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Fill_Slider* slider = new Fl_Fill_Slider(x,y,w,h,label);+    return (static_cast<fl_Fill_Slider>(slider));+  }+  FL_EXPORT_C(fl_Fill_Slider, Fl_Fill_Slider_New)(int x, int y, int w, int h) {+    Fl_Fill_Slider* slider = new Fl_Fill_Slider(x,y,w,h,0);+    return (fl_Fill_Slider)slider;+  }+  FL_EXPORT_C(fl_Hor_Slider, Fl_Hor_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Hor_Slider* slider = new Fl_Hor_Slider(x,y,w,h,label);+    return (static_cast<fl_Hor_Slider>(slider));+  }+  FL_EXPORT_C(fl_Hor_Slider, Fl_Hor_Slider_New)(int x, int y, int w, int h) {+    Fl_Hor_Slider* slider = new Fl_Hor_Slider(x,y,w,h,0);+    return (fl_Hor_Slider)slider;+  }+  FL_EXPORT_C(fl_Hor_Nice_Slider, Fl_Hor_Nice_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Hor_Nice_Slider* slider = new Fl_Hor_Nice_Slider(x,y,w,h,label);+    return (static_cast<fl_Hor_Nice_Slider>(slider));+  }+  FL_EXPORT_C(fl_Hor_Nice_Slider, Fl_Hor_Nice_Slider_New)(int x, int y, int w, int h) {+    Fl_Hor_Nice_Slider* slider = new Fl_Hor_Nice_Slider(x,y,w,h,0);+    return (fl_Hor_Nice_Slider)slider;+  }+  FL_EXPORT_C(fl_Hor_Fill_Slider, Fl_Hor_Fill_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Hor_Fill_Slider* slider = new Fl_Hor_Fill_Slider(x,y,w,h,label);+    return (static_cast<fl_Hor_Fill_Slider>(slider));+  }+  FL_EXPORT_C(fl_Hor_Fill_Slider, Fl_Hor_Fill_Slider_New)(int x, int y, int w, int h) {+    Fl_Hor_Fill_Slider* slider = new Fl_Hor_Fill_Slider(x,y,w,h,0);+    return (fl_Hor_Fill_Slider)slider;+  }+  FL_EXPORT_C(fl_Nice_Slider, Fl_Nice_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Nice_Slider* slider = new Fl_Nice_Slider(x,y,w,h,label);+    return (static_cast<fl_Nice_Slider>(slider));+  }+  FL_EXPORT_C(fl_Nice_Slider, Fl_Nice_Slider_New)(int x, int y, int w, int h) {+    Fl_Nice_Slider* slider = new Fl_Nice_Slider(x,y,w,h,0);+    return (fl_Nice_Slider)slider;+  }+  FL_EXPORT_C(void,      Fl_Slider_Destroy)(fl_Slider slider){+    delete (static_cast<Fl_Slider*>(slider));+  }+  FL_EXPORT_C(int,Fl_Slider_scrollvalue)(fl_Slider slider,int pos,int size,int first,int total){+    return (static_cast<Fl_Slider*>(slider))->scrollvalue(pos,size,first,total);+  }+  FL_EXPORT_C(float,Fl_Slider_set_slider_size)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->slider_size();+  }+  FL_EXPORT_C(void,Fl_Slider_slider_size)(fl_Slider slider,double v){+    (static_cast<Fl_Slider*>(slider))->slider_size(v);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Slider_slider)(fl_Slider slider){+    return (static_cast<Fl_Slider*>(slider))->slider();+  }+  FL_EXPORT_C(void,Fl_Slider_set_slider)(fl_Slider slider,Fl_Boxtype c){+    (static_cast<Fl_Slider*>(slider))->slider(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_SliderC.h view
@@ -0,0 +1,149 @@+#ifndef __FL_SLIDER_C__+#define __FL_SLIDER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Slider is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Slider.H"+#include "FL/Fl_Fill_Slider.H"+#include "FL/Fl_Hor_Slider.H"+#include "FL/Fl_Hor_Fill_Slider.H"+#include "FL/Fl_Hor_Nice_Slider.H"+#include "FL/Fl_Nice_Slider.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Slider_handle)(fl_Widget self, int event);+  FL_EXPORT_C(int,Fl_Slider_handle_super)(fl_Widget self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Slider_parent)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_parent)(fl_Slider slider, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Slider_type)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_type)(fl_Slider slider, uchar t);++  FL_EXPORT_C(int,          Fl_Slider_x)(fl_Slider slider);+  FL_EXPORT_C(int,          Fl_Slider_y)(fl_Slider slider);+  FL_EXPORT_C(int,          Fl_Slider_w)(fl_Slider slider);+  FL_EXPORT_C(int,          Fl_Slider_h)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_align)(fl_Slider slider, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Slider_align)(fl_Slider slider);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Slider_box)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_box)(fl_Slider slider, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Slider_color)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_color)(fl_Slider slider, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Slider_set_color_with_bg_sel)(fl_Slider slider,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Slider_selection_color)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_selection_color)(fl_Slider slider, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Slider_label)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_copy_label)(fl_Slider slider, const char* new_label);+  FL_EXPORT_C(void,         Fl_Slider_set_label)(fl_Slider slider, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Slider_labeltype)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_labeltype)(fl_Slider slider, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Slider_labelcolor)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_labelcolor)(fl_Slider slider, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Slider_labelfont)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_labelfont)(fl_Slider slider, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Slider_labelsize)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_labelsize)(fl_Slider slider, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Slider_image)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_image)(fl_Slider slider, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Slider_deimage)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_deimage)(fl_Slider slider, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Slider_tooltip)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_copy_tooltip)(fl_Slider slider, const char* text);+  FL_EXPORT_C(void,         Fl_Slider_set_tooltip)(fl_Slider slider, const char* text);+  FL_EXPORT_C(void,         Fl_Slider_set_callback_with_user_data)(fl_Slider slider, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Slider_set_callback)(fl_Slider slider, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Slider_other_data)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_other_data)(fl_Slider slider, void* v);+  FL_EXPORT_C(void*,        Fl_Slider_user_data)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_user_data)(fl_Slider slider, void* v);+  FL_EXPORT_C(long,         Fl_Slider_argument)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_argument)(fl_Slider slider, long v);+  FL_EXPORT_C(Fl_When,      Fl_Slider_when)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_when)(fl_Slider slider, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Slider_visible)(fl_Slider slider);+  FL_EXPORT_C(int,          Fl_Slider_visible_r)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_show_super)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_show)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_hide_super)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_hide)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_visible)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_clear_visible)(fl_Slider slider);+  FL_EXPORT_C(unsigned int, Fl_Slider_active)(fl_Slider slider);+  FL_EXPORT_C(int,          Fl_Slider_active_r)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_activate)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_deactivate)(fl_Slider slider);+  FL_EXPORT_C(unsigned int, Fl_Slider_output)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_output)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_clear_output)(fl_Slider slider);+  FL_EXPORT_C(unsigned int, Fl_Slider_takesevents)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_changed)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_clear_changed)(fl_Slider slider);+  FL_EXPORT_C(int,          Fl_Slider_take_focus)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_set_visible_focus)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_clear_visible_focus)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_modify_visible_focus)(fl_Slider slider, int v);+  FL_EXPORT_C(unsigned int, Fl_Slider_visible_focus)(fl_Slider slider);+  FL_EXPORT_C(int,          Fl_Slider_contains)(fl_Slider slider, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Slider_inside)(fl_Slider slider, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Slider_redraw)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_redraw_label)(fl_Slider slider);+  FL_EXPORT_C(uchar,        Fl_Slider_damage)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_clear_damage_with_bitmask)(fl_Slider slider, uchar c);+  FL_EXPORT_C(void,         Fl_Slider_clear_damage)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_damage_with_text)(fl_Slider slider, uchar c);+  FL_EXPORT_C(void,         Fl_Slider_damage_inside_widget)(fl_Slider slider, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Slider_draw_label_with_xywh_alignment)(fl_Slider slider, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Slider_measure_label)(fl_Slider slider, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Slider_window)(fl_Slider slider);+  FL_EXPORT_C(fl_Window,    Fl_Slider_top_window)(fl_Slider slider);+  FL_EXPORT_C(fl_Window ,   Fl_Slider_top_window_offset)(fl_Slider slider, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Gl_Window, Fl_Slider_as_gl_window_super)(fl_Slider slider);+  FL_EXPORT_C(fl_Gl_Window, Fl_Slider_as_gl_window)(fl_Slider slider);+  FL_EXPORT_C(void,         Fl_Slider_resize_super)(fl_Table table,int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Slider_resize)(fl_Table table,int X, int Y, int W, int H);++  /* Inherited from Fl_Valuator */+  FL_EXPORT_C(void, Fl_Slider_bounds)(fl_Slider slider, double a, double b);+  FL_EXPORT_C(double, Fl_Slider_minimum)(fl_Slider slider);+  FL_EXPORT_C(void, Fl_Slider_set_minimum)(fl_Slider slider, double a);+  FL_EXPORT_C(double, Fl_Slider_maximum)(fl_Slider slider);+  FL_EXPORT_C(void, Fl_Slider_set_maximum)(fl_Slider slider, double a);+  FL_EXPORT_C(void, Fl_Slider_range)(fl_Slider slider, double a, double b);+  FL_EXPORT_C(void, Fl_Slider_set_step)(fl_Slider slider, int a);+  FL_EXPORT_C(void, Fl_Slider_set_step_with_a_b)(fl_Slider slider, double a, int b);+  FL_EXPORT_C(void, Fl_Slider_step_with_s)(fl_Slider slider, double s);+  FL_EXPORT_C(double, Fl_Slider_step)(fl_Slider slider);+  FL_EXPORT_C(void, Fl_Slider_precision)(fl_Slider slider, int precision);+  FL_EXPORT_C(double, Fl_Slider_value)(fl_Slider slider);+  FL_EXPORT_C(int, Fl_Slider_set_value)(fl_Slider slider, double v);+  FL_EXPORT_C(int, Fl_Slider_format)(fl_Slider slider, char* format);+  FL_EXPORT_C(double, Fl_Slider_round)(fl_Slider slider, double v);+  FL_EXPORT_C(double, Fl_Slider_clamp)(fl_Slider slider, double v);+  FL_EXPORT_C(double, Fl_Slider_increment)(fl_Slider slider, double v, int n);++  /* Fl_Slider specific */+  FL_EXPORT_C(fl_Slider,    Fl_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Slider   , Fl_Slider_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Slider,    Fl_Slider_New_WithT)(uchar t, int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Fill_Slider,    Fl_Fill_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Fill_Slider   , Fl_Fill_Slider_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Hor_Slider,    Fl_Hor_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Hor_Slider   , Fl_Hor_Slider_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Hor_Fill_Slider,    Fl_Hor_Fill_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Hor_Fill_Slider   , Fl_Hor_Fill_Slider_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Hor_Nice_Slider,    Fl_Hor_Nice_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Hor_Nice_Slider   , Fl_Hor_Nice_Slider_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Nice_Slider,    Fl_Nice_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Nice_Slider   , Fl_Nice_Slider_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,      Fl_Slider_Destroy)(fl_Slider slider);+  FL_EXPORT_C(int, Fl_Slider_scrollvalue)(fl_Slider slider, int pos,int size,int first,int total);+  FL_EXPORT_C(float, Fl_Slider_set_slider_size)(fl_Slider slider);+  FL_EXPORT_C(void, Fl_Slider_slider_size)(fl_Slider slider, double v);+  FL_EXPORT_C(Fl_Boxtype, Fl_Slider_slider)(fl_Slider slider);+  FL_EXPORT_C(void, Fl_Slider_set_slider)(fl_Slider slider, Fl_Boxtype c);+#ifdef __cplusplus+}+#endif+#endif /* __FL_SLIDER_C__ */
+ c-src/Fl_Sys_Menu_BarC.cpp view
@@ -0,0 +1,437 @@+#include "Fl_Sys_Menu_BarC.h"+#include "Utils.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_handle )(fl_Sys_Menu_Bar sys_menu_bar, int event){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_resize )(fl_Sys_Menu_Bar sys_menu_bar,int x, int y, int w, int h){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_show )(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->show();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_hide )(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Sys_Menu_Bar_as_window )(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->as_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Sys_Menu_Bar_as_gl_window )(fl_Sys_Menu_Bar sys_menu_bar){+    return (fl_Gl_Window) (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->as_gl_window();+  }+  FL_EXPORT_C(fl_Group,Fl_Sys_Menu_Bar_parent)(fl_Sys_Menu_Bar sys_menu_bar){+    return (fl_Group) (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->parent();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_parent)(fl_Sys_Menu_Bar sys_menu_bar,fl_Group grp){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Sys_Menu_Bar_type)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->type();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_type)(fl_Sys_Menu_Bar sys_menu_bar,uchar t){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->type(t);+  }++  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_x)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->x();+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_y)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->y();+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_w)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->w();+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_h)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->h();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_align)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Align alignment){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Sys_Menu_Bar_align)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Sys_Menu_Bar_box)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->box();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_box)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Boxtype new_box){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Sys_Menu_Bar_color)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->color();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_color)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Color bg){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_color_with_bg_sel)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Sys_Menu_Bar_selection_color)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_selection_color)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Color a){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Sys_Menu_Bar_label)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->label();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_copy_label)(fl_Sys_Menu_Bar sys_menu_bar,const char* new_label){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_label)(fl_Sys_Menu_Bar sys_menu_bar,const char* text){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Sys_Menu_Bar_labeltype)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_labeltype)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Labeltype a){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_labelcolor)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Color c){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Sys_Menu_Bar_labelcolor)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Sys_Menu_Bar_labelfont)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_labelfont)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Font c){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Sys_Menu_Bar_labelsize)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_labelsize)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Fontsize pix){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Sys_Menu_Bar_image)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->image();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_image)(fl_Sys_Menu_Bar sys_menu_bar,fl_Image pix){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Sys_Menu_Bar_deimage)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->deimage();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_deimage)(fl_Sys_Menu_Bar sys_menu_bar,fl_Image pix){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Sys_Menu_Bar_tooltip)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_copy_tooltip)(fl_Sys_Menu_Bar sys_menu_bar,const char* text){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_tooltip)(fl_Sys_Menu_Bar sys_menu_bar,const char* text){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_callback_with_user_data)(fl_Sys_Menu_Bar sys_menu_bar,fl_Callback cb,void* p){+    Fl_Menu_* castedMenu_ = (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar));+    new C_to_Fl_Callback(castedMenu_, cb, p);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_callback)(fl_Sys_Menu_Bar sys_menu_bar,fl_Callback cb){+    Fl_Menu_* castedMenu_ = (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar));+    new C_to_Fl_Callback(castedMenu_, cb);+  }+  FL_EXPORT_C(void*,Fl_Sys_Menu_Bar_user_data)(fl_Sys_Menu_Bar sys_menu_bar){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_user_data)(fl_Sys_Menu_Bar sys_menu_bar,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Menu_Item*>(sys_menu_bar))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Sys_Menu_Bar_argument)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->argument();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_argument)(fl_Sys_Menu_Bar sys_menu_bar,long v){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Sys_Menu_Bar_when)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->when();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_when)(fl_Sys_Menu_Bar sys_menu_bar,uchar i){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Sys_Menu_Bar_visible)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->visible();+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_visible_r)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_visible)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->visible();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_clear_visible)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Sys_Menu_Bar_active)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->active();+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_active_r)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->active_r();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_activate)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->activate();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_deactivate)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Sys_Menu_Bar_output)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->output();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_output)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->output();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_clear_output)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Sys_Menu_Bar_takesevents)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_changed)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->changed();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_clear_changed)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_take_focus)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_visible_focus)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_clear_visible_focus)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_modify_visible_focus)(fl_Sys_Menu_Bar sys_menu_bar,int v){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Sys_Menu_Bar_visible_focus)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_do_callback)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_do_callback_with_widget_and_user_data)(fl_Sys_Menu_Bar sys_menu_bar,fl_Widget w,long arg){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_do_callback_with_widget_and_default_user_data)(fl_Sys_Menu_Bar sys_menu_bar,fl_Widget w){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_contains)(fl_Sys_Menu_Bar sys_menu_bar,fl_Widget w){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_inside)(fl_Sys_Menu_Bar sys_menu_bar,fl_Widget w){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_redraw)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->redraw();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_redraw_label)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Sys_Menu_Bar_damage)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->damage();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_clear_damage_with_bitmask)(fl_Sys_Menu_Bar sys_menu_bar,uchar c){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_clear_damage)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_damage_with_text)(fl_Sys_Menu_Bar sys_menu_bar,uchar c){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_damage_inside_widget)(fl_Sys_Menu_Bar sys_menu_bar,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_draw_label_with_xywh_alignment)(fl_Sys_Menu_Bar sys_menu_bar,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_measure_label)(fl_Sys_Menu_Bar sys_menu_bar,int* ww,int* hh){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Sys_Menu_Bar, Fl_Sys_Menu_Bar_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Sys_Menu_Bar* sys_menu_bar = new Fl_Sys_Menu_Bar(x,y,w,h,label);+    return (static_cast<fl_Sys_Menu_Bar>(sys_menu_bar));+  }+  FL_EXPORT_C(fl_Sys_Menu_Bar, Fl_Sys_Menu_Bar_New)(int x, int y, int w, int h) {+    Fl_Sys_Menu_Bar* sys_menu_bar = new Fl_Sys_Menu_Bar(x,y,w,h,0);+    return (fl_Sys_Menu_Bar)sys_menu_bar;+  }+  FL_EXPORT_C(void   , Fl_Sys_Menu_Bar_Destroy)(fl_Sys_Menu_Bar sys_menu_bar){+    delete (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar));+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_item_pathname_with_finditem)(fl_Sys_Menu_Bar sys_menu_bar,char* name,int namelen,fl_Menu_Item finditem){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->item_pathname(name,namelen,(static_cast<Fl_Menu_Item*>(finditem)));+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_item_pathname)(fl_Sys_Menu_Bar sys_menu_bar,char* name,int namelen){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->item_pathname(name,namelen);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Sys_Menu_Bar_picked)(fl_Sys_Menu_Bar sys_menu_bar,fl_Menu_Item item){+    return (fl_Menu_Item)(static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->picked((static_cast<Fl_Menu_Item*>(item)));+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Sys_Menu_Bar_find_item_with_name)(fl_Sys_Menu_Bar sys_menu_bar,char* name){+    return (fl_Menu_Item)(static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->find_item(name);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_find_index_with_name)(fl_Sys_Menu_Bar sys_menu_bar,char* name){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->find_index(name);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_find_index_with_item)(fl_Sys_Menu_Bar sys_menu_bar,fl_Menu_Item item){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->find_index((static_cast<Fl_Menu_Item*>(item)));+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Sys_Menu_Bar_test_shortcut)(fl_Sys_Menu_Bar sys_menu_bar){+    return (fl_Menu_Item)(static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->test_shortcut();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_global)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->global();+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Sys_Menu_Bar_menu)(fl_Sys_Menu_Bar sys_menu_bar){+    return (fl_Menu_Item)(static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->menu();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_menu_with_m)(fl_Sys_Menu_Bar sys_menu_bar,fl_Menu_Item* item, int size){+    Fl_Menu_Item* converted = convert(item,size);+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->menu(converted);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_copy)(fl_Sys_Menu_Bar sys_menu_bar,fl_Menu_Item m){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->copy((static_cast<Fl_Menu_Item*>(m)));+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_copy_with_user_data)(fl_Sys_Menu_Bar sys_menu_bar,fl_Menu_Item m,void* user_data){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->copy((static_cast<Fl_Menu_Item*>(m)),user_data);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_insert)(fl_Sys_Menu_Bar sys_menu_bar,int index,char* name,int shortcut,fl_Callback* cb){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_insert((static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar)),index,name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_insert_with_flags)(fl_Sys_Menu_Bar sys_menu_bar,int index,char* name,int shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_insert((static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar)),index,name,shortcut, flags);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_insert_with_user_data_flags)(fl_Sys_Menu_Bar sys_menu_bar,int index,char* name,int shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_insert((static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar)),index,name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_add)(fl_Sys_Menu_Bar sys_menu_bar,char* name,int shortcut,fl_Callback* cb){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_add_with_user_data)(fl_Sys_Menu_Bar sys_menu_bar,char* name,int shortcut,fl_Callback* cb,void* user_data){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_add_with_flags)(fl_Sys_Menu_Bar sys_menu_bar,char* name,int shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_add_with_user_data_flags)(fl_Sys_Menu_Bar sys_menu_bar,char* name,int shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_add_with_shortcutname)(fl_Sys_Menu_Bar sys_menu_bar,char* name,char* shortcut,fl_Callback* cb){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_add_with_shortcutname_user_data)(fl_Sys_Menu_Bar sys_menu_bar,char* name,char* shortcut,fl_Callback* cb,void* user_data){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar)),name,shortcut,0);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_add_with_shortcutname_flags)(fl_Sys_Menu_Bar sys_menu_bar,char* name,char* shortcut,fl_Callback* cb,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb);+    return callback_interceptor->menu_add((static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_add_with_shortcutname_user_data_flags)(fl_Sys_Menu_Bar sys_menu_bar,char* name,char* shortcut,fl_Callback* cb,void* user_data,int flags){+    C_to_Fl_Callback* callback_interceptor = new C_to_Fl_Callback(cb, user_data);+    return callback_interceptor->menu_add((static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar)),name,shortcut,flags);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_size)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->size();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_size)(fl_Sys_Menu_Bar sys_menu_bar,int W,int H){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->size(W,H);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_clear)(fl_Sys_Menu_Bar sys_menu_bar){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->clear();+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_clear_submenu)(fl_Sys_Menu_Bar sys_menu_bar,int index){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->clear_submenu(index);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_replace)(fl_Sys_Menu_Bar sys_menu_bar,int i,char* name){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->replace(i,name);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_remove)(fl_Sys_Menu_Bar sys_menu_bar,int i ){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->remove(i);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_shortcut)(fl_Sys_Menu_Bar sys_menu_bar,int i,int s){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->shortcut(i,s);+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_mode)(fl_Sys_Menu_Bar sys_menu_bar,int i,int fl){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->mode(i,fl);+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_mode)(fl_Sys_Menu_Bar sys_menu_bar,int i){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->mode(i);+  }+  FL_EXPORT_C(fl_Menu_Item,Fl_Sys_Menu_Bar_mvalue)(fl_Sys_Menu_Bar sys_menu_bar){+    return (fl_Menu_Item)(static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->mvalue();+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_value)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->value();+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_value_with_item)(fl_Sys_Menu_Bar sys_menu_bar,fl_Menu_Item item){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->value(static_cast<Fl_Menu_Item*>(item));+  }+  FL_EXPORT_C(int,Fl_Sys_Menu_Bar_value_with_index)(fl_Sys_Menu_Bar sys_menu_bar,int index){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->value(index);+  }+  FL_EXPORT_C(char*,Fl_Sys_Menu_Bar_text)(fl_Sys_Menu_Bar sys_menu_bar){+    return (char*)(static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->text();+  }+  FL_EXPORT_C(char*,Fl_Sys_Menu_Bar_text_with_index)(fl_Sys_Menu_Bar sys_menu_bar,int i){+    return (char*)(static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->text(i);+  }+  FL_EXPORT_C(Fl_Font,Fl_Sys_Menu_Bar_textfont)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->textfont();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_textfont)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Font c){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->textfont(c);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Sys_Menu_Bar_textsize)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->textsize();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_textsize)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Fontsize c){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->textsize(c);+  }+  FL_EXPORT_C(Fl_Color,Fl_Sys_Menu_Bar_textcolor)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_textcolor)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Color c){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->textcolor(c);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Sys_Menu_Bar_down_box)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->down_box();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_down_box)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Boxtype b){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->down_box(b);+  }+  FL_EXPORT_C(Fl_Color,Fl_Sys_Menu_Bar_down_color)(fl_Sys_Menu_Bar sys_menu_bar){+    return (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->down_color();+  }+  FL_EXPORT_C(void,Fl_Sys_Menu_Bar_set_down_color)(fl_Sys_Menu_Bar sys_menu_bar,unsigned c){+    (static_cast<Fl_Sys_Menu_Bar*>(sys_menu_bar))->down_color(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Sys_Menu_BarC.h view
@@ -0,0 +1,164 @@+#ifndef __FL_SYS_MENU_BAR_C__+#define __FL_SYS_MENU_BAR_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Sys_Menu_Bar.H"+#include "Fl_CallbackC.h"+#include "Fl_Menu_C.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,          Fl_Sys_Menu_Bar_handle)(fl_Group self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Sys_Menu_Bar_parent)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_parent)(fl_Sys_Menu_Bar sys_menu_bar, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Sys_Menu_Bar_type)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_type)(fl_Sys_Menu_Bar sys_menu_bar, uchar t);++  FL_EXPORT_C(int,          Fl_Sys_Menu_Bar_x)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(int,          Fl_Sys_Menu_Bar_y)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(int,          Fl_Sys_Menu_Bar_w)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(int,          Fl_Sys_Menu_Bar_h)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_align)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Sys_Menu_Bar_align)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Sys_Menu_Bar_box)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_box)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Sys_Menu_Bar_color)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_color)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_color_with_bg_sel)(fl_Sys_Menu_Bar sys_menu_bar,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Sys_Menu_Bar_selection_color)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_selection_color)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Sys_Menu_Bar_label)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_copy_label)(fl_Sys_Menu_Bar sys_menu_bar, const char* new_label);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_label)(fl_Sys_Menu_Bar sys_menu_bar, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Sys_Menu_Bar_labeltype)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_labeltype)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Sys_Menu_Bar_labelcolor)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_labelcolor)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Sys_Menu_Bar_item_labelfont)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_item_labelfont)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Sys_Menu_Bar_item_labelsize)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_item_labelsize)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Sys_Menu_Bar_image)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_image)(fl_Sys_Menu_Bar sys_menu_bar, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Sys_Menu_Bar_deimage)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_deimage)(fl_Sys_Menu_Bar sys_menu_bar, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Sys_Menu_Bar_tooltip)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_copy_tooltip)(fl_Sys_Menu_Bar sys_menu_bar, const char* text);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_tooltip)(fl_Sys_Menu_Bar sys_menu_bar, const char* text);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_callback_with_user_data)(fl_Sys_Menu_Bar sys_menu_bar, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_callback)(fl_Sys_Menu_Bar sys_menu_bar, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Sys_Menu_Bar_other_data)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_other_data)(fl_Sys_Menu_Bar sys_menu_bar, void* v);+  FL_EXPORT_C(void*,        Fl_Sys_Menu_Bar_user_data)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_user_data)(fl_Sys_Menu_Bar sys_menu_bar, void* v);+  FL_EXPORT_C(long,         Fl_Sys_Menu_Bar_argument)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_argument)(fl_Sys_Menu_Bar sys_menu_bar, long v);+  FL_EXPORT_C(Fl_When,      Fl_Sys_Menu_Bar_when)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_when)(fl_Sys_Menu_Bar sys_menu_bar, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Sys_Menu_Bar_visible)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(int,          Fl_Sys_Menu_Bar_visible_r)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_show)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_hide)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_visible)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_clear_visible)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(unsigned int, Fl_Sys_Menu_Bar_active)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(int,          Fl_Sys_Menu_Bar_active_r)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_activate)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_deactivate)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(unsigned int, Fl_Sys_Menu_Bar_output)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_output)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_clear_output)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(unsigned int, Fl_Sys_Menu_Bar_takesevents)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_changed)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_clear_changed)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(int,          Fl_Sys_Menu_Bar_take_focus)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_set_visible_focus)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_clear_visible_focus)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_modify_visible_focus)(fl_Sys_Menu_Bar sys_menu_bar, int v);+  FL_EXPORT_C(unsigned int, Fl_Sys_Menu_Bar_visible_focus)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(int,          Fl_Sys_Menu_Bar_contains)(fl_Sys_Menu_Bar sys_menu_bar, fl_Group w);+  FL_EXPORT_C(int,          Fl_Sys_Menu_Bar_inside)(fl_Sys_Menu_Bar sys_menu_bar, fl_Group w);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_redraw)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_redraw_label)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(uchar,        Fl_Sys_Menu_Bar_damage)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_clear_damage_with_bitmask)(fl_Sys_Menu_Bar sys_menu_bar, uchar c);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_clear_damage)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_damage_with_text)(fl_Sys_Menu_Bar sys_menu_bar, uchar c);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_damage_inside_group)(fl_Sys_Menu_Bar sys_menu_bar, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_draw_label_with_xywh_alignment)(fl_Sys_Menu_Bar sys_menu_bar, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_measure_label)(fl_Sys_Menu_Bar sys_menu_bar, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Sys_Menu_Bar_window)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(fl_Window,    Fl_Sys_Menu_Bar_top_window)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(fl_Window ,   Fl_Sys_Menu_Bar_top_window_offset)(fl_Sys_Menu_Bar sys_menu_bar, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Sys_Menu_Bar_as_group)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(fl_Gl_Window, Fl_Sys_Menu_Bar_as_gl_window)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void,         Fl_Sys_Menu_Bar_resize)(fl_Sys_Menu_Bar sys_menu_bar,int X, int Y, int W, int H);++  /* Fl_Sys_Menu_Bar specific */+  FL_EXPORT_C(fl_Sys_Menu_Bar,    Fl_Sys_Menu_Bar_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Sys_Menu_Bar, Fl_Sys_Menu_Bar_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_Destroy)(fl_Sys_Menu_Bar sys_menu_bar);++  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_item_pathname_with_finditem)(fl_Sys_Menu_Bar sys_menu_bar, char* name, int namelen,  fl_Menu_Item finditem);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_item_pathname)(fl_Sys_Menu_Bar sys_menu_bar, char* name, int namelen);+  FL_EXPORT_C( fl_Menu_Item, Fl_Sys_Menu_Bar_picked)(fl_Sys_Menu_Bar sys_menu_bar,  const fl_Menu_Item item);+  FL_EXPORT_C( fl_Menu_Item, Fl_Sys_Menu_Bar_find_item_with_name)(fl_Sys_Menu_Bar sys_menu_bar,  char* name);+  //  FL_EXPORT_C( fl_Menu_Item, Fl_Sys_Menu_Bar_find_item_with_cb)(fl_Sys_Menu_Bar sys_menu_bar, fl_Callback cb); Don't know how to do this+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_find_index_with_name)(fl_Sys_Menu_Bar sys_menu_bar,  char* name);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_find_index_with_item)(fl_Sys_Menu_Bar sys_menu_bar,  fl_Menu_Item item);+  //  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_find_index_with_cb)(fl_Sys_Menu_Bar sys_menu_bar, fl_Callback cb); Don't know how to do this+  FL_EXPORT_C( fl_Menu_Item, Fl_Sys_Menu_Bar_test_shortcut)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_global)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C( fl_Menu_Item, Fl_Sys_Menu_Bar_menu)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_menu_with_m)(fl_Sys_Menu_Bar sys_menu_bar,  fl_Menu_Item* items, int size);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_copy)(fl_Sys_Menu_Bar sys_menu_bar,  fl_Menu_Item m);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_copy_with_user_data)(fl_Sys_Menu_Bar sys_menu_bar,  fl_Menu_Item m, void* user_data);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_insert)(fl_Sys_Menu_Bar sys_menu_bar, int index,  char* name, int shortcut, fl_Callback cb);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_insert_with_user_data)(fl_Sys_Menu_Bar sys_menu_bar, int index,  char*, int shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_insert_with_flags)(fl_Sys_Menu_Bar sys_menu_bar, int index,  char* name, int shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_insert_with_user_data_flags)(fl_Sys_Menu_Bar sys_menu_bar, int index,  char* name, int shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_insert_with_shortcutname)(fl_Sys_Menu_Bar sys_menu_bar, int index,  char* name, char* shortcut);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_insert_with_shortcutname_user_data)(fl_Sys_Menu_Bar sys_menu_bar, int index,  char* name,   char* shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_insert_with_shortcutname_flags)(fl_Sys_Menu_Bar sys_menu_bar, int index,  char* name,   char* shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_insert_with_shortcutname_user_data_flags)(fl_Sys_Menu_Bar sys_menu_bar, int index,  char* name,   char* shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_add)(fl_Sys_Menu_Bar sys_menu_bar, char* name, int shortcut, fl_Callback);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_add_with_user_data)(fl_Sys_Menu_Bar sys_menu_bar, char* name, int shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_add_with_flags)(fl_Sys_Menu_Bar sys_menu_bar, char* name, int shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_add_with_user_data_flags)(fl_Sys_Menu_Bar sys_menu_bar, char* name, int shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_add_with_shortcutname)(fl_Sys_Menu_Bar sys_menu_bar, char* name,   char* shortcut, fl_Callback* cb);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_add_with_shortcutname_user_data)(fl_Sys_Menu_Bar sys_menu_bar, char* name,   char* shortcut, fl_Callback* cb, void* user_data);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_add_with_shortcutname_flags)(fl_Sys_Menu_Bar sys_menu_bar, char* name,   char* shortcut, fl_Callback* cb, int flags);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_add_with_shortcutname_user_data_flags)(fl_Sys_Menu_Bar sys_menu_bar, char* name,  char* shortcut, fl_Callback* cb, void* user_data, int flags);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_add_with_name)(fl_Sys_Menu_Bar sys_menu_bar,  char* name);+  FL_EXPORT_C(int , Fl_Sys_Menu_Bar_size)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_set_size)(fl_Sys_Menu_Bar sys_menu_bar, int W, int H);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_clear)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_clear_submenu)(fl_Sys_Menu_Bar sys_menu_bar, int index);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_replace)(fl_Sys_Menu_Bar sys_menu_bar, int, char* name);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_remove)(fl_Sys_Menu_Bar sys_menu_bar, int);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_shortcut)(fl_Sys_Menu_Bar sys_menu_bar, int i, int s);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_set_mode)(fl_Sys_Menu_Bar sys_menu_bar, int i,int fl);+  FL_EXPORT_C(int , Fl_Sys_Menu_Bar_mode)(fl_Sys_Menu_Bar sys_menu_bar, int i);+  FL_EXPORT_C(fl_Menu_Item, Fl_Sys_Menu_Bar_mvalue)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_value)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_value_with_item)(fl_Sys_Menu_Bar sys_menu_bar,  fl_Menu_Item item);+  FL_EXPORT_C(int, Fl_Sys_Menu_Bar_value_with_index)(fl_Sys_Menu_Bar sys_menu_bar, int index);+  FL_EXPORT_C(char*, Fl_Sys_Menu_Bar_text)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(char*, Fl_Sys_Menu_Bar_text_with_index)(fl_Sys_Menu_Bar sys_menu_bar, int i);+  FL_EXPORT_C(Fl_Font, Fl_Sys_Menu_Bar_textfont)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_set_textfont)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize, Fl_Sys_Menu_Bar_textsize)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_set_textsize)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Fontsize c);+  FL_EXPORT_C(Fl_Color, Fl_Sys_Menu_Bar_textcolor)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_set_textcolor)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Color c);+  FL_EXPORT_C(Fl_Boxtype, Fl_Sys_Menu_Bar_down_box)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_set_down_box)(fl_Sys_Menu_Bar sys_menu_bar, Fl_Boxtype b);+  FL_EXPORT_C(Fl_Color, Fl_Sys_Menu_Bar_down_color)(fl_Sys_Menu_Bar sys_menu_bar);+  FL_EXPORT_C(void, Fl_Sys_Menu_Bar_set_down_color)(fl_Sys_Menu_Bar sys_menu_bar, unsigned c);+#ifdef __cplusplus+}+#endif+#endif /* __FL_SYS_MENU_BAR_C__ */
+ c-src/Fl_TableC.cpp view
@@ -0,0 +1,769 @@+#include "Fl_TableC.h"+#ifdef __cplusplus+Fl_DerivedTable::Fl_DerivedTable(int X, int Y, int W, int H, const char *l, fl_Table_Virtual_Funcs* funcs) : Fl_Table(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = (void*)0;+ }+Fl_DerivedTable::Fl_DerivedTable(int X, int Y, int W, int H, fl_Table_Virtual_Funcs* funcs):Fl_Table(X,Y,W,H,0){+    overriddenFuncs = funcs;+    other_data = (void*)0;+  }+Fl_DerivedTable::~Fl_DerivedTable(){+  free(overriddenFuncs);+  free(other_data);+}+void* Fl_DerivedTable::get_other_data(){+  return this->other_data;+}+void Fl_DerivedTable::set_other_data(void* data){+  this->other_data = data;+}+int Fl_DerivedTable::find_cell(TableContext context, int R, int C, int &X, int &Y, int &W, int &H){+  return Fl_Table::find_cell(context,R,C,X,Y,W,H);+}+void Fl_DerivedTable::draw(){+  if (this->overriddenFuncs->draw != NULL) {+    this->overriddenFuncs->draw((fl_Table) this);+  }+  else {+    Fl_Table::draw();+  }+}+void Fl_DerivedTable::draw_box(){+  Fl_Table::draw_box();+}+void Fl_DerivedTable::draw_box(Fl_Boxtype t, Fl_Color c){+  Fl_Table::draw_box(t,c);+}+void Fl_DerivedTable::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+  Fl_Table::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedTable::draw_backdrop(){+  Fl_Table::draw_backdrop();+}+void Fl_DerivedTable::draw_focus(){+  Fl_Table::draw_focus();+}+void Fl_DerivedTable::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+  Fl_Table::draw_focus(t,x,y,w,h);+}+void Fl_DerivedTable::draw_label(){+  Fl_Table::draw_label();+}+void Fl_DerivedTable::draw_label(int x,int y,int w,int h,Fl_Align alignment){+  Fl_Table::draw_label(x,y,w,h,alignment);+}+int Fl_DerivedTable::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Table) this,event);+  }+  else {+    i = Fl_Table::handle(event);+  }+  return i;+}+void Fl_DerivedTable::resize_super(int x, int y, int w, int h){+  Fl_Table::resize(x,y,w,h);+}+void Fl_DerivedTable::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Table) this,x,y,w,h);+  }+  else {+    Fl_Table::resize(x,y,w,h);+  }+}+void Fl_DerivedTable::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Table) this);+  }+  else {+    Fl_Table::show();+  }+}+void Fl_DerivedTable::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Table) this);+  }+  else {+    Fl_Table::hide();+  }+}+Fl_Group* Fl_DerivedTable::as_group(){+  Fl_Group* grp;+  if (this->overriddenFuncs->as_group != NULL) {+    grp = (static_cast<Fl_Group*>(this->overriddenFuncs->as_group((fl_Table) this)));+  }+  else {+    grp = Fl_Table::as_group();+  }+  return grp;+}+Fl_Window* Fl_DerivedTable::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Table) this)));+  }+  else {+    win = Fl_Table::as_window();+  }+  return win;+}+Fl_Gl_Window* Fl_DerivedTable::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Table) this)));+  }+  else {+    win = Fl_Table::as_gl_window();+  }+  return win;+}+void Fl_DerivedTable::draw_cell(TableContext tableContext, int R, int C, int X, int Y, int W, int H){+  TableContextC c = (TableContextC)-1;+  switch(tableContext){+  case Fl_Table::CONTEXT_NONE:      {c = CONTEXT_NONEC;      break;}+  case Fl_Table::CONTEXT_STARTPAGE: {c = CONTEXT_STARTPAGEC; break;}+  case Fl_Table::CONTEXT_ENDPAGE:   {c = CONTEXT_ENDPAGEC;   break;}+  case Fl_Table::CONTEXT_ROW_HEADER:{c = CONTEXT_ROW_HEADERC;break;}+  case Fl_Table::CONTEXT_COL_HEADER:{c = CONTEXT_COL_HEADERC;break;}+  case Fl_Table::CONTEXT_CELL:      {c = CONTEXT_CELLC;      break;}+  case Fl_Table::CONTEXT_TABLE:     {c = CONTEXT_TABLEC;     break;}+  case Fl_Table::CONTEXT_RC_RESIZE: {c = CONTEXT_RC_RESIZEC; break;}+  default:                          {c = TableContextC(-1);  break;}+  }+  (*this->overriddenFuncs->draw_cell)((fl_Table) this,c,R,C,X,Y,W,H);+}+void Fl_DerivedTable::clear(){+  if (this->overriddenFuncs->clear != NULL) {+    this->overriddenFuncs->clear((fl_Table) this);+  }+  else {+    Fl_Table::clear();+  }+}+void Fl_DerivedTable::rows(int val){+  if (this->overriddenFuncs->set_rows != NULL) {+    this->overriddenFuncs->set_rows((fl_Table) this, val);+  }+  else {+    Fl_Table::rows(val);+  }+}+void Fl_DerivedTable::cols(int val){+  if (this->overriddenFuncs->set_cols != NULL) {+    this->overriddenFuncs->set_cols((fl_Table) this, val);+  }+  else {+    Fl_Table::cols(val);+  }+}+EXPORT {+#endif+  FL_EXPORT_C(fl_Table_Virtual_Funcs*, Fl_Table_default_virtual_funcs)(){+    fl_Table_Virtual_Funcs* ptr = (fl_Table_Virtual_Funcs*)malloc(sizeof(fl_Table_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->hide = NULL;+    ptr->as_group = NULL;+    ptr->as_window = NULL;+    ptr->as_gl_window = NULL;+    ptr->draw_cell = NULL;+    ptr->clear = NULL;+    ptr->set_rows = NULL;+    ptr->set_cols = NULL;+    return ptr;+  }+  FL_EXPORT_C(int,Fl_Table_handle)(fl_Table self, int event){+    return (static_cast<Fl_DerivedTable*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Table_parent)(fl_Table table){+    return (fl_Group) (static_cast<Fl_DerivedTable*>(table))->parent();+  }+  FL_EXPORT_C(void,Fl_Table_set_parent)(fl_Table table,fl_Group grp){+    (static_cast<Fl_DerivedTable*>(table))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Table_type)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->type();+  }+  FL_EXPORT_C(void,Fl_Table_set_type)(fl_Table table,uchar t){+    (static_cast<Fl_DerivedTable*>(table))->type(t);+  }++FL_EXPORT_C(void, Fl_Table_draw_box)(fl_Table Table){+ (static_cast<Fl_DerivedTable*>(Table))->draw_box();+}+FL_EXPORT_C(void, Fl_Table_draw_box_with_tc)(fl_Table Table,Fl_Boxtype t, Fl_Color c){+ (static_cast<Fl_DerivedTable*>(Table))->draw_box(t,c);+}+FL_EXPORT_C(void, Fl_Table_draw_box_with_txywhc)(fl_Table Table,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+ (static_cast<Fl_DerivedTable*>(Table))->draw_box(t,x,y,w,h,c);+}+FL_EXPORT_C(void, Fl_Table_draw_backdrop)(fl_Table Table){+ (static_cast<Fl_DerivedTable*>(Table))->draw_backdrop();+}+FL_EXPORT_C(void, Fl_Table_draw_focus)(fl_Table Table){+ (static_cast<Fl_DerivedTable*>(Table))->draw_focus();+}+FL_EXPORT_C(void, Fl_Table_draw_focus_with_txywh)(fl_Table Table,Fl_Boxtype t, int x,int y,int w,int h){+ (static_cast<Fl_DerivedTable*>(Table))->draw_focus(t,x,y,w,h);+}+FL_EXPORT_C(void, Fl_Table_draw_label)(fl_Table Table){+ (static_cast<Fl_DerivedTable*>(Table))->draw_label();+}+  FL_EXPORT_C(int,Fl_Table_x)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->x();+  }+  FL_EXPORT_C(int,Fl_Table_y)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->y();+  }+  FL_EXPORT_C(int,Fl_Table_w)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->w();+  }+  FL_EXPORT_C(int,Fl_Table_h)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->h();+  }+  FL_EXPORT_C(void,Fl_Table_set_align)(fl_Table table, Fl_Align alignment){+    (static_cast<Fl_DerivedTable*>(table))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Table_align)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Table_box)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->box();+  }+  FL_EXPORT_C(void,Fl_Table_set_box)(fl_Table table,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedTable*>(table))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Table_color)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->color();+  }+  FL_EXPORT_C(void,Fl_Table_set_color)(fl_Table table,Fl_Color bg){+    (static_cast<Fl_DerivedTable*>(table))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Table_set_color_with_bg_sel)(fl_Table table,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedTable*>(table))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Table_selection_color)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Table_set_selection_color)(fl_Table table,Fl_Color a){+    (static_cast<Fl_DerivedTable*>(table))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Table_label)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->label();+  }+  FL_EXPORT_C(void,Fl_Table_copy_label)(fl_Table table,const char* new_label){+    (static_cast<Fl_DerivedTable*>(table))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Table_set_label)(fl_Table table,const char* text){+    (static_cast<Fl_DerivedTable*>(table))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Table_labeltype)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Table_set_labeltype)(fl_Table table,Fl_Labeltype a){+    (static_cast<Fl_DerivedTable*>(table))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Table_set_labelcolor)(fl_Table table,Fl_Color c){+    (static_cast<Fl_DerivedTable*>(table))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Table_labelcolor)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Table_labelfont)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Table_set_labelfont)(fl_Table table,Fl_Font c){+    (static_cast<Fl_DerivedTable*>(table))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Table_labelsize)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Table_set_labelsize)(fl_Table table,Fl_Fontsize pix){+    (static_cast<Fl_DerivedTable*>(table))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Table_image)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->image();+  }+  FL_EXPORT_C(void,Fl_Table_set_image)(fl_Table table,fl_Image pix){+    (static_cast<Fl_DerivedTable*>(table))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Table_deimage)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->deimage();+  }+  FL_EXPORT_C(void,Fl_Table_set_deimage)(fl_Table table,fl_Image pix){+    (static_cast<Fl_DerivedTable*>(table))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Table_tooltip)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Table_copy_tooltip)(fl_Table table,const char* text){+    (static_cast<Fl_DerivedTable*>(table))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Table_set_tooltip)(fl_Table table,const char* text){+    (static_cast<Fl_DerivedTable*>(table))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Table_set_callback_with_user_data)(fl_Table table,fl_Callback* cb,void* p){+    Fl_DerivedTable* castedWindow = (static_cast<Fl_DerivedTable*>(table));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Table_set_callback)(fl_Table table,fl_Callback* cb){+    Fl_DerivedTable* castedWindow = (static_cast<Fl_DerivedTable*>(table));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Table_other_data)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->get_other_data();+  }+  FL_EXPORT_C(void,Fl_Table_set_other_data)(fl_Table table,void* v){+    (static_cast<Fl_DerivedTable*>(table))->set_other_data(v);+  }+  FL_EXPORT_C(void*,Fl_Table_user_data)(fl_Table table){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedTable*>(table))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedTable*>(table))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Table_set_user_data)(fl_Table table,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Table*>(table))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Table*>(table))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Table*>(table))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Table_argument)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->argument();+  }+  FL_EXPORT_C(void,Fl_Table_set_argument)(fl_Table table,long v){+    (static_cast<Fl_DerivedTable*>(table))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Table_when)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->when();+  }+  FL_EXPORT_C(void,Fl_Table_set_when)(fl_Table table,uchar i){+    (static_cast<Fl_DerivedTable*>(table))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Table_visible)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->visible();+  }+  FL_EXPORT_C(int,Fl_Table_visible_r)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Table_show_super)(fl_Table table){+    return (static_cast<Fl_Table*>(table))->show();+  }+  FL_EXPORT_C(void,Fl_Table_show)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->show();+  }+  FL_EXPORT_C(void,Fl_Table_hide_super)(fl_Table table){+    return (static_cast<Fl_Table*>(table))->hide();+  }+  FL_EXPORT_C(void,Fl_Table_hide)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->hide();+  }+  FL_EXPORT_C(void,Fl_Table_clear_visible)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Table_active)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->active();+  }+  FL_EXPORT_C(int,Fl_Table_active_r)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->active_r();+  }+  FL_EXPORT_C(void,Fl_Table_activate)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->activate();+  }+  FL_EXPORT_C(void,Fl_Table_deactivate)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Table_output)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->output();+  }+  FL_EXPORT_C(void,Fl_Table_set_output)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->output();+  }+  FL_EXPORT_C(void,Fl_Table_clear_output)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Table_takesevents)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Table_set_changed)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->changed();+  }+  FL_EXPORT_C(void,Fl_Table_clear_changed)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Table_take_focus)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Table_set_visible_focus)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Table_clear_visible_focus)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Table_modify_visible_focus)(fl_Table table,int v){+    (static_cast<Fl_DerivedTable*>(table))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Table_visible_focus)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_Table_contains)(fl_Table table,fl_Widget w){+    return (static_cast<Fl_DerivedTable*>(table))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Table_inside)(fl_Table table,fl_Widget w){+    return (static_cast<Fl_DerivedTable*>(table))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Table_redraw)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->redraw();+  }+  FL_EXPORT_C(void,Fl_Table_redraw_label)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Table_damage)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->damage();+  }+  FL_EXPORT_C(void,Fl_Table_clear_damage_with_bitmask)(fl_Table table,uchar c){+    (static_cast<Fl_DerivedTable*>(table))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Table_clear_damage)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Table_damage_with_text)(fl_Table table,uchar c){+    (static_cast<Fl_DerivedTable*>(table))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Table_damage_inside_widget)(fl_Table table,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedTable*>(table))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Table_draw_label_with_xywh_alignment)(fl_Table table,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedTable*>(table))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Table_measure_label)(fl_Table table,int* ww,int* hh){+    (static_cast<Fl_DerivedTable*>(table))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Table_window)(fl_Table table){+    return (fl_Window) (static_cast<Fl_DerivedTable*>(table))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Table_top_window)(fl_Table table){+    return (fl_Window) (static_cast<Fl_DerivedTable*>(table))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Table_top_window_offset)(fl_Table table, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedTable*>(table))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Table_as_group_super)(fl_Table table){+    return (fl_Group) (static_cast<Fl_Table*>(table))->as_group();+  }+  FL_EXPORT_C(fl_Group,Fl_Table_as_group)(fl_Table table){+    return (fl_Group) (static_cast<Fl_DerivedTable*>(table))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Table_as_gl_window_super)(fl_Table table){+    return (fl_Gl_Window) (static_cast<Fl_Table*>(table))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Table_as_gl_window)(fl_Table table){+    return (fl_Gl_Window) (static_cast<Fl_DerivedTable*>(table))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Table_set_resizable_by_reference)(fl_Table table,fl_Widget o){+    (static_cast<Fl_DerivedTable*>(table))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Table_set_resizable)(fl_Table table,fl_Widget o){+    (static_cast<Fl_DerivedTable*>(table))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Table_resizable)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->resizable();+  }+  FL_EXPORT_C(void,Fl_Table_add_resizable)(fl_Table table,fl_Widget o){+    return (static_cast<Fl_DerivedTable*>(table))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Table_set_clip_children)(fl_Table table,int c){+    return (static_cast<Fl_DerivedTable*>(table))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Table_clip_children)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Table_focus)(fl_Table table, fl_Widget W){+    return (static_cast<Fl_DerivedTable*>(table))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Table__ddfdesign_kludge)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(void, Fl_Table_insert_with_before)(fl_Table self,fl_Widget w, fl_Widget before){+    (static_cast<Fl_DerivedTable*>(self))->insert(*(static_cast<Fl_Widget*>(w)),(static_cast<Fl_Widget*>(before)));+  }+  // FL_EXPORT_C(void,Fl_Table_forms_end)(fl_Table self){+  //   (static_cast<Fl_DerivedTable*>(self))->forms_end();+  // }+  FL_EXPORT_C(fl_Table, Fl_Table_New_WithLabel)(int X, int Y, int W, int H, const char *l, fl_Table_Virtual_Funcs* funcs){+    Fl_DerivedTable* table = new Fl_DerivedTable(X,Y,W,H,l,funcs);+    return (fl_Table)table;+  }+  FL_EXPORT_C(fl_Table, Fl_Table_New)(int X, int Y, int W, int H, fl_Table_Virtual_Funcs* funcs){+    Fl_DerivedTable* table = new Fl_DerivedTable(X,Y,W,H,funcs);+    return (fl_Table)table;+  }+  FL_EXPORT_C(void, Fl_Table_Destroy)(fl_Table table){+    delete (static_cast<Fl_DerivedTable*>(table));+  }+  FL_EXPORT_C(void,Fl_Table_set_table_box)(fl_Table table,Fl_Boxtype val){+    return (static_cast<Fl_DerivedTable*>(table))->table_box(val);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Table_table_box)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->table_box();+  }+  FL_EXPORT_C(int,Fl_Table_rows)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->rows();+  }+  FL_EXPORT_C(int,Fl_Table_cols)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->cols();+  }+  FL_EXPORT_C(void,Fl_Table_set_rows_super)(fl_Table table,int val){+    (static_cast<Fl_Table*>(table))->rows(val);+  }+  FL_EXPORT_C(void,Fl_Table_set_rows)(fl_Table table, int val){+    (static_cast<Fl_DerivedTable*>(table))->rows(val);+  }+  FL_EXPORT_C(void,Fl_Table_set_cols_super)(fl_Table table,int val){+    (static_cast<Fl_Table*>(table))->cols(val);+  }+  FL_EXPORT_C(void,Fl_Table_set_cols)(fl_Table table, int val){+    (static_cast<Fl_DerivedTable*>(table))->cols(val);+  }+  FL_EXPORT_C(void, Fl_Table_visible_cells)(fl_Table table,int* r1, int* r2, int* c1, int* c2){+    return (static_cast<Fl_DerivedTable*>(table))->visible_cells(*r1,*r2,*c1,*c2);+  };+  FL_EXPORT_C(int,Fl_Table_is_interactive_resize)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->is_interactive_resize();+  }+  FL_EXPORT_C(int,Fl_Table_row_resize)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->row_resize();+  }+  FL_EXPORT_C(void,Fl_Table_set_row_resize)(fl_Table table,int flag){+    return (static_cast<Fl_DerivedTable*>(table))->row_resize(flag);+  }+  FL_EXPORT_C(int,Fl_Table_col_resize)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->col_resize();+  }+  FL_EXPORT_C(void,Fl_Table_set_col_resize)(fl_Table table,int flag){+    return (static_cast<Fl_DerivedTable*>(table))->col_resize(flag);+  }+  FL_EXPORT_C(int,Fl_Table_col_resize_min)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->col_resize_min();+  }+  FL_EXPORT_C(void,Fl_Table_set_col_resize_min)(fl_Table table,int val){+    return (static_cast<Fl_DerivedTable*>(table))->col_resize_min(val);+  }+  FL_EXPORT_C(int,Fl_Table_row_resize_min)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->row_resize_min();+  }+  FL_EXPORT_C(void,Fl_Table_set_row_resize_min)(fl_Table table,int val){+    return (static_cast<Fl_DerivedTable*>(table))->row_resize_min(val);+  }+  FL_EXPORT_C(int,Fl_Table_row_header)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->row_header();+  }+  FL_EXPORT_C(void,Fl_Table_set_row_header)(fl_Table table,int flag){+    return (static_cast<Fl_DerivedTable*>(table))->row_header(flag);+  }+  FL_EXPORT_C(int,Fl_Table_col_header)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->col_header();+  }+  FL_EXPORT_C(void,Fl_Table_set_col_header)(fl_Table table,int flag){+    return (static_cast<Fl_DerivedTable*>(table))->col_header(flag);+  }+  FL_EXPORT_C(void,Fl_Table_set_col_header_height)(fl_Table table,int height){+    return (static_cast<Fl_DerivedTable*>(table))->col_header_height(height);+  }+  FL_EXPORT_C(int,Fl_Table_col_header_height)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->col_header_height();+  }+  FL_EXPORT_C(void,Fl_Table_set_row_header_width)(fl_Table table,int width){+    return (static_cast<Fl_DerivedTable*>(table))->row_header_width(width);+  }+  FL_EXPORT_C(int,Fl_Table_row_header_width)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->row_header_width();+  }+  FL_EXPORT_C(void,Fl_Table_set_row_header_color)(fl_Table table,Fl_Color val){+    return (static_cast<Fl_DerivedTable*>(table))->row_header_color(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Table_row_header_color)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->row_header_color();+  }+  FL_EXPORT_C(void,Fl_Table_set_col_header_color)(fl_Table table,Fl_Color val){+    return (static_cast<Fl_DerivedTable*>(table))->col_header_color(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Table_col_header_color)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->col_header_color();+  }+  FL_EXPORT_C(void,Fl_Table_set_row_height)(fl_Table table,int row,int height){+    return (static_cast<Fl_DerivedTable*>(table))->row_height(row,height);+  }+  FL_EXPORT_C(int,Fl_Table_row_height)(fl_Table table,int row){+    return (static_cast<Fl_DerivedTable*>(table))->row_height(row);+  }+  FL_EXPORT_C(void,Fl_Table_set_col_width)(fl_Table table,int col,int width){+    return (static_cast<Fl_DerivedTable*>(table))->col_width(col,width);+  }+  FL_EXPORT_C(int,Fl_Table_col_width)(fl_Table table,int col){+    return (static_cast<Fl_DerivedTable*>(table))->col_width(col);+  }+  FL_EXPORT_C(void,Fl_Table_set_row_height_all)(fl_Table table,int height){+    return (static_cast<Fl_DerivedTable*>(table))->row_height_all(height);+  }+  FL_EXPORT_C(void,Fl_Table_set_col_width_all)(fl_Table table,int width){+    return (static_cast<Fl_DerivedTable*>(table))->col_width_all(width);+  }+  FL_EXPORT_C(void,Fl_Table_set_row_position)(fl_Table table,int row){+    return (static_cast<Fl_DerivedTable*>(table))->row_position(row);+  }+  FL_EXPORT_C(void,Fl_Table_set_col_position)(fl_Table table,int col){+    return (static_cast<Fl_DerivedTable*>(table))->col_position(col);+  }+  FL_EXPORT_C(int,Fl_Table_row_position)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->row_position();+  }+  FL_EXPORT_C(int,Fl_Table_col_position)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->col_position();+  }+  FL_EXPORT_C(void,Fl_Table_set_top_row)(fl_Table table,int row){+    return (static_cast<Fl_DerivedTable*>(table))->top_row(row);+  }+  FL_EXPORT_C(int,Fl_Table_top_row)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->top_row();+  }+  FL_EXPORT_C(int,Fl_Table_is_selected)(fl_Table table,int r,int c){+    return (static_cast<Fl_DerivedTable*>(table))->is_selected(r,c);+  }+  FL_EXPORT_C(void,Fl_Table_get_selection)(fl_Table table,int* row_top,int* col_left,int* row_bot,int* col_right){+    return (static_cast<Fl_DerivedTable*>(table))->get_selection(*row_top,*col_left,*row_bot,*col_right);+  }+  FL_EXPORT_C(void,Fl_Table_set_selection)(fl_Table table,int row_top,int col_left,int row_bot,int col_right){+    return (static_cast<Fl_DerivedTable*>(table))->set_selection(row_top,col_left,row_bot,col_right);+  }+  FL_EXPORT_C(int,Fl_Table_move_cursor)(fl_Table table,int R,int C){+    return (static_cast<Fl_DerivedTable*>(table))->move_cursor(R,C);+  }+  FL_EXPORT_C(void,Fl_Table_resize_super)(fl_Table table,int X,int Y,int W,int H){+    return (static_cast<Fl_DerivedTable*>(table))->resize_super(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Table_resize)(fl_Table table,int X,int Y,int W,int H){+    return (static_cast<Fl_DerivedTable*>(table))->resize(X,Y,W,H);+  }++  FL_EXPORT_C(void,Fl_Table_draw_super)(fl_Table table){+    return (static_cast<Fl_Table*>(table))->draw();+  }+  FL_EXPORT_C(void,Fl_Table_draw)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->draw();+  }+  FL_EXPORT_C(void,Fl_Table_init_sizes)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->init_sizes();+  }+  FL_EXPORT_C(void,Fl_Table_add)(fl_Table table,fl_Widget wgt){+    return (static_cast<Fl_DerivedTable*>(table))->add((static_cast<Fl_Widget*>(wgt)));+  }+  FL_EXPORT_C(void,Fl_Table_insert)(fl_Table table,fl_Widget wgt,int n){+    (static_cast<Fl_DerivedTable*>(table))->insert(*(static_cast<Fl_Widget*>(wgt)),n);+  }+  FL_EXPORT_C(void, Fl_Table_insert_with_widget)(fl_Table table,fl_Widget wgt, fl_Widget w2){+    (static_cast<Fl_DerivedTable*>(table))->insert(*(static_cast<Fl_Widget*>(wgt)),(static_cast<Fl_Widget*>(w2)));+  };+  FL_EXPORT_C(void,Fl_Table_remove_widget)(fl_Table table,fl_Widget w){+    (static_cast<Fl_Table*>(table))->remove(*(static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Table_clear_super)(fl_Table table){+    (static_cast<Fl_Table*>(table))->clear();+  }+  FL_EXPORT_C(void,Fl_Table_clear)(fl_Table table){+    (static_cast<Fl_DerivedTable*>(table))->clear();+  }+  FL_EXPORT_C(void,Fl_Table_begin)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->begin();+  }+  FL_EXPORT_C(void,Fl_Table_end)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->end();+  }+  FL_EXPORT_C(fl_Widget*,Fl_Table_array)(fl_Table table){+    return (fl_Widget*)(static_cast<Fl_DerivedTable*>(table))->array();+  }+  FL_EXPORT_C(fl_Widget,Fl_Table_child)(fl_Table table,int n){+    return (static_cast<Fl_DerivedTable*>(table))->child(n);+  }+  FL_EXPORT_C(int,Fl_Table_children)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->children();+  }+  FL_EXPORT_C(int,Fl_Table_find)(fl_Table table,fl_Widget wgt){+    return (static_cast<Fl_DerivedTable*>(table))->find((static_cast<Fl_Widget*>(wgt)));+  }+  FL_EXPORT_C(int,Fl_Table_callback_row)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->callback_row();+  }+  FL_EXPORT_C(int,Fl_Table_callback_col)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->callback_col();+  }+  FL_EXPORT_C(TableContextC,Fl_Table_callback_context)(fl_Table table){+    Fl_DerivedTable* t = (static_cast<Fl_DerivedTable*>(table));+    Fl_Table::TableContext context = t->callback_context();+    TableContextC ret = (TableContextC)-1;+    switch(context){+    case Fl_Table::CONTEXT_NONE:      {ret = CONTEXT_NONEC;      break;}+    case Fl_Table::CONTEXT_STARTPAGE: {ret = CONTEXT_STARTPAGEC; break;}+    case Fl_Table::CONTEXT_ENDPAGE:   {ret = CONTEXT_ENDPAGEC;   break;}+    case Fl_Table::CONTEXT_ROW_HEADER:{ret = CONTEXT_ROW_HEADERC;break;}+    case Fl_Table::CONTEXT_COL_HEADER:{ret = CONTEXT_COL_HEADERC;break;}+    case Fl_Table::CONTEXT_CELL:      {ret = CONTEXT_CELLC;      break;}+    case Fl_Table::CONTEXT_TABLE:     {ret = CONTEXT_TABLEC;     break;}+    case Fl_Table::CONTEXT_RC_RESIZE: {ret = CONTEXT_RC_RESIZEC; break;}+    default:                          {ret = TableContextC(-1);  break;}+    }+    return ret;+  }+  FL_EXPORT_C(void,Fl_Table_do_callback)(fl_Table table, TableContextC tableContext, int row, int col){+    Fl_Table::TableContext c = (Fl_Table::TableContext)-1;+    switch(tableContext){+    case CONTEXT_NONEC:      {c = Fl_Table::CONTEXT_NONE;      break;}+    case CONTEXT_STARTPAGEC: {c = Fl_Table::CONTEXT_STARTPAGE; break;}+    case CONTEXT_ENDPAGEC:   {c = Fl_Table::CONTEXT_ENDPAGE;   break;}+    case CONTEXT_ROW_HEADERC:{c = Fl_Table::CONTEXT_ROW_HEADER;break;}+    case CONTEXT_COL_HEADERC:{c = Fl_Table::CONTEXT_COL_HEADER;break;}+    case CONTEXT_CELLC:      {c = Fl_Table::CONTEXT_CELL;      break;}+    case CONTEXT_TABLEC:     {c = Fl_Table::CONTEXT_TABLE;     break;}+    case CONTEXT_RC_RESIZEC: {c = Fl_Table::CONTEXT_RC_RESIZE; break;}+    default:                 {c = (Fl_Table::TableContext)-1;  break;}+    }+    (static_cast<Fl_DerivedTable*>(table))->do_callback(c, row, col);+  }+#if FLTK_ABI_VERSION >= 10303+  FL_EXPORT_C(void, Fl_Table_set_tab_cell_nav)(fl_Table table, int val){+    (static_cast<Fl_DerivedTable*>(table))->tab_cell_nav(val);+  }+  FL_EXPORT_C(int,  Fl_Table_tab_cell_nav)(fl_Table table){+    return (static_cast<Fl_DerivedTable*>(table))->tab_cell_nav();+  }+#endif+  FL_EXPORT_C(int,  Fl_Table_find_cell)(fl_Table table, TableContextC context, int R, int C, int *X, int *Y, int *W, int *H){+    Fl_Table::TableContext c = (Fl_Table::TableContext)-1;+    switch(context){+    case CONTEXT_NONEC:      {c = Fl_Table::CONTEXT_NONE;      break;}+    case CONTEXT_STARTPAGEC: {c = Fl_Table::CONTEXT_STARTPAGE; break;}+    case CONTEXT_ENDPAGEC:   {c = Fl_Table::CONTEXT_ENDPAGE;   break;}+    case CONTEXT_ROW_HEADERC:{c = Fl_Table::CONTEXT_ROW_HEADER;break;}+    case CONTEXT_COL_HEADERC:{c = Fl_Table::CONTEXT_COL_HEADER;break;}+    case CONTEXT_CELLC:      {c = Fl_Table::CONTEXT_CELL;      break;}+    case CONTEXT_TABLEC:     {c = Fl_Table::CONTEXT_TABLE;     break;}+    case CONTEXT_RC_RESIZEC: {c = Fl_Table::CONTEXT_RC_RESIZE; break;}+    default:                 {c = (Fl_Table::TableContext)-1;  break;}+    }+    return (static_cast<Fl_DerivedTable*>(table))->find_cell(c,R,C,*X,*Y,*W,*H);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_TableC.h view
@@ -0,0 +1,246 @@+#ifndef __FL_TABLE_C__+#define __FL_TABLE_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Table.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Table_handle)(fl_Table self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Table_parent)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_parent)(fl_Table table, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Table_type)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_type)(fl_Table table, uchar t);++FL_EXPORT_C(void, Fl_Table_draw_box)(fl_Table Table);+FL_EXPORT_C(void, Fl_Table_draw_box_with_tc)(fl_Table Table,Fl_Boxtype t, Fl_Color c);+FL_EXPORT_C(void, Fl_Table_draw_box_with_txywhc)(fl_Table Table,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+FL_EXPORT_C(void, Fl_Table_draw_backdrop)(fl_Table Table);+FL_EXPORT_C(void, Fl_Table_draw_focus)(fl_Table Table);+FL_EXPORT_C(void, Fl_Table_draw_focus_with_txywh)(fl_Table Table,Fl_Boxtype t, int x,int y,int w,int h);+FL_EXPORT_C(void, Fl_Table_draw_label)(fl_Table Table);+  FL_EXPORT_C(int,          Fl_Table_x)(fl_Table table);+  FL_EXPORT_C(int,          Fl_Table_y)(fl_Table table);+  FL_EXPORT_C(int,          Fl_Table_w)(fl_Table table);+  FL_EXPORT_C(int,          Fl_Table_h)(fl_Table table);+  FL_EXPORT_C(void,     Fl_Table_set_align)(fl_Table table, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Table_align)(fl_Table table);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Table_box)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_box)(fl_Table table, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Table_color)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_color)(fl_Table table, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Table_set_color_with_bg_sel)(fl_Table table,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Table_selection_color)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_selection_color)(fl_Table table, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Table_label)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_copy_label)(fl_Table table, const char* new_label);+  FL_EXPORT_C(void,         Fl_Table_set_label)(fl_Table table, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Table_labeltype)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_labeltype)(fl_Table table, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Table_labelcolor)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_labelcolor)(fl_Table table, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Table_item_labelfont)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_item_labelfont)(fl_Table table, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Table_item_labelsize)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_item_labelsize)(fl_Table table, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Table_image)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_image)(fl_Table table, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Table_deimage)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_deimage)(fl_Table table, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Table_tooltip)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_copy_tooltip)(fl_Table table, const char* text);+  FL_EXPORT_C(void,         Fl_Table_set_tooltip)(fl_Table table, const char* text);+  FL_EXPORT_C(void,         Fl_Table_set_callback_with_user_data)(fl_Table table, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Table_set_callback)(fl_Table table, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Table_other_data)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_other_data)(fl_Table table, void* v);+  FL_EXPORT_C(void*,        Fl_Table_user_data)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_user_data)(fl_Table table, void* v);+  FL_EXPORT_C(long,         Fl_Table_argument)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_argument)(fl_Table table, long v);+  FL_EXPORT_C(Fl_When,      Fl_Table_when)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_when)(fl_Table table, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Table_visible)(fl_Table table);+  FL_EXPORT_C(int,          Fl_Table_visible_r)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_show_super)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_show)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_hide_super)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_hide)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_visible)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_clear_visible)(fl_Table table);+  FL_EXPORT_C(unsigned int, Fl_Table_active)(fl_Table table);+  FL_EXPORT_C(int,          Fl_Table_active_r)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_activate)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_deactivate)(fl_Table table);+  FL_EXPORT_C(unsigned int, Fl_Table_output)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_output)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_clear_output)(fl_Table table);+  FL_EXPORT_C(unsigned int, Fl_Table_takesevents)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_changed)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_clear_changed)(fl_Table table);+  FL_EXPORT_C(int,          Fl_Table_take_focus)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_visible_focus)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_clear_visible_focus)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_modify_visible_focus)(fl_Table table, int v);+  FL_EXPORT_C(unsigned int, Fl_Table_visible_focus)(fl_Table table);+  FL_EXPORT_C(int,          Fl_Table_contains)(fl_Table table, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Table_inside)(fl_Table table, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Table_redraw)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_redraw_label)(fl_Table table);+  FL_EXPORT_C(uchar,        Fl_Table_damage)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_clear_damage_with_bitmask)(fl_Table table, uchar c);+  FL_EXPORT_C(void,         Fl_Table_clear_damage)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_damage_with_text)(fl_Table table, uchar c);+  FL_EXPORT_C(void,         Fl_Table_damage_inside_widget)(fl_Table table, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Table_draw_label_with_xywh_alignment)(fl_Table table, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Table_measure_label)(fl_Table table, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Table_window)(fl_Table table);+  FL_EXPORT_C(fl_Window,    Fl_Table_top_window)(fl_Table table);+  FL_EXPORT_C(fl_Window ,   Fl_Table_top_window_offset)(fl_Table table, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Window,    Fl_Table_as_window_super)(fl_Table table);+  FL_EXPORT_C(fl_Window,    Fl_Table_as_window)(fl_Table table);+  FL_EXPORT_C(fl_Group,     Fl_Table_as_group_super)(fl_Table table);+  FL_EXPORT_C(fl_Group,     Fl_Table_as_group)(fl_Table table);+  FL_EXPORT_C(fl_Gl_Window, Fl_Table_as_gl_window_super)(fl_Table table);+  FL_EXPORT_C(fl_Gl_Window, Fl_Table_as_gl_window)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_draw_super)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_draw)(fl_Table table);+  FL_EXPORT_C(int,          Fl_Table_handle_super)(fl_Table table, int event);+  FL_EXPORT_C(int,          Fl_Table_handle)(fl_Table table, int event);+  FL_EXPORT_C(void,         Fl_Table_resize_super)(fl_Table table, int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Table_resize)(fl_Table table, int x, int y, int w, int h);+  /* Fl_Group specific */+  FL_EXPORT_C(void,         Fl_Table_remove_widget)(fl_Table table, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Table_clear_super)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_clear)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_resizable_by_reference)(fl_Table table,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Table_set_resizable)(fl_Table table,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Table_resizable)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_add_resizable)(fl_Table table,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Table_init_sizes)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_set_clip_children)(fl_Table table,int c);+  FL_EXPORT_C(unsigned int, Fl_Table_clip_children)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_focus)(fl_Table table,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Table__ddfdesign_kludge)(fl_Table table);+  FL_EXPORT_C(void,         Fl_Table_insert_with_before)(fl_Table self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Table_array)(fl_Table self);+  FL_EXPORT_C(fl_Widget,    Fl_Table_child)(fl_Table self, int n);+  FL_EXPORT_C(void,         Fl_Table_forms_end)(fl_Table self);+++  /* Fl_Table specific functions */+#ifdef __cplusplus+  class Fl_DerivedTable : public Fl_Table {+    fl_Table_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    using Fl_Table::rows;+    using Fl_Table::cols;+    void* get_other_data();+    void set_other_data(void*);+    int find_cell(TableContext context, int R, int C, int &X, int &Y, int &W, int &H);+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    virtual int handle(int event);+    void resize_super(int x, int y, int w, int h);+    virtual void resize(int x, int y, int w, int h);+    virtual void show();+    virtual void hide();+    virtual Fl_Group* as_group();+    virtual Fl_Window* as_window();+    virtual Fl_Gl_Window* as_gl_window();+    virtual void draw_cell(TableContext tableContext, int R, int C, int X, int Y, int W, int H);+    virtual void clear();+    virtual void rows(int val);+    virtual void cols(int val);+    Fl_DerivedTable(int X, int Y, int W, int H, const char *l, fl_Table_Virtual_Funcs* funcs);+    Fl_DerivedTable(int X, int Y, int W, int H, fl_Table_Virtual_Funcs* funcs);+    ~Fl_DerivedTable();+  };+#endif+  FL_EXPORT_C(fl_Table_Virtual_Funcs*, Fl_Table_default_virtual_funcs)();+  FL_EXPORT_C(fl_Table, Fl_Table_New_WithLabel)(int X, int Y, int W, int H, const char *l, fl_Table_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Table, Fl_Table_New)(int X, int Y, int W, int H, fl_Table_Virtual_Funcs* funcs);+  FL_EXPORT_C(void, Fl_Table_Destroy)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_table_box)(fl_Table table,Fl_Boxtype val);+  FL_EXPORT_C(Fl_Boxtype, Fl_Table_table_box)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_rows_super)(fl_Table table,int val);+  FL_EXPORT_C(void, Fl_Table_set_rows)(fl_Table table,int val);+  FL_EXPORT_C(int, Fl_Table_rows)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_cols_super)(fl_Table table, int val);+  FL_EXPORT_C(void, Fl_Table_set_cols)(fl_Table table, int val);+  FL_EXPORT_C(int, Fl_Table_cols)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_visible_cells)(fl_Table table,int* r1, int* r2, int* c1, int* c2);+  FL_EXPORT_C(int, Fl_Table_is_interactive_resize)(fl_Table table);+  FL_EXPORT_C(int, Fl_Table_row_resize)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_row_resize)(fl_Table table,int flag);+  FL_EXPORT_C(int, Fl_Table_col_resize)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_col_resize)(fl_Table table,int flag);+  FL_EXPORT_C(int, Fl_Table_col_resize_min)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_col_resize_min)(fl_Table table,int val);+  FL_EXPORT_C(int, Fl_Table_row_resize_min)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_row_resize_min)(fl_Table table,int val);+  FL_EXPORT_C(int, Fl_Table_row_header)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_row_header)(fl_Table table,int flag);+  FL_EXPORT_C(int, Fl_Table_col_header)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_col_header)(fl_Table table,int flag);+  FL_EXPORT_C(void, Fl_Table_set_col_header_height)(fl_Table table,int height);+  FL_EXPORT_C(int, Fl_Table_col_header_height)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_row_header_width)(fl_Table table,int width);+  FL_EXPORT_C(int, Fl_Table_row_header_width)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_row_header_color)(fl_Table table,Fl_Color val);+  FL_EXPORT_C(Fl_Color, Fl_Table_row_header_color)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_col_header_color)(fl_Table table,Fl_Color val);+  FL_EXPORT_C(Fl_Color, Fl_Table_col_header_color)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_row_height)(fl_Table table,int row, int height);+  FL_EXPORT_C(int, Fl_Table_row_height)(fl_Table table,int row);+  FL_EXPORT_C(void, Fl_Table_set_col_width)(fl_Table table,int col, int width);+  FL_EXPORT_C(int, Fl_Table_col_width)(fl_Table table,int col);+  FL_EXPORT_C(void, Fl_Table_set_row_height_all)(fl_Table table,int height);+  FL_EXPORT_C(void, Fl_Table_set_col_width_all)(fl_Table table,int width);+  FL_EXPORT_C(void, Fl_Table_set_row_position)(fl_Table table,int row);+  FL_EXPORT_C(void, Fl_Table_set_col_position)(fl_Table table,int col);+  FL_EXPORT_C(int, Fl_Table_row_position)(fl_Table table);+  FL_EXPORT_C(int, Fl_Table_col_position)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_set_top_row)(fl_Table table,int row);+  FL_EXPORT_C(int, Fl_Table_top_row)(fl_Table table);+  FL_EXPORT_C(int, Fl_Table_is_selected)(fl_Table table,int r, int c);+  FL_EXPORT_C(void, Fl_Table_get_selection)(fl_Table table,int* row_top, int* col_left, int* row_bot, int* col_right);+  FL_EXPORT_C(void, Fl_Table_set_selection)(fl_Table table,int row_top, int col_left, int row_bot, int col_right);+  FL_EXPORT_C(int, Fl_Table_move_cursor)(fl_Table table,int R, int C);+  FL_EXPORT_C(void, Fl_Table_draw)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_init_sizes)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_add)(fl_Table table,fl_Widget wgt);+  FL_EXPORT_C(void, Fl_Table_add)(fl_Table table,fl_Widget wgt);+  FL_EXPORT_C(void, Fl_Table_insert)(fl_Table table,fl_Widget wgt, int n);+  FL_EXPORT_C(void, Fl_Table_insert_with_widget)(fl_Table table,fl_Widget wgt, fl_Widget w2);+  FL_EXPORT_C(void, Fl_Table_begin)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_end)(fl_Table table);+  FL_EXPORT_C(fl_Widget*, Fl_Table_array)(fl_Table table);+  FL_EXPORT_C(fl_Widget, Fl_Table_child)(fl_Table table,int n);+  FL_EXPORT_C(int, Fl_Table_children)(fl_Table table);+  FL_EXPORT_C(int, Fl_Table_find)(fl_Table table,fl_Widget wgt);+  FL_EXPORT_C(int, Fl_Table_callback_row)(fl_Table table);+  FL_EXPORT_C(int, Fl_Table_callback_col)(fl_Table table);+  FL_EXPORT_C(TableContextC, Fl_Table_callback_context)(fl_Table table);+  FL_EXPORT_C(void, Fl_Table_do_callback)(fl_Table table, TableContextC tableContext, int row, int col);+#if FLTK_ABI_VERSION >= 10303+  FL_EXPORT_C(void, Fl_Table_set_tab_cell_nav)(fl_Table table, int val);+  FL_EXPORT_C(int,  Fl_Table_tab_cell_nav)(fl_Table table);+#endif+  FL_EXPORT_C(int,  Fl_Table_find_cell)(fl_Table table, TableContextC context, int R, int C, int* X, int* Y, int* W, int* H);+#ifdef __cplusplus+}+#endif+#endif /* __FL_TABLE_C__ */
+ c-src/Fl_Table_RowC.cpp view
@@ -0,0 +1,821 @@+#include "Fl_Table_RowC.h"+#ifdef __cplusplus+Fl_DerivedTable_Row::Fl_DerivedTable_Row(int X, int Y, int W, int H, const char *l, fl_Table_Virtual_Funcs* funcs) : Fl_Table_Row(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = (void*)"INIT";+ }+Fl_DerivedTable_Row::Fl_DerivedTable_Row(int X, int Y, int W, int H, fl_Table_Virtual_Funcs* funcs):Fl_Table_Row(X,Y,W,H,0){+    overriddenFuncs = funcs;+    other_data = (void*)"INIT";+  }+Fl_DerivedTable_Row::~Fl_DerivedTable_Row(){+  destroy_data();+  free(overriddenFuncs);+}+void* Fl_DerivedTable_Row::get_other_data(){+  return this->other_data;+}+void Fl_DerivedTable_Row::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedTable_Row::destroy_data(){+  if (this->overriddenFuncs->destroy_data != NULL){+    this->overriddenFuncs->destroy_data((fl_Table_Row) this);+  }+}+int Fl_DerivedTable_Row::find_cell(TableContext context, int R, int C, int &X, int &Y, int &W, int &H){+  return Fl_Table_Row::find_cell(context,R,C,X,Y,W,H);+}+void Fl_DerivedTable_Row::draw(){+  if (this->overriddenFuncs->draw != NULL) {+    this->overriddenFuncs->draw((fl_Table_Row) this);+  }+  else {+    Fl_Table_Row::draw();+  }+}+void Fl_DerivedTable_Row::draw_box(){+  Fl_Table_Row::draw_box();+}+void Fl_DerivedTable_Row::draw_box(Fl_Boxtype t, Fl_Color c){+  Fl_Table_Row::draw_box(t,c);+}+void Fl_DerivedTable_Row::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+  Fl_Table_Row::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedTable_Row::draw_backdrop(){+  Fl_Table_Row::draw_backdrop();+}+void Fl_DerivedTable_Row::draw_focus(){+  Fl_Table_Row::draw_focus();+}+void Fl_DerivedTable_Row::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+  Fl_Table_Row::draw_focus(t,x,y,w,h);+}+void Fl_DerivedTable_Row::draw_label(){+  Fl_Table_Row::draw_label();+}+void Fl_DerivedTable_Row::draw_label(int x,int y,int w,int h,Fl_Align alignment){+  Fl_Table_Row::draw_label(x,y,w,h,alignment);+}+int Fl_DerivedTable_Row::handle_super(int event){+  return Fl_Table_Row::handle(event);+}+int Fl_DerivedTable_Row::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Table_Row) this,event);+  }+  else {+    i = Fl_Table_Row::handle(event);+  }+  return i;+}+void Fl_DerivedTable_Row::resize_super(int x, int y, int w, int h){+  Fl_Table_Row::resize(x,y,w,h);+}+void Fl_DerivedTable_Row::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Table_Row) this,x,y,w,h);+  }+  else {+    Fl_Table_Row::resize(x,y,w,h);+  }+}+void Fl_DerivedTable_Row::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Table_Row) this);+  }+  else {+    Fl_Table_Row::show();+  }+}+void Fl_DerivedTable_Row::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Table_Row) this);+  }+  else {+    Fl_Table_Row::hide();+  }+}+Fl_Group* Fl_DerivedTable_Row::as_group(){+  Fl_Group* grp;+  if (this->overriddenFuncs->as_group != NULL) {+    grp = (static_cast<Fl_Group*>(this->overriddenFuncs->as_group((fl_Table_Row) this)));+  }+  else {+    grp = Fl_Table_Row::as_group();+  }+  return grp;+}+Fl_Window* Fl_DerivedTable_Row::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Table_Row) this)));+  }+  else {+    win = Fl_Table_Row::as_window();+  }+  return win;+}+Fl_Gl_Window* Fl_DerivedTable_Row::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Table_Row) this)));+  }+  else {+    win = Fl_Table_Row::as_gl_window();+  }+  return win;+}+void Fl_DerivedTable_Row::draw_cell(TableContext tableContext, int R, int C, int X, int Y, int W, int H){+  TableContextC c = (TableContextC)-1;+  switch(tableContext){+  case Fl_Table::CONTEXT_NONE:      {c = CONTEXT_NONEC;      break;}+  case Fl_Table::CONTEXT_STARTPAGE: {c = CONTEXT_STARTPAGEC; break;}+  case Fl_Table::CONTEXT_ENDPAGE:   {c = CONTEXT_ENDPAGEC;   break;}+  case Fl_Table::CONTEXT_ROW_HEADER:{c = CONTEXT_ROW_HEADERC;break;}+  case Fl_Table::CONTEXT_COL_HEADER:{c = CONTEXT_COL_HEADERC;break;}+  case Fl_Table::CONTEXT_CELL:      {c = CONTEXT_CELLC;      break;}+  case Fl_Table::CONTEXT_TABLE:     {c = CONTEXT_TABLEC;     break;}+  case Fl_Table::CONTEXT_RC_RESIZE: {c = CONTEXT_RC_RESIZEC; break;}+  default:                          {c = TableContextC(-1);  break;}+  }+  (*this->overriddenFuncs->draw_cell)((fl_Table_Row) this,c,R,C,X,Y,W,H);+}+void Fl_DerivedTable_Row::clear(){+  if (this->overriddenFuncs->clear != NULL) {+    this->overriddenFuncs->clear((fl_Table_Row) this);+  }+  else {+    Fl_Table_Row::clear();+  }+}+void Fl_DerivedTable_Row::rows(int val){+  if (this->overriddenFuncs->set_rows != NULL) {+    this->overriddenFuncs->set_rows((fl_Table_Row) this, val);+  }+  else {+    Fl_Table_Row::rows(val);+  }+}+void Fl_DerivedTable_Row::cols(int val){+  if (this->overriddenFuncs->set_cols != NULL) {+    this->overriddenFuncs->set_cols((fl_Table_Row) this, val);+  }+  else {+    Fl_Table_Row::cols(val);+  }+}+EXPORT {+#endif+  FL_EXPORT_C(fl_Table_Row_Virtual_Funcs*, Fl_Table_Row_default_virtual_funcs)(){+    fl_Table_Row_Virtual_Funcs* ptr = (fl_Table_Row_Virtual_Funcs*)malloc(sizeof(fl_Table_Row_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->hide = NULL;+    ptr->as_group = NULL;+    ptr->as_window = NULL;+    ptr->as_gl_window = NULL;+    ptr->draw_cell = NULL;+    ptr->clear = NULL;+    ptr->set_rows = NULL;+    ptr->set_cols = NULL;+    ptr->destroy_data = NULL;+    return ptr;+  }+  FL_EXPORT_C(int,Fl_Table_Row_handle)(fl_Table_Row self, int event){+    return (static_cast<Fl_DerivedTable_Row*>(self))->handle(event);+  }+  FL_EXPORT_C(int,Fl_Table_Row_handle_super)(fl_Table_Row self, int event){+    return (static_cast<Fl_DerivedTable_Row*>(self))->handle_super(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Table_Row_parent)(fl_Table_Row table_row){+    return (fl_Group) (static_cast<Fl_DerivedTable_Row*>(table_row))->parent();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_parent)(fl_Table_Row table_row,fl_Group grp){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->parent((static_cast<Fl_Group*>(grp)));+  }++FL_EXPORT_C(void, Fl_Table_Row_draw_box)(fl_Table_Row Table_Row){+ (static_cast<Fl_DerivedTable_Row*>(Table_Row))->draw_box();+}+FL_EXPORT_C(void, Fl_Table_Row_draw_box_with_tc)(fl_Table_Row Table_Row,Fl_Boxtype t, Fl_Color c){+ (static_cast<Fl_DerivedTable_Row*>(Table_Row))->draw_box(t,c);+}+FL_EXPORT_C(void, Fl_Table_Row_draw_box_with_txywhc)(fl_Table_Row Table_Row,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+ (static_cast<Fl_DerivedTable_Row*>(Table_Row))->draw_box(t,x,y,w,h,c);+}+FL_EXPORT_C(void, Fl_Table_Row_draw_backdrop)(fl_Table_Row Table_Row){+ (static_cast<Fl_DerivedTable_Row*>(Table_Row))->draw_backdrop();+}+FL_EXPORT_C(void, Fl_Table_Row_draw_focus)(fl_Table_Row Table_Row){+ (static_cast<Fl_DerivedTable_Row*>(Table_Row))->draw_focus();+}+FL_EXPORT_C(void, Fl_Table_Row_draw_focus_with_txywh)(fl_Table_Row Table_Row,Fl_Boxtype t, int x,int y,int w,int h){+ (static_cast<Fl_DerivedTable_Row*>(Table_Row))->draw_focus(t,x,y,w,h);+}+FL_EXPORT_C(void, Fl_Table_Row_draw_label)(fl_Table_Row Table_Row){+ (static_cast<Fl_DerivedTable_Row*>(Table_Row))->draw_label();+}+  FL_EXPORT_C(int,Fl_Table_Row_x)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->x();+  }+  FL_EXPORT_C(int,Fl_Table_Row_y)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->y();+  }+  FL_EXPORT_C(int,Fl_Table_Row_w)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->w();+  }+  FL_EXPORT_C(int,Fl_Table_Row_h)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->h();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_align)(fl_Table_Row table_row, Fl_Align alignment){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Table_Row_align)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Table_Row_box)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->box();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_box)(fl_Table_Row table_row,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Table_Row_color)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->color();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_color)(fl_Table_Row table_row,Fl_Color bg){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_color_with_bg_sel)(fl_Table_Row table_row,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Table_Row_selection_color)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_selection_color)(fl_Table_Row table_row,Fl_Color a){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Table_Row_label)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->label();+  }+  FL_EXPORT_C(void,Fl_Table_Row_copy_label)(fl_Table_Row table_row,const char* new_label){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_label)(fl_Table_Row table_row,const char* text){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Table_Row_labeltype)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_labeltype)(fl_Table_Row table_row,Fl_Labeltype a){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_labelcolor)(fl_Table_Row table_row,Fl_Color c){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Table_Row_labelcolor)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Table_Row_labelfont)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_labelfont)(fl_Table_Row table_row,Fl_Font c){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Table_Row_labelsize)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_labelsize)(fl_Table_Row table_row,Fl_Fontsize pix){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Table_Row_image)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->image();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_image)(fl_Table_Row table_row,fl_Image pix){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Table_Row_deimage)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->deimage();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_deimage)(fl_Table_Row table_row,fl_Image pix){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Table_Row_tooltip)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Table_Row_copy_tooltip)(fl_Table_Row table_row,const char* text){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_tooltip)(fl_Table_Row table_row,const char* text){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_callback_with_user_data)(fl_Table_Row table_row,fl_Callback* cb,void* p){+    Fl_DerivedTable_Row* castedWindow = (static_cast<Fl_DerivedTable_Row*>(table_row));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_callback)(fl_Table_Row table_row,fl_Callback* cb){+    Fl_DerivedTable_Row* castedWindow = (static_cast<Fl_DerivedTable_Row*>(table_row));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Table_Row_other_data)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->get_other_data();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_other_data)(fl_Table_Row table_row,void* v){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->set_other_data(v);+  }+  FL_EXPORT_C(void*,Fl_Table_Row_user_data)(fl_Table_Row table_row){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedTable_Row*>(table_row))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedTable_Row*>(table_row))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_user_data)(fl_Table_Row table_row,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Table_Row*>(table_row))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Table_Row*>(table_row))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Table_Row*>(table_row))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Table_Row_argument)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->argument();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_argument)(fl_Table_Row table_row,long v){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Table_Row_when)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->when();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_when)(fl_Table_Row table_row,uchar i){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Table_Row_visible)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->visible();+  }+  FL_EXPORT_C(int,Fl_Table_Row_visible_r)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Table_Row_show_super)(fl_Table_Row table_row){+    return (static_cast<Fl_Table_Row*>(table_row))->show();+  }+  FL_EXPORT_C(void,Fl_Table_Row_show)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->show();+  }+  FL_EXPORT_C(void,Fl_Table_Row_hide_super)(fl_Table_Row table_row){+    return (static_cast<Fl_Table_Row*>(table_row))->hide();+  }+  FL_EXPORT_C(void,Fl_Table_Row_hide)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->hide();+  }+  FL_EXPORT_C(void,Fl_Table_Row_clear_visible)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Table_Row_active)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->active();+  }+  FL_EXPORT_C(int,Fl_Table_Row_active_r)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->active_r();+  }+  FL_EXPORT_C(void,Fl_Table_Row_activate)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->activate();+  }+  FL_EXPORT_C(void,Fl_Table_Row_deactivate)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Table_Row_output)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->output();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_output)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->output();+  }+  FL_EXPORT_C(void,Fl_Table_Row_clear_output)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Table_Row_takesevents)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_changed)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->changed();+  }+  FL_EXPORT_C(void,Fl_Table_Row_clear_changed)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Table_Row_take_focus)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_visible_focus)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Table_Row_clear_visible_focus)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Table_Row_modify_visible_focus)(fl_Table_Row table_row,int v){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Table_Row_visible_focus)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_Table_Row_contains)(fl_Table_Row table_row,fl_Widget w){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Table_Row_inside)(fl_Table_Row table_row,fl_Widget w){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Table_Row_redraw)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->redraw();+  }+  FL_EXPORT_C(void,Fl_Table_Row_redraw_label)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Table_Row_damage)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->damage();+  }+  FL_EXPORT_C(void,Fl_Table_Row_clear_damage_with_bitmask)(fl_Table_Row table_row,uchar c){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Table_Row_clear_damage)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Table_Row_damage_with_text)(fl_Table_Row table_row,uchar c){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Table_Row_damage_inside_widget)(fl_Table_Row table_row,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Table_Row_draw_label_with_xywh_alignment)(fl_Table_Row table_row,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Table_Row_measure_label)(fl_Table_Row table_row,int* ww,int* hh){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Table_Row_window)(fl_Table_Row table_row){+    return (fl_Window) (static_cast<Fl_DerivedTable_Row*>(table_row))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Table_Row_top_window)(fl_Table_Row table_row){+    return (fl_Window) (static_cast<Fl_DerivedTable_Row*>(table_row))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Table_Row_top_window_offset)(fl_Table_Row table_row, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedTable_Row*>(table_row))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Table_Row_as_group_super)(fl_Table_Row table_row){+    return (fl_Group) (static_cast<Fl_Table_Row*>(table_row))->as_group();+  }+  FL_EXPORT_C(fl_Group,Fl_Table_Row_as_group)(fl_Table_Row table_row){+    return (fl_Group) (static_cast<Fl_DerivedTable_Row*>(table_row))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Table_Row_as_gl_window_super)(fl_Table_Row table_row){+    return (fl_Gl_Window) (fl_Gl_Window) (static_cast<Fl_Table_Row*>(table_row))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Table_Row_as_gl_window)(fl_Table_Row table_row){+    return (fl_Gl_Window) (static_cast<Fl_DerivedTable_Row*>(table_row))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_resizable_by_reference)(fl_Table_Row table_row,fl_Widget o){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_resizable)(fl_Table_Row table_row,fl_Widget o){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Table_Row_resizable)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->resizable();+  }+  FL_EXPORT_C(void,Fl_Table_Row_add_resizable)(fl_Table_Row table_row,fl_Widget o){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_clip_children)(fl_Table_Row table_row,int c){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Table_Row_clip_children)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Table_Row_focus)(fl_Table_Row table_row, fl_Widget W){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Table_Row__ddfdesign_kludge)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(void, Fl_Table_Row_insert_with_before)(fl_Table_Row self, fl_Widget w, fl_Widget before){+    (static_cast<Fl_DerivedTable_Row*>(self))->insert(*(static_cast<Fl_Widget*>(w)),(static_cast<Fl_Widget*>(before)));+  }+  FL_EXPORT_C(fl_Widget*, Fl_Table_Row_array)(fl_Table_Row self){+    return (fl_Widget*)(static_cast<Fl_DerivedTable_Row*>(self))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Table_Row_child)(fl_Table_Row self, int n){+    return (fl_Widget)(static_cast<Fl_DerivedTable_Row*>(self))->child(n);+  }+  // FL_EXPORT_C(void,Fl_Table_Row_forms_end)(fl_Table_Row self){+  //   (static_cast<Fl_DerivedTable_Row*>(self))->forms_end();+  // }+  FL_EXPORT_C(void,Fl_Table_Row_set_table_box)(fl_Table_Row table_row,Fl_Boxtype val){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->table_box(val);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Table_Row_table_box)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->table_box();+  }+  FL_EXPORT_C(int,Fl_Table_Row_rows)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->rows();+  }+  FL_EXPORT_C(int,Fl_Table_Row_cols)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->cols();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_rows_super)(fl_Table_Row table_row,int val){+    (static_cast<Fl_Table_Row*>(table_row))->rows(val);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_rows)(fl_Table_Row table_row, int val){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->rows(val);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_cols_super)(fl_Table_Row table_row,int val){+    (static_cast<Fl_Table_Row*>(table_row))->cols(val);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_cols)(fl_Table_Row table_row, int val){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->cols(val);+  }+  FL_EXPORT_C(void, Fl_Table_Row_set_visible_cells)(fl_Table_Row table_row,int* r1, int* r2, int* c1, int* c2){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->visible_cells(*r1,*r2,*c1,*c2);+  };+  FL_EXPORT_C(int,Fl_Table_Row_is_interactive_resize)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->is_interactive_resize();+  }+  FL_EXPORT_C(int,Fl_Table_Row_row_resize)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->row_resize();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_row_resize)(fl_Table_Row table_row,int flag){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->row_resize(flag);+  }+  FL_EXPORT_C(int,Fl_Table_Row_col_resize)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->col_resize();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_col_resize)(fl_Table_Row table_row,int flag){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->col_resize(flag);+  }+  FL_EXPORT_C(int,Fl_Table_Row_col_resize_min)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->col_resize_min();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_col_resize_min)(fl_Table_Row table_row,int val){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->col_resize_min(val);+  }+  FL_EXPORT_C(int,Fl_Table_Row_row_resize_min)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->row_resize_min();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_row_resize_min)(fl_Table_Row table_row,int val){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->row_resize_min(val);+  }+  FL_EXPORT_C(int,Fl_Table_Row_row_header)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->row_header();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_row_header)(fl_Table_Row table_row,int flag){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->row_header(flag);+  }+  FL_EXPORT_C(int,Fl_Table_Row_col_header)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->col_header();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_col_header)(fl_Table_Row table_row,int flag){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->col_header(flag);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_col_header_height)(fl_Table_Row table_row,int height){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->col_header_height(height);+  }+  FL_EXPORT_C(int,Fl_Table_Row_col_header_height)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->col_header_height();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_row_header_width)(fl_Table_Row table_row,int width){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->row_header_width(width);+  }+  FL_EXPORT_C(int,Fl_Table_Row_row_header_width)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->row_header_width();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_row_header_color)(fl_Table_Row table_row,Fl_Color val){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->row_header_color(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Table_Row_row_header_color)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->row_header_color();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_col_header_color)(fl_Table_Row table_row,Fl_Color val){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->col_header_color(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Table_Row_col_header_color)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->col_header_color();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_row_height)(fl_Table_Row table_row,int row,int height){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->row_height(row,height);+  }+  FL_EXPORT_C(int,Fl_Table_Row_row_height)(fl_Table_Row table_row,int row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->row_height(row);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_col_width)(fl_Table_Row table_row,int col,int width){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->col_width(col,width);+  }+  FL_EXPORT_C(int,Fl_Table_Row_col_width)(fl_Table_Row table_row,int col){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->col_width(col);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_row_height_all)(fl_Table_Row table_row,int height){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->row_height_all(height);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_col_width_all)(fl_Table_Row table_row,int width){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->col_width_all(width);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_row_position)(fl_Table_Row table_row,int row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->row_position(row);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_col_position)(fl_Table_Row table_row,int col){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->col_position(col);+  }+  FL_EXPORT_C(int,Fl_Table_Row_row_position)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->row_position();+  }+  FL_EXPORT_C(int,Fl_Table_Row_col_position)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->col_position();+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_top_row)(fl_Table_Row table_row,int row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->top_row(row);+  }+  FL_EXPORT_C(int,Fl_Table_Row_top_row)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->top_row();+  }+  FL_EXPORT_C(int,Fl_Table_Row_is_selected)(fl_Table_Row table_row,int r,int c){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->is_selected(r,c);+  }+  FL_EXPORT_C(void,Fl_Table_Row_get_selection)(fl_Table_Row table_row,int *row_top,int *col_left,int *row_bot,int *col_right){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->get_selection(*row_top,*col_left,*row_bot,*col_right);+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_selection)(fl_Table_Row table_row,int row_top,int col_left,int row_bot,int col_right){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->set_selection(row_top,col_left,row_bot,col_right);+  }+  FL_EXPORT_C(int,Fl_Table_Row_move_cursor)(fl_Table_Row table_row,int R,int C){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->move_cursor(R,C);+  }+  FL_EXPORT_C(void,Fl_Table_Row_resize_super)(fl_Table_Row table_row,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->resize_super(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Table_Row_resize)(fl_Table_Row table_row,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->resize(X,Y,W,H);+  }++  FL_EXPORT_C(void,Fl_Table_Row_draw_super)(fl_Table_Row table_row){+    (static_cast<Fl_Table_Row*>(table_row))->draw();+  }+  FL_EXPORT_C(void,Fl_Table_Row_draw)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->draw();+  }+  FL_EXPORT_C(void,Fl_Table_Row_init_sizes)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->init_sizes();+  }+  FL_EXPORT_C(void,Fl_Table_Row_add)(fl_Table_Row table_row,fl_Widget wgt){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->add((static_cast<Fl_Widget*>(wgt)));+  }+  FL_EXPORT_C(void,Fl_Table_Row_insert)(fl_Table_Row table_row,fl_Widget wgt,int n){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->insert(*(static_cast<Fl_Widget*>(wgt)),n);+  }+  FL_EXPORT_C(void, Fl_Table_Row_insert_with_widget)(fl_Table_Row table_row,fl_Widget wgt, fl_Widget w2){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->insert(*(static_cast<Fl_Widget*>(wgt)),(static_cast<Fl_Widget*>(w2)));+  };+  FL_EXPORT_C(void,Fl_Table_Row_remove_widget)(fl_Table_Row table_row,fl_Widget w){+    (static_cast<Fl_Table_Row*>(table_row))->remove(*(static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Table_Row_clear_super)(fl_Table_Row table_row){+    (static_cast<Fl_Table_Row*>(table_row))->clear();+  }+  FL_EXPORT_C(void,Fl_Table_Row_clear)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->clear();+  }+  FL_EXPORT_C(void,Fl_Table_Row_begin)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->begin();+  }+  FL_EXPORT_C(void,Fl_Table_Row_end)(fl_Table_Row table_row){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->end();+  }+  FL_EXPORT_C(int,Fl_Table_Row_children)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->children();+  }+  FL_EXPORT_C(int,Fl_Table_Row_find)(fl_Table_Row table_row,fl_Widget wgt){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->find((static_cast<Fl_Widget*>(wgt)));+  }+  FL_EXPORT_C(int,Fl_Table_Row_callback_row)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->callback_row();+  }+  FL_EXPORT_C(int,Fl_Table_Row_callback_col)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->callback_col();+  }+  FL_EXPORT_C(TableContextC,Fl_Table_Row_callback_context)(fl_Table_Row table_row){+    Fl_DerivedTable_Row* t = (static_cast<Fl_DerivedTable_Row*>(table_row));+    Fl_Table_Row::TableContext context = t->callback_context();+    TableContextC ret = (TableContextC)-1;+    switch(context){+    case Fl_Table_Row::CONTEXT_NONE:      {ret = CONTEXT_NONEC;      break;}+    case Fl_Table_Row::CONTEXT_STARTPAGE: {ret = CONTEXT_STARTPAGEC; break;}+    case Fl_Table_Row::CONTEXT_ENDPAGE:   {ret = CONTEXT_ENDPAGEC;   break;}+    case Fl_Table_Row::CONTEXT_ROW_HEADER:{ret = CONTEXT_ROW_HEADERC;break;}+    case Fl_Table_Row::CONTEXT_COL_HEADER:{ret = CONTEXT_COL_HEADERC;break;}+    case Fl_Table_Row::CONTEXT_CELL:      {ret = CONTEXT_CELLC;      break;}+    case Fl_Table_Row::CONTEXT_TABLE:     {ret = CONTEXT_TABLEC;     break;}+    case Fl_Table_Row::CONTEXT_RC_RESIZE: {ret = CONTEXT_RC_RESIZEC; break;}+    default:                          {ret = TableContextC(-1);  break;}+    }+    return ret;+  }+  FL_EXPORT_C(void,Fl_Table_Row_do_callback)(fl_Table_Row table_row, TableContextC tableContext, int row, int col){+    Fl_Table_Row::TableContext c = (Fl_Table_Row::TableContext)-1;+    switch(tableContext){+    case CONTEXT_NONEC:      {c = Fl_Table_Row::CONTEXT_NONE;      break;}+    case CONTEXT_STARTPAGEC: {c = Fl_Table_Row::CONTEXT_STARTPAGE; break;}+    case CONTEXT_ENDPAGEC:   {c = Fl_Table_Row::CONTEXT_ENDPAGE;   break;}+    case CONTEXT_ROW_HEADERC:{c = Fl_Table_Row::CONTEXT_ROW_HEADER;break;}+    case CONTEXT_COL_HEADERC:{c = Fl_Table_Row::CONTEXT_COL_HEADER;break;}+    case CONTEXT_CELLC:      {c = Fl_Table_Row::CONTEXT_CELL;      break;}+    case CONTEXT_TABLEC:     {c = Fl_Table_Row::CONTEXT_TABLE;     break;}+    case CONTEXT_RC_RESIZEC: {c = Fl_Table_Row::CONTEXT_RC_RESIZE; break;}+    default:                 {c = (Fl_Table_Row::TableContext)-1;  break;}+    }+    (static_cast<Fl_DerivedTable_Row*>(table_row))->do_callback(c, row, col);+  }+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(void, Fl_Table_Row_set_tab_cell_nav)(fl_Table_Row table_row, int val){+    (static_cast<Fl_DerivedTable_Row*>(table_row))->tab_cell_nav(val);+  }+  FL_EXPORT_C(int,  Fl_Table_Row_tab_cell_nav)(fl_Table_Row table_row){+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->tab_cell_nav();+  }+#endif+  FL_EXPORT_C(int,  Fl_Table_Row_find_cell)(fl_Table_Row table_row, TableContextC context, int R, int C, int *X, int *Y, int *W, int *H){+    Fl_Table::TableContext c = (Fl_Table::TableContext)-1;+    switch(context){+    case CONTEXT_NONEC:      {c = Fl_Table::CONTEXT_NONE;      break;}+    case CONTEXT_STARTPAGEC: {c = Fl_Table::CONTEXT_STARTPAGE; break;}+    case CONTEXT_ENDPAGEC:   {c = Fl_Table::CONTEXT_ENDPAGE;   break;}+    case CONTEXT_ROW_HEADERC:{c = Fl_Table::CONTEXT_ROW_HEADER;break;}+    case CONTEXT_COL_HEADERC:{c = Fl_Table::CONTEXT_COL_HEADER;break;}+    case CONTEXT_CELLC:      {c = Fl_Table::CONTEXT_CELL;      break;}+    case CONTEXT_TABLEC:     {c = Fl_Table::CONTEXT_TABLE;     break;}+    case CONTEXT_RC_RESIZEC: {c = Fl_Table::CONTEXT_RC_RESIZE; break;}+    default:                 {c = (Fl_Table::TableContext)-1;  break;}+    }+    return (static_cast<Fl_DerivedTable_Row*>(table_row))->find_cell(c,R,C,*X,*Y,*W,*H);+  }+  FL_EXPORT_C(fl_Table_Row, Fl_Table_Row_New_WithLabel)(int X, int Y, int W, int H, const char *l){+    fl_Table_Row_Virtual_Funcs* funcs = Fl_Table_Row_default_virtual_funcs();+    Fl_DerivedTable_Row* table = new Fl_DerivedTable_Row(X,Y,W,H,l,funcs);+    return (fl_Table_Row)table;+  }+  FL_EXPORT_C(fl_Table_Row, Fl_Table_Row_New)(int X, int Y, int W, int H){+    fl_Table_Row_Virtual_Funcs* funcs = Fl_Table_Row_default_virtual_funcs();+    Fl_DerivedTable_Row* table = new Fl_DerivedTable_Row(X,Y,W,H,funcs);+    return (fl_Table_Row)table;+  }+  FL_EXPORT_C(fl_Table_Row, Fl_OverriddenTable_Row_New_WithLabel)(int X, int Y, int W, int H, const char *l, fl_Table_Virtual_Funcs* funcs){+    Fl_DerivedTable_Row* table = new Fl_DerivedTable_Row(X,Y,W,H,l,funcs);+    return (fl_Table_Row)table;+  }+  FL_EXPORT_C(fl_Table_Row, Fl_OverriddenTable_Row_New)(int X, int Y, int W, int H, fl_Table_Virtual_Funcs* funcs){+    Fl_DerivedTable_Row* table = new Fl_DerivedTable_Row(X,Y,W,H,funcs);+    return (fl_Table_Row)table;+  }+  FL_EXPORT_C(void, Fl_Table_Row_Destroy)(fl_Table_Row table_row){+    delete (static_cast<Fl_DerivedTable_Row*>(table_row));+  }+  FL_EXPORT_C(TableRowSelectModeC,Fl_Table_Row_type)(fl_Table_Row table){+    Fl_Table_Row::TableRowSelectMode m = (static_cast<Fl_DerivedTable_Row*>(table))->type();+    TableRowSelectModeC mode = (TableRowSelectModeC)-1;+    switch(m){+    case Fl_Table_Row::SELECT_NONE:   {mode = SELECT_NONEC; break;}+    case Fl_Table_Row::SELECT_SINGLE: {mode = SELECT_SINGLEC; break;}+    case Fl_Table_Row::SELECT_MULTI:  {mode = SELECT_MULTIC; break;}+    default:                          {mode = (TableRowSelectModeC)-1;  break;}+    }+    return mode;+  }+  FL_EXPORT_C(void,Fl_Table_Row_set_type)(fl_Table_Row table,TableRowSelectModeC m){+    Fl_Table_Row::TableRowSelectMode mode = (Fl_Table_Row::TableRowSelectMode)-1;+    switch(m){+    case SELECT_NONEC:   {mode = Fl_Table_Row::SELECT_NONE; break;}+    case SELECT_SINGLEC: {mode = Fl_Table_Row::SELECT_SINGLE; break;}+    case SELECT_MULTIC:  {mode = Fl_Table_Row::SELECT_MULTI; break;}+    default:             {mode = (Fl_Table_Row::TableRowSelectMode)-1;  break;}+    }+    return (static_cast<Fl_DerivedTable_Row*>(table))->type(mode);+  }+  FL_EXPORT_C(int,Fl_Table_Row_row_selected)(fl_Table_Row row,int rowIndex){+    return (static_cast<Fl_DerivedTable_Row*>(row))->row_selected(rowIndex);+  }+  FL_EXPORT_C(int,Fl_Table_Row_select_row)(fl_Table_Row row,int rowIndex){+    return (static_cast<Fl_DerivedTable_Row*>(row))->select_row(rowIndex);+  }+  FL_EXPORT_C(int,Fl_Table_Row_select_row_with_flag)(fl_Table_Row row,int rowIndex,int flag){+    return (static_cast<Fl_DerivedTable_Row*>(row))->select_row(rowIndex,flag);+  }+  FL_EXPORT_C(void,Fl_Table_Row_select_all_rows)(fl_Table_Row row){+    (static_cast<Fl_DerivedTable_Row*>(row))->select_all_rows();+  }+  FL_EXPORT_C(void,Fl_Table_Row_select_all_rows_with_flag)(fl_Table_Row row,int flag){+    (static_cast<Fl_DerivedTable_Row*>(row))->select_all_rows(flag);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Table_RowC.h view
@@ -0,0 +1,254 @@+#ifndef __FL_TABLE_ROW_C__+#define __FL_TABLE_ROW_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Table_Row.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Table_Row_handle_super)(fl_Table_Row self, int event);+  FL_EXPORT_C(int,Fl_Table_Row_handle)(fl_Table_Row self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Table_Row_parent)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_parent)(fl_Table_Row table, fl_Group grp);++FL_EXPORT_C(void, Fl_Table_Row_draw_box)(fl_Table_Row Table_Row);+FL_EXPORT_C(void, Fl_Table_Row_draw_box_with_tc)(fl_Table_Row Table_Row,Fl_Boxtype t, Fl_Color c);+FL_EXPORT_C(void, Fl_Table_Row_draw_box_with_txywhc)(fl_Table_Row Table_Row,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+FL_EXPORT_C(void, Fl_Table_Row_draw_backdrop)(fl_Table_Row Table_Row);+FL_EXPORT_C(void, Fl_Table_Row_draw_focus)(fl_Table_Row Table_Row);+FL_EXPORT_C(void, Fl_Table_Row_draw_focus_with_txywh)(fl_Table_Row Table_Row,Fl_Boxtype t, int x,int y,int w,int h);+FL_EXPORT_C(void, Fl_Table_Row_draw_label)(fl_Table_Row Table_Row);+  FL_EXPORT_C(int,          Fl_Table_Row_x)(fl_Table_Row table);+  FL_EXPORT_C(int,          Fl_Table_Row_y)(fl_Table_Row table);+  FL_EXPORT_C(int,          Fl_Table_Row_w)(fl_Table_Row table);+  FL_EXPORT_C(int,          Fl_Table_Row_h)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_align)(fl_Table_Row table_row, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Table_Row_align)(fl_Table_Row table);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Table_Row_box)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_box)(fl_Table_Row table, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Table_Row_color)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_color)(fl_Table_Row table, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Table_Row_set_color_with_bg_sel)(fl_Table_Row table,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Table_Row_selection_color)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_selection_color)(fl_Table_Row table, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Table_Row_label)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_copy_label)(fl_Table_Row table, const char* new_label);+  FL_EXPORT_C(void,         Fl_Table_Row_set_label)(fl_Table_Row table, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Table_Row_labeltype)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_labeltype)(fl_Table_Row table, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Table_Row_labelcolor)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_labelcolor)(fl_Table_Row table, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Table_Row_item_labelfont)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_item_labelfont)(fl_Table_Row table, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Table_Row_item_labelsize)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_item_labelsize)(fl_Table_Row table, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Table_Row_image)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_image)(fl_Table_Row table, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Table_Row_deimage)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_deimage)(fl_Table_Row table, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Table_Row_tooltip)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_copy_tooltip)(fl_Table_Row table, const char* text);+  FL_EXPORT_C(void,         Fl_Table_Row_set_tooltip)(fl_Table_Row table, const char* text);+  FL_EXPORT_C(void,         Fl_Table_Row_set_callback_with_user_data)(fl_Table_Row table, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Table_Row_set_callback)(fl_Table_Row table, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Table_Row_other_data)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_other_data)(fl_Table_Row table, void* v);+  FL_EXPORT_C(void*,        Fl_Table_Row_user_data)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_user_data)(fl_Table_Row table, void* v);+  FL_EXPORT_C(long,         Fl_Table_Row_argument)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_argument)(fl_Table_Row table, long v);+  FL_EXPORT_C(Fl_When,      Fl_Table_Row_when)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_when)(fl_Table_Row table, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Table_Row_visible)(fl_Table_Row table);+  FL_EXPORT_C(int,          Fl_Table_Row_visible_r)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_show_super)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_show)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_hide_super)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_hide)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_visible)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_clear_visible)(fl_Table_Row table);+  FL_EXPORT_C(unsigned int, Fl_Table_Row_active)(fl_Table_Row table);+  FL_EXPORT_C(int,          Fl_Table_Row_active_r)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_activate)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_deactivate)(fl_Table_Row table);+  FL_EXPORT_C(unsigned int, Fl_Table_Row_output)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_output)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_clear_output)(fl_Table_Row table);+  FL_EXPORT_C(unsigned int, Fl_Table_Row_takesevents)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_changed)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_clear_changed)(fl_Table_Row table);+  FL_EXPORT_C(int,          Fl_Table_Row_take_focus)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_visible_focus)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_clear_visible_focus)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_modify_visible_focus)(fl_Table_Row table, int v);+  FL_EXPORT_C(unsigned int, Fl_Table_Row_visible_focus)(fl_Table_Row table);+  FL_EXPORT_C(int,          Fl_Table_Row_contains)(fl_Table_Row table, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Table_Row_inside)(fl_Table_Row table, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Table_Row_redraw)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_redraw_label)(fl_Table_Row table);+  FL_EXPORT_C(uchar,        Fl_Table_Row_damage)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_clear_damage_with_bitmask)(fl_Table_Row table, uchar c);+  FL_EXPORT_C(void,         Fl_Table_Row_clear_damage)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_damage_with_text)(fl_Table_Row table, uchar c);+  FL_EXPORT_C(void,         Fl_Table_Row_damage_inside_widget)(fl_Table_Row table, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Table_Row_draw_label_with_xywh_alignment)(fl_Table_Row table, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Table_Row_measure_label)(fl_Table_Row table, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Table_Row_window)(fl_Table_Row table);+  FL_EXPORT_C(fl_Window,    Fl_Table_Row_top_window)(fl_Table_Row table);+  FL_EXPORT_C(fl_Window ,   Fl_Table_Row_top_window_offset)(fl_Table_Row table, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Table_Row_as_group_super)(fl_Table_Row table);+  FL_EXPORT_C(fl_Group,     Fl_Table_Row_as_group)(fl_Table_Row table);+  FL_EXPORT_C(fl_Gl_Window, Fl_Table_Row_as_gl_window_super)(fl_Table_Row table);+  FL_EXPORT_C(fl_Gl_Window, Fl_Table_Row_as_gl_window)(fl_Table_Row table);++  /* Fl_Group specific */+  FL_EXPORT_C(void,         Fl_Table_Row_remove_widget)(fl_Table_Row table, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Table_Row_clear_super)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_clear)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_resizable_by_reference)(fl_Table_Row table,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Table_Row_set_resizable)(fl_Table_Row table,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Table_Row_resizable)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_add_resizable)(fl_Table_Row table,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Table_Row_init_sizes)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_set_clip_children)(fl_Table_Row table,int c);+  FL_EXPORT_C(unsigned int, Fl_Table_Row_clip_children)(fl_Table_Row table);+  FL_EXPORT_C(void,         Fl_Table_Row_focus)(fl_Table_Row table,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Table_Row__ddfdesign_kludge)(fl_Table_Row table);++  FL_EXPORT_C(void,         Fl_Table_Row_insert_with_before)(fl_Table_Row self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*, Fl_Table_Row_array)(fl_Table_Row self);+  FL_EXPORT_C(fl_Widget, Fl_Table_Row_child)(fl_Table_Row self, int n);+  /* FL_EXPORT_C(void     , Fl_Table_Row_forms_end)(fl_Table_Row self); */++  /* Inherited from Fl_Table_Row */+#ifdef __cplusplus+  class Fl_DerivedTable_Row : public Fl_Table_Row {+    fl_Table_Row_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    using Fl_Table_Row::rows;+    using Fl_Table_Row::cols;+    void* get_other_data();+    void set_other_data(void*);+    void destroy_data();+    int find_cell(TableContext context, int R, int C, int &X, int &Y, int &W, int &H);+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    virtual int handle(int event);+    int handle_super(int event);+    void resize_super(int x, int y, int w, int h);+    virtual void resize(int x, int y, int w, int h);+    virtual void show();+    virtual void hide();+    virtual Fl_Group* as_group();+    virtual Fl_Window* as_window();+    virtual Fl_Gl_Window* as_gl_window();+    virtual void draw_cell(TableContext tableContext, int R, int C, int X, int Y, int W, int H);+    virtual void clear();+    virtual void rows(int val);+    virtual void cols(int val);+    Fl_DerivedTable_Row(int X, int Y, int W, int H, const char *l, fl_Table_Row_Virtual_Funcs* funcs);+    Fl_DerivedTable_Row(int X, int Y, int W, int H, fl_Table_Row_Virtual_Funcs* funcs);+    ~Fl_DerivedTable_Row();+  };+#endif+  FL_EXPORT_C(fl_Table_Row_Virtual_Funcs*, Fl_Table_Row_default_virtual_funcs)();+  FL_EXPORT_C(void, Fl_Table_Row_set_table_box)(fl_Table_Row table,Fl_Boxtype val);+  FL_EXPORT_C(Fl_Boxtype, Fl_Table_Row_table_box)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_rows_super)(fl_Table_Row table,int val);+  FL_EXPORT_C(void, Fl_Table_Row_set_rows)(fl_Table_Row table,int val);+  FL_EXPORT_C(int, Fl_Table_Row_rows)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_cols_super)(fl_Table_Row table, int val);+  FL_EXPORT_C(void, Fl_Table_Row_set_cols)(fl_Table_Row table, int val);+  FL_EXPORT_C(int, Fl_Table_Row_cols)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_visible_cells)(fl_Table_Row table,int* r1, int* r2, int* c1, int* c2);+  FL_EXPORT_C(int, Fl_Table_Row_is_interactive_resize)(fl_Table_Row table);+  FL_EXPORT_C(int, Fl_Table_Row_row_resize)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_row_resize)(fl_Table_Row table,int flag);+  FL_EXPORT_C(int, Fl_Table_Row_col_resize)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_col_resize)(fl_Table_Row table,int flag);+  FL_EXPORT_C(int, Fl_Table_Row_col_resize_min)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_col_resize_min)(fl_Table_Row table,int val);+  FL_EXPORT_C(int, Fl_Table_Row_row_resize_min)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_row_resize_min)(fl_Table_Row table,int val);+  FL_EXPORT_C(int, Fl_Table_Row_row_header)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_row_header)(fl_Table_Row table,int flag);+  FL_EXPORT_C(int, Fl_Table_Row_col_header)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_col_header)(fl_Table_Row table,int flag);+  FL_EXPORT_C(void, Fl_Table_Row_set_col_header_height)(fl_Table_Row table,int height);+  FL_EXPORT_C(int, Fl_Table_Row_col_header_height)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_row_header_width)(fl_Table_Row table,int width);+  FL_EXPORT_C(int, Fl_Table_Row_row_header_width)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_row_header_color)(fl_Table_Row table,Fl_Color val);+  FL_EXPORT_C(Fl_Color, Fl_Table_Row_row_header_color)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_col_header_color)(fl_Table_Row table,Fl_Color val);+  FL_EXPORT_C(Fl_Color, Fl_Table_Row_col_header_color)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_row_height)(fl_Table_Row table,int row, int height);+  FL_EXPORT_C(int, Fl_Table_Row_row_height)(fl_Table_Row table,int row);+  FL_EXPORT_C(void, Fl_Table_Row_set_col_width)(fl_Table_Row table,int col, int width);+  FL_EXPORT_C(int, Fl_Table_Row_col_width)(fl_Table_Row table,int col);+  FL_EXPORT_C(void, Fl_Table_Row_set_row_height_all)(fl_Table_Row table,int height);+  FL_EXPORT_C(void, Fl_Table_Row_set_col_width_all)(fl_Table_Row table,int width);+  FL_EXPORT_C(void, Fl_Table_Row_set_row_position)(fl_Table_Row table,int row);+  FL_EXPORT_C(void, Fl_Table_Row_set_col_position)(fl_Table_Row table,int col);+  FL_EXPORT_C(int, Fl_Table_Row_row_position)(fl_Table_Row table);+  FL_EXPORT_C(int, Fl_Table_Row_col_position)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_set_top_row)(fl_Table_Row table,int row);+  FL_EXPORT_C(int, Fl_Table_Row_top_row)(fl_Table_Row table);+  FL_EXPORT_C(int, Fl_Table_Row_is_selected)(fl_Table_Row table,int r, int c);+  FL_EXPORT_C(void, Fl_Table_Row_get_selection)(fl_Table_Row table,int *row_top, int *col_left, int *row_bot, int *col_right);+  FL_EXPORT_C(void, Fl_Table_Row_set_selection)(fl_Table_Row table,int row_top, int col_left, int row_bot, int col_right);+  FL_EXPORT_C(int, Fl_Table_Row_move_cursor)(fl_Table_Row table,int R, int C);+  FL_EXPORT_C(void, Fl_Table_Row_resize_super)(fl_Table_Row table,int X, int Y, int W, int H);+  FL_EXPORT_C(void, Fl_Table_Row_resize)(fl_Table_Row table,int X, int Y, int W, int H);+  FL_EXPORT_C(void, Fl_Table_Row_draw)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_init_sizes)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_add)(fl_Table_Row table,fl_Widget wgt);+  FL_EXPORT_C(void, Fl_Table_Row_add)(fl_Table_Row table,fl_Widget wgt);+  FL_EXPORT_C(void, Fl_Table_Row_insert)(fl_Table_Row table,fl_Widget wgt, int n);+  FL_EXPORT_C(void, Fl_Table_Row_insert_with_widget)(fl_Table_Row table,fl_Widget wgt, fl_Widget w2);+  FL_EXPORT_C(void, Fl_Table_Row_begin)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_end)(fl_Table_Row table);+  FL_EXPORT_C(fl_Widget*, Fl_Table_Row_array)(fl_Table_Row table);+  FL_EXPORT_C(fl_Widget, Fl_Table_Row_child)(fl_Table_Row table,int n);+  FL_EXPORT_C(int, Fl_Table_Row_children)(fl_Table_Row table);+  FL_EXPORT_C(int, Fl_Table_Row_find)(fl_Table_Row table,fl_Widget wgt);+  FL_EXPORT_C(int, Fl_Table_Row_callback_row)(fl_Table_Row table);+  FL_EXPORT_C(int, Fl_Table_Row_callback_col)(fl_Table_Row table);+  FL_EXPORT_C(TableContextC, Fl_Table_Row_callback_context)(fl_Table_Row table);+  FL_EXPORT_C(void, Fl_Table_Row_do_callback)(fl_Table_Row table, TableContextC tableContext, int row, int col);+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(void, Fl_Table_Row_set_tab_cell_nav)(fl_Table_Row table, int val);+  FL_EXPORT_C(int,  Fl_Table_Row_tab_cell_nav)(fl_Table_Row table);+#endif+  FL_EXPORT_C(int,  Fl_Table_Row_find_cell)(fl_Table_Row table, TableContextC context, int R, int C, int *X, int *Y, int *W, int *H);++  /* Fl_Table_Row specific */+  FL_EXPORT_C(fl_Table_Row, Fl_Table_Row_New_WithLabel)(int X, int Y, int W, int H, const char *l);+  FL_EXPORT_C(fl_Table_Row, Fl_Table_Row_New)(int X, int Y, int W, int H);+  FL_EXPORT_C(fl_Table_Row, Fl_OverriddenTable_Row_New_WithLabel)(int X, int Y, int W, int H, const char *l, fl_Table_Row_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Table_Row, Fl_OverriddenTable_Row_New)(int X, int Y, int W, int H, fl_Table_Row_Virtual_Funcs* funcs);+  FL_EXPORT_C(void, Fl_Table_Row_Destroy)(fl_Table_Row table);+  FL_EXPORT_C(TableRowSelectModeC,Fl_Table_Row_type)(fl_Table_Row table);+  FL_EXPORT_C(void,Fl_Table_Row_set_type)(fl_Table_Row table, TableRowSelectModeC t);+  FL_EXPORT_C(int, Fl_Table_Row_row_selected)(fl_Table_Row row, int rowIndex);+  FL_EXPORT_C(int, Fl_Table_Row_select_row)(fl_Table_Row row, int rowIndex);+  FL_EXPORT_C(int, Fl_Table_Row_select_row_with_flag)(fl_Table_Row row, int rowIndex, int flag); // flag = 1+  FL_EXPORT_C(void, Fl_Table_Row_select_all_rows)(fl_Table_Row row);+  FL_EXPORT_C(void, Fl_Table_Row_select_all_rows_with_flag)(fl_Table_Row row, int flag); // flag = 1+  FL_EXPORT_C(void, Fl_Table_Row_clear)(fl_Table_Row row);+#ifdef __cplusplus+}+#endif+#endif
+ c-src/Fl_TabsC.cpp view
@@ -0,0 +1,334 @@+#include "Fl_TabsC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Tabs_handle)(fl_Tabs self, int event){+    return (static_cast<Fl_Tabs*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Tabs_parent)(fl_Tabs tabs){+    return (fl_Group) (static_cast<Fl_Tabs*>(tabs))->parent();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_parent)(fl_Tabs tabs,fl_Group grp){+    (static_cast<Fl_Tabs*>(tabs))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Tabs_type)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->type();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_type)(fl_Tabs tabs,uchar t){+    (static_cast<Fl_Tabs*>(tabs))->type(t);+  }++  FL_EXPORT_C(int,Fl_Tabs_x)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->x();+  }+  FL_EXPORT_C(int,Fl_Tabs_y)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->y();+  }+  FL_EXPORT_C(int,Fl_Tabs_w)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->w();+  }+  FL_EXPORT_C(int,Fl_Tabs_h)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->h();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_align)(fl_Tabs tabs, Fl_Align alignment){+    (static_cast<Fl_Tabs*>(tabs))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Tabs_align)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Tabs_box)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->box();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_box)(fl_Tabs tabs,Fl_Boxtype new_box){+    (static_cast<Fl_Tabs*>(tabs))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Tabs_color)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->color();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_color)(fl_Tabs tabs,Fl_Color bg){+    (static_cast<Fl_Tabs*>(tabs))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Tabs_set_color_with_bg_sel)(fl_Tabs tabs,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Tabs*>(tabs))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tabs_selection_color)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_selection_color)(fl_Tabs tabs,Fl_Color a){+    (static_cast<Fl_Tabs*>(tabs))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Tabs_label)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->label();+  }+  FL_EXPORT_C(void,Fl_Tabs_copy_label)(fl_Tabs tabs,const char* new_label){+    (static_cast<Fl_Tabs*>(tabs))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Tabs_set_label)(fl_Tabs tabs,const char* text){+    (static_cast<Fl_Tabs*>(tabs))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Tabs_labeltype)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_labeltype)(fl_Tabs tabs,Fl_Labeltype a){+    (static_cast<Fl_Tabs*>(tabs))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Tabs_set_labelcolor)(fl_Tabs tabs,Fl_Color c){+    (static_cast<Fl_Tabs*>(tabs))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Tabs_labelcolor)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->labelcolor();+  }+  FL_EXPORT_C(fl_Image,Fl_Tabs_image)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->image();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_image)(fl_Tabs tabs,fl_Image pix){+    (static_cast<Fl_Tabs*>(tabs))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Tabs_deimage)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->deimage();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_deimage)(fl_Tabs tabs,fl_Image pix){+    (static_cast<Fl_Tabs*>(tabs))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Tabs_tooltip)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Tabs_copy_tooltip)(fl_Tabs tabs,const char* text){+    (static_cast<Fl_Tabs*>(tabs))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Tabs_set_tooltip)(fl_Tabs tabs,const char* text){+    (static_cast<Fl_Tabs*>(tabs))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Tabs_set_callback_with_user_data)(fl_Tabs tabs,fl_Callback* cb,void* p){+    Fl_Tabs* castedButton = (static_cast<Fl_Tabs*>(tabs));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Tabs_set_callback)(fl_Tabs tabs,fl_Callback* cb){+    Fl_Tabs* castedButton = (static_cast<Fl_Tabs*>(tabs));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Tabs_user_data)(fl_Tabs tabs){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Tabs*>(tabs))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Tabs*>(tabs))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Tabs_set_user_data)(fl_Tabs tabs,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Tabs*>(tabs))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Tabs*>(tabs))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Tabs*>(tabs))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Tabs_argument)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->argument();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_argument)(fl_Tabs tabs,long v){+    (static_cast<Fl_Tabs*>(tabs))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Tabs_when)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->when();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_when)(fl_Tabs tabs,uchar i){+    (static_cast<Fl_Tabs*>(tabs))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Tabs_visible)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->visible();+  }+  FL_EXPORT_C(int,Fl_Tabs_visible_r)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_visible)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->visible();+  }+  FL_EXPORT_C(void,Fl_Tabs_clear_visible)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Tabs_active)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->active();+  }+  FL_EXPORT_C(int,Fl_Tabs_active_r)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->active_r();+  }+  FL_EXPORT_C(void,Fl_Tabs_activate)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->activate();+  }+  FL_EXPORT_C(void,Fl_Tabs_deactivate)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Tabs_output)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->output();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_output)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->output();+  }+  FL_EXPORT_C(void,Fl_Tabs_clear_output)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Tabs_takesevents)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_changed)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->changed();+  }+  FL_EXPORT_C(void,Fl_Tabs_clear_changed)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Tabs_take_focus)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_visible_focus)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Tabs_clear_visible_focus)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Tabs_modify_visible_focus)(fl_Tabs tabs,int v){+    (static_cast<Fl_Tabs*>(tabs))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Tabs_visible_focus)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Tabs_do_callback)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Tabs_do_callback_with_widget_and_user_data)(fl_Tabs tabs,fl_Widget w,long arg){+    (static_cast<Fl_Tabs*>(tabs))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Tabs_do_callback_with_widget_and_default_user_data)(fl_Tabs tabs,fl_Widget w){+    (static_cast<Fl_Tabs*>(tabs))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Tabs_contains)(fl_Tabs tabs,fl_Widget w){+    return (static_cast<Fl_Tabs*>(tabs))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Tabs_inside)(fl_Tabs tabs,fl_Widget w){+    return (static_cast<Fl_Tabs*>(tabs))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Tabs_redraw)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->redraw();+  }+  FL_EXPORT_C(void,Fl_Tabs_redraw_label)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Tabs_damage)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->damage();+  }+  FL_EXPORT_C(void,Fl_Tabs_clear_damage_with_bitmask)(fl_Tabs tabs,uchar c){+    (static_cast<Fl_Tabs*>(tabs))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Tabs_clear_damage)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Tabs_damage_with_text)(fl_Tabs tabs,uchar c){+    (static_cast<Fl_Tabs*>(tabs))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Tabs_damage_inside_widget)(fl_Tabs tabs,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Tabs*>(tabs))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Tabs_draw_label_with_xywh_alignment)(fl_Tabs tabs,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Tabs*>(tabs))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Tabs_measure_label)(fl_Tabs tabs,int* ww,int* hh){+    (static_cast<Fl_Tabs*>(tabs))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Tabs_window)(fl_Tabs tabs){+    return (fl_Window) (static_cast<Fl_Tabs*>(tabs))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Tabs_top_window)(fl_Tabs tabs){+    return (fl_Window) (static_cast<Fl_Tabs*>(tabs))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Tabs_top_window_offset)(fl_Tabs tabs, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Tabs*>(tabs))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Tabs_as_group)(fl_Tabs tabs){+    return (fl_Group) (static_cast<Fl_Tabs*>(tabs))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Tabs_as_gl_window)(fl_Tabs tabs){+    return (fl_Gl_Window) (static_cast<Fl_Tabs*>(tabs))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Tabs_begin)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->begin();+  }+  FL_EXPORT_C(void,Fl_Tabs_end)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->end();+  }+  FL_EXPORT_C(int,Fl_Tabs_find)(fl_Tabs tabs,fl_Widget w){+    return (static_cast<Fl_Tabs*>(tabs))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Tabs_set_resizable_by_reference)(fl_Tabs tabs,fl_Widget o){+    (static_cast<Fl_Tabs*>(tabs))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Tabs_set_resizable)(fl_Tabs tabs,fl_Widget o){+    (static_cast<Fl_Tabs*>(tabs))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Tabs_resizable)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->resizable();+  }+  FL_EXPORT_C(void,Fl_Tabs_add_resizable)(fl_Tabs tabs,fl_Widget o){+    return (static_cast<Fl_Tabs*>(tabs))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Tabs_init_sizes)(fl_Tabs tabs){+    (static_cast<Fl_Tabs*>(tabs))->init_sizes();+  }+  FL_EXPORT_C(void,Fl_Tabs_set_clip_children)(fl_Tabs tabs,int c){+    return (static_cast<Fl_Tabs*>(tabs))->clip_children(c);+  }+  FL_EXPORT_C(int,Fl_Tabs_children)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->children();+  }+  FL_EXPORT_C(unsigned int,Fl_Tabs_clip_children)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Tabs_focus)(fl_Tabs tabs, fl_Widget W){+    return (static_cast<Fl_Tabs*>(tabs))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Tabs__ddfdesign_kludge)(fl_Tabs tabs){+    return (static_cast<Fl_Tabs*>(tabs))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(fl_Widget*, Fl_Tabs_array)(fl_Tabs self){+    return (fl_Widget*)(static_cast<Fl_Tabs*>(self))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Tabs_child)(fl_Tabs self, int n){+    return (fl_Widget)(static_cast<Fl_Tabs*>(self))->child(n);+  }+  // FL_EXPORT_C(void     , Fl_Tabs_forms_end)(fl_Tabs self){+  //   (static_cast<Fl_Tabs*>(self))->forms_end();+  // }+  FL_EXPORT_C(fl_Tabs, Fl_Tabs_New)(int x, int y, int w, int h){+    Fl_Tabs* t = new Fl_Tabs(x,y,w,h);+    return (fl_Tabs)t;+  }+  FL_EXPORT_C(fl_Tabs, Fl_Tabs_New_WithLabel)(int x, int y, int w, int h, const char* l){+    Fl_Tabs* t = new Fl_Tabs(x,y,w,h,l);+    return (fl_Tabs)t;+  }+  FL_EXPORT_C(fl_Widget,Fl_Tabs_value)(fl_Tabs tabs){+    return (fl_Widget)(static_cast<Fl_Tabs*>(tabs))->value();+  }+  FL_EXPORT_C(int,Fl_Tabs_set_value)(fl_Tabs tabs,fl_Widget w){+    return (static_cast<Fl_Tabs*>(tabs))->value((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Tabs_push)(fl_Tabs tabs){+    return (fl_Widget)(static_cast<Fl_Tabs*>(tabs))->push();+  }+  FL_EXPORT_C(int,Fl_Tabs_set_push)(fl_Tabs tabs,fl_Widget w){+    return (static_cast<Fl_Tabs*>(tabs))->push((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Tabs_which)(fl_Tabs tabs,int event_x,int event_y){+    return (fl_Widget)(static_cast<Fl_Tabs*>(tabs))->which(event_x,event_y);+  }+  FL_EXPORT_C(void,Fl_Tabs_client_area)(fl_Tabs tabs,int* rx,int* ry,int* rw,int* rh){+    (static_cast<Fl_Tabs*>(tabs))->client_area(*rx,*ry,*rw,*rh);+  }+  FL_EXPORT_C(void,Fl_Tabs_client_area_with_tabh)(fl_Tabs tabs,int* rx,int* ry,int* rw,int* rh,int tabh){+    (static_cast<Fl_Tabs*>(tabs))->client_area(*rx,*ry,*rw,*rh,tabh);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_TabsC.h view
@@ -0,0 +1,130 @@+#ifndef __FL_TABS_C__+#define __FL_TABS_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Tabs.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Tabs_handle)(fl_Tabs self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Tabs_parent)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_parent)(fl_Tabs tabs, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Tabs_type)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_type)(fl_Tabs tabs, uchar t);++  FL_EXPORT_C(int,          Fl_Tabs_x)(fl_Tabs tabs);+  FL_EXPORT_C(int,          Fl_Tabs_y)(fl_Tabs tabs);+  FL_EXPORT_C(int,          Fl_Tabs_w)(fl_Tabs tabs);+  FL_EXPORT_C(int,          Fl_Tabs_h)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_align)(fl_Tabs tabs, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Tabs_align)(fl_Tabs tabs);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Tabs_box)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_box)(fl_Tabs tabs, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Tabs_color)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_color)(fl_Tabs tabs, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Tabs_set_color_with_bg_sel)(fl_Tabs tabs,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Tabs_selection_color)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_selection_color)(fl_Tabs tabs, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Tabs_label)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_copy_label)(fl_Tabs tabs, const char* new_label);+  FL_EXPORT_C(void,         Fl_Tabs_set_label)(fl_Tabs tabs, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Tabs_labeltype)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_labeltype)(fl_Tabs tabs, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Tabs_labelcolor)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_labelcolor)(fl_Tabs tabs, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Tabs_item_labelfont)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_item_labelfont)(fl_Tabs tabs, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Tabs_item_labelsize)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_item_labelsize)(fl_Tabs tabs, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Tabs_image)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_image)(fl_Tabs tabs, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Tabs_deimage)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_deimage)(fl_Tabs tabs, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Tabs_tooltip)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_copy_tooltip)(fl_Tabs tabs, const char* text);+  FL_EXPORT_C(void,         Fl_Tabs_set_tooltip)(fl_Tabs tabs, const char* text);+  FL_EXPORT_C(void,         Fl_Tabs_set_callback_with_user_data)(fl_Tabs tabs, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Tabs_set_callback)(fl_Tabs tabs, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Tabs_user_data)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_user_data)(fl_Tabs tabs, void* v);+  FL_EXPORT_C(long,         Fl_Tabs_argument)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_argument)(fl_Tabs tabs, long v);+  FL_EXPORT_C(Fl_When,      Fl_Tabs_when)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_when)(fl_Tabs tabs, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Tabs_visible)(fl_Tabs tabs);+  FL_EXPORT_C(int,          Fl_Tabs_visible_r)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_visible)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_clear_visible)(fl_Tabs tabs);+  FL_EXPORT_C(unsigned int, Fl_Tabs_active)(fl_Tabs tabs);+  FL_EXPORT_C(int,          Fl_Tabs_active_r)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_activate)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_deactivate)(fl_Tabs tabs);+  FL_EXPORT_C(unsigned int, Fl_Tabs_output)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_output)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_clear_output)(fl_Tabs tabs);+  FL_EXPORT_C(unsigned int, Fl_Tabs_takesevents)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_changed)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_clear_changed)(fl_Tabs tabs);+  FL_EXPORT_C(int,          Fl_Tabs_take_focus)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_visible_focus)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_clear_visible_focus)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_modify_visible_focus)(fl_Tabs tabs, int v);+  FL_EXPORT_C(unsigned int, Fl_Tabs_visible_focus)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_do_callback)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_do_callback_with_widget_and_user_data)(fl_Tabs tabs, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Tabs_do_callback_with_widget_and_default_user_data)(fl_Tabs tabs, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Tabs_contains)(fl_Tabs tabs, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Tabs_inside)(fl_Tabs tabs, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Tabs_redraw)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_redraw_label)(fl_Tabs tabs);+  FL_EXPORT_C(uchar,        Fl_Tabs_damage)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_clear_damage_with_bitmask)(fl_Tabs tabs, uchar c);+  FL_EXPORT_C(void,         Fl_Tabs_clear_damage)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_damage_with_text)(fl_Tabs tabs, uchar c);+  FL_EXPORT_C(void,         Fl_Tabs_damage_inside_widget)(fl_Tabs tabs, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Tabs_draw_label_with_xywh_alignment)(fl_Tabs tabs, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Tabs_measure_label)(fl_Tabs tabs, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Tabs_window)(fl_Tabs tabs);+  FL_EXPORT_C(fl_Window,    Fl_Tabs_top_window)(fl_Tabs tabs);+  FL_EXPORT_C(fl_Window ,   Fl_Tabs_top_window_offset)(fl_Tabs tabs, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Tabs_as_group)(fl_Tabs tabs);+  FL_EXPORT_C(fl_Gl_Window, Fl_Tabs_as_gl_window)(fl_Tabs tabs);++  /* Inherited from Fl_Group */+  FL_EXPORT_C(void,         Fl_Tabs_begin)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_end)(fl_Tabs tabs);+  FL_EXPORT_C(int,          Fl_Tabs_find)(fl_Tabs tabs, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Tabs_clear)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_resizable_by_reference)(fl_Tabs tabs,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Tabs_set_resizable)(fl_Tabs tabs,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Tabs_resizable)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_add_resizable)(fl_Tabs tabs,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Tabs_init_sizes)(fl_Tabs tabs);+  FL_EXPORT_C(int,          Fl_Tabs_children)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_set_clip_children)(fl_Tabs tabs,int c);+  FL_EXPORT_C(unsigned int, Fl_Tabs_clip_children)(fl_Tabs tabs);+  FL_EXPORT_C(void,         Fl_Tabs_focus)(fl_Tabs tabs,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Tabs__ddfdesign_kludge)(fl_Tabs tabs);+  FL_EXPORT_C(fl_Widget*,   Fl_Tabs_array)(fl_Tabs self);+  FL_EXPORT_C(fl_Widget,    Fl_Tabs_child)(fl_Tabs self, int n);+  FL_EXPORT_C(void,         Fl_Tabs_forms_end)(fl_Tabs self);++  /* Fl_Tabs specific */+  FL_EXPORT_C(fl_Tabs, Fl_Tabs_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Tabs, Fl_Tabs_New_WithLabel)(int x, int y, int w, int h, const char* l);+  FL_EXPORT_C(int, Fl_Tabs_handle)(fl_Tabs tabs, int event);+  FL_EXPORT_C(fl_Widget, Fl_Tabs_value)(fl_Tabs tabs);+  FL_EXPORT_C(int, Fl_Tabs_set_value)(fl_Tabs tabs, fl_Widget w);+  FL_EXPORT_C(fl_Widget, Fl_Tabs_push)(fl_Tabs tabs);+  FL_EXPORT_C(int, Fl_Tabs_set_push)(fl_Tabs tabs, fl_Widget w);+  FL_EXPORT_C(fl_Widget, Fl_Tabs_which)(fl_Tabs tabs, int event_x, int event_y);+  FL_EXPORT_C(void, Fl_Tabs_client_area)(fl_Tabs tabs, int* rx, int* ry, int* rw, int* rh);+  FL_EXPORT_C(void, Fl_Tabs_client_area_with_tabh)(fl_Tabs tabs, int* rx, int* ry, int* rw, int* rh, int tabh);+#ifdef __cplusplus+}+#endif+#endif /* __FL_TABS_C__ */
+ c-src/Fl_Text_BufferC.cpp view
@@ -0,0 +1,267 @@+#include "Fl_Text_BufferC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int, Fl_Text_Buffer_input_file_was_transcoded)(fl_Text_Buffer text_buffer){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->input_file_was_transcoded;+}+  FL_EXPORT_C(const char*, Fl_Text_Buffer_file_encoding_warning_message)(fl_Text_Buffer text_buffer){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->file_encoding_warning_message;+}+  FL_EXPORT_C(void, Fl_Text_Buffer_set_transcoding_warning_action)(fl_Text_Buffer text_buffer, fl_Text_Buffer_Callback* cb){+  C_to_Fl_Callback* c = new C_to_Fl_Callback(cb, text_buffer);+  c->set_callback((static_cast<Fl_Text_Buffer*>(text_buffer)));+}+  FL_EXPORT_C(int,Fl_Text_Buffer_length)(fl_Text_Buffer text_buffer){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->length();+}+  FL_EXPORT_C(char*,Fl_Text_Buffer_text)(fl_Text_Buffer text_buffer){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->text();+}+  FL_EXPORT_C(void,Fl_Text_Buffer_set_text)(fl_Text_Buffer text_buffer,const char* text){+  (static_cast<Fl_Text_Buffer*>(text_buffer))->text(text);+}+  FL_EXPORT_C(char*,Fl_Text_Buffer_text_range)(fl_Text_Buffer text_buffer,int start,int end){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->text_range(start,end);+}+  FL_EXPORT_C(unsigned int,Fl_Text_Buffer_char_at)(fl_Text_Buffer text_buffer,int pos){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->char_at(pos);+}+  FL_EXPORT_C(char,Fl_Text_Buffer_byte_at)(fl_Text_Buffer text_buffer,int pos){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->byte_at(pos);+}+  FL_EXPORT_C(char*,Fl_Text_Buffer_address)(fl_Text_Buffer text_buffer,int pos){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->address(pos);+}+  FL_EXPORT_C(void,Fl_Text_Buffer_insert)(fl_Text_Buffer text_buffer,int pos,const char* text){+  (static_cast<Fl_Text_Buffer*>(text_buffer))->insert(pos,text);+}+  FL_EXPORT_C(void,Fl_Text_Buffer_append)(fl_Text_Buffer text_buffer,const char* t){+  (static_cast<Fl_Text_Buffer*>(text_buffer))->append(t);+}+  FL_EXPORT_C(void,Fl_Text_Buffer_remove)(fl_Text_Buffer text_buffer,int start,int end){+  (static_cast<Fl_Text_Buffer*>(text_buffer))->remove(start,end);+}+  FL_EXPORT_C(void,Fl_Text_Buffer_replace)(fl_Text_Buffer text_buffer,int start,int end,const char* text){+  (static_cast<Fl_Text_Buffer*>(text_buffer))->replace(start,end,text);+}+  FL_EXPORT_C(void,Fl_Text_Buffer_copy)(fl_Text_Buffer text_buffer,fl_Text_Buffer fromBuf,int fromStart,int fromEnd,int toPos){+  (static_cast<Fl_Text_Buffer*>(text_buffer))->copy((static_cast<Fl_Text_Buffer*>(fromBuf)),fromStart,fromEnd,toPos);+}+  FL_EXPORT_C(int,Fl_Text_Buffer_undo)(fl_Text_Buffer text_buffer){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->undo();+}+  FL_EXPORT_C(int,Fl_Text_Buffer_undo_with_cp)(fl_Text_Buffer text_buffer,int* cp){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->undo(cp);+}+  FL_EXPORT_C(void,Fl_Text_Buffer_canUndo)(fl_Text_Buffer text_buffer){+  (static_cast<Fl_Text_Buffer*>(text_buffer))->canUndo();+}+  FL_EXPORT_C(void,Fl_Text_Buffer_canUndo_with_flag)(fl_Text_Buffer text_buffer,char flag){+  (static_cast<Fl_Text_Buffer*>(text_buffer))->canUndo(flag);+}+  FL_EXPORT_C(int,Fl_Text_Buffer_insertfile)(fl_Text_Buffer text_buffer,const char* file,int pos){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->insertfile(file,pos);+}+  FL_EXPORT_C(int,Fl_Text_Buffer_insertfile_with_buflen)(fl_Text_Buffer text_buffer,const char* file,int pos,int buflen){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->insertfile(file,pos,buflen);+}+  FL_EXPORT_C(int,Fl_Text_Buffer_appendfile)(fl_Text_Buffer text_buffer,const char* file){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->appendfile(file);+}+  FL_EXPORT_C(int,Fl_Text_Buffer_appendfile_with_buflen)(fl_Text_Buffer text_buffer,const char* file,int buflen){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->appendfile(file,buflen);+}+  FL_EXPORT_C(int,Fl_Text_Buffer_loadfile)(fl_Text_Buffer text_buffer,const char* file){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->loadfile(file);+}+  FL_EXPORT_C(int,Fl_Text_Buffer_loadfile_with_buflen)(fl_Text_Buffer text_buffer,const char* file,int buflen){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->loadfile(file,buflen);+}+  FL_EXPORT_C(int,Fl_Text_Buffer_outputfile)(fl_Text_Buffer text_buffer,const char* file,int start,int end){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->outputfile(file,start,end);+}+  FL_EXPORT_C(int,Fl_Text_Buffer_outputfile_with_buflen)(fl_Text_Buffer text_buffer,const char* file,int start,int end,int buflen){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->outputfile(file,start,end,buflen);+}+  FL_EXPORT_C(int,Fl_Text_Buffer_savefile)(fl_Text_Buffer text_buffer,const char* file){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->savefile(file);+}+  FL_EXPORT_C(int,Fl_Text_Buffer_savefile_with_buflen)(fl_Text_Buffer text_buffer,const char* file,int buflen){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->savefile(file,buflen);+}+  FL_EXPORT_C(int,Fl_Text_Buffer_tab_distance)(fl_Text_Buffer text_buffer){+  return (static_cast<Fl_Text_Buffer*>(text_buffer))->tab_distance();+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_set_tab_distance)(fl_Text_Buffer text_buffer,int tabDist){+  (static_cast<Fl_Text_Buffer*>(text_buffer))->tab_distance(tabDist);+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_remove_selection)(fl_Text_Buffer text_buffer){+  (static_cast<Fl_Text_Buffer*>(text_buffer))->remove_selection();+}+  FL_EXPORT_C(void,Fl_Text_Buffer_select)(fl_Text_Buffer text_buffer,int start,int end){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->select(start,end);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_selected)(fl_Text_Buffer text_buffer){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->selected();+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_unselect)(fl_Text_Buffer text_buffer){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->unselect();+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_selection_position)(fl_Text_Buffer text_buffer,int* start,int* end){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->selection_position(start,end);+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_set_secondary_unselect)(fl_Text_Buffer text_buffer){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->secondary_unselect();+  }+  FL_EXPORT_C(char*,Fl_Text_Buffer_selection_text)(fl_Text_Buffer text_buffer){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->selection_text();+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_replace_selection)(fl_Text_Buffer text_buffer,const char* text){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->replace_selection(text);+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_secondary_select)(fl_Text_Buffer text_buffer,int start,int end){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->secondary_select(start,end);+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_replace_secondary_selection)(fl_Text_Buffer text_buffer,const char* text){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->replace_secondary_selection(text);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_secondary_selected)(fl_Text_Buffer text_buffer){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->secondary_selected();+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_secondary_selection_position)(fl_Text_Buffer text_buffer,int* start,int* end){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->secondary_selection_position(start,end);+  }+  FL_EXPORT_C(char*,Fl_Text_Buffer_secondary_selection_text)(fl_Text_Buffer text_buffer){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->secondary_selection_text();+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_highlight_position)(fl_Text_Buffer text_buffer,int* start,int* end){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->highlight_position(start,end);+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_remove_secondary_selection)(fl_Text_Buffer text_buffer){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->remove_secondary_selection();+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_add_modify_callback)(fl_Text_Buffer text_buffer,Fl_Text_Modify_Cb bufModifiedCB,void* cbArg){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->add_modify_callback(bufModifiedCB,cbArg);+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_set_highlight)(fl_Text_Buffer text_buffer,int start,int end){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->highlight(start,end);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_highlight)(fl_Text_Buffer text_buffer){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->highlight();+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_unhighlight)(fl_Text_Buffer text_buffer){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->unhighlight();+  }+  FL_EXPORT_C(char*,Fl_Text_Buffer_highlight_text)(fl_Text_Buffer text_buffer){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->highlight_text();+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_remove_modify_callback)(fl_Text_Buffer text_buffer,Fl_Text_Modify_Cb bufModifiedCB,void* cbArg){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->remove_modify_callback(bufModifiedCB,cbArg);+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_call_modify_callbacks)(fl_Text_Buffer text_buffer){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->call_modify_callbacks();+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_add_predelete_callback)(fl_Text_Buffer text_buffer,Fl_Text_Predelete_Cb bufPredelCB,void* cbArg){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->add_predelete_callback(bufPredelCB,cbArg);+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_remove_predelete_callback)(fl_Text_Buffer text_buffer,Fl_Text_Predelete_Cb predelCB,void* cbArg){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->remove_predelete_callback(predelCB,cbArg);+  }+  FL_EXPORT_C(void,Fl_Text_Buffer_call_predelete_callbacks)(fl_Text_Buffer text_buffer){+    (static_cast<Fl_Text_Buffer*>(text_buffer))->call_predelete_callbacks();+  }+  FL_EXPORT_C(char*,Fl_Text_Buffer_line_text)(fl_Text_Buffer text_buffer,int pos){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->line_text(pos);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_line_start)(fl_Text_Buffer text_buffer,int pos){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->line_start(pos);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_line_end)(fl_Text_Buffer text_buffer,int pos){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->line_end(pos);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_word_start)(fl_Text_Buffer text_buffer,int pos){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->word_start(pos);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_word_end)(fl_Text_Buffer text_buffer,int pos){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->word_end(pos);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_count_displayed_characters)(fl_Text_Buffer text_buffer,int lineStartPos,int targetPos){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->count_displayed_characters(lineStartPos,targetPos);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_skip_displayed_characters)(fl_Text_Buffer text_buffer,int lineStartPos,int nChars){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->skip_displayed_characters(lineStartPos,nChars);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_count_lines)(fl_Text_Buffer text_buffer,int startPos,int endPos){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->count_lines(startPos,endPos);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_skip_lines)(fl_Text_Buffer text_buffer,int startPos,int nLines){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->skip_lines(startPos,nLines);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_rewind_lines)(fl_Text_Buffer text_buffer,int startPos,int nLines){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->rewind_lines(startPos,nLines);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_findchar_forward)(fl_Text_Buffer text_buffer,int startPos,unsigned searchChar,int* foundPos){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->findchar_forward(startPos,searchChar,foundPos);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_findchar_backward)(fl_Text_Buffer text_buffer,int startPos,unsigned int searchChar,int* foundPos){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->findchar_backward(startPos,searchChar,foundPos);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_search_forward)(fl_Text_Buffer text_buffer,int startPos,const char* searchString,int* foundPos){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->search_forward(startPos,searchString,foundPos);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_search_forward_with_matchcase)(fl_Text_Buffer text_buffer,int startPos,const char* searchString,int* foundPos,int matchCase){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->search_forward(startPos,searchString,foundPos,matchCase);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_search_backward)(fl_Text_Buffer text_buffer,int startPos,const char* searchString,int* foundPos){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->search_backward(startPos,searchString,foundPos);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_search_backward_with_matchcase)(fl_Text_Buffer text_buffer,int startPos,const char* searchString,int* foundPos,int matchCase){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->search_backward(startPos,searchString,foundPos,matchCase);+  }+  FL_EXPORT_C(fl_Text_Selection,Fl_Text_Buffer_primary_selection)(fl_Text_Buffer text_buffer){+    return (fl_Text_Selection)(static_cast<Fl_Text_Buffer*>(text_buffer))->primary_selection();+  }+  FL_EXPORT_C(const fl_Text_Selection,Fl_Text_Buffer_secondary_selection)(fl_Text_Buffer text_buffer){+    return (fl_Text_Selection)(static_cast<Fl_Text_Buffer*>(text_buffer))->secondary_selection();+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_next_char_clipped)(fl_Text_Buffer text_buffer,int ix){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->next_char_clipped(ix);+  }+  FL_EXPORT_C(const fl_Text_Selection,Fl_Text_Buffer_highlight_selection)(fl_Text_Buffer text_buffer){+    return (fl_Text_Selection)(static_cast<Fl_Text_Buffer*>(text_buffer))->highlight_selection();+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_prev_char)(fl_Text_Buffer text_buffer,int ix){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->prev_char(ix);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_prev_char_clipped)(fl_Text_Buffer text_buffer,int ix){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->prev_char_clipped(ix);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_next_char)(fl_Text_Buffer text_buffer,int ix){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->next_char(ix);+  }+  FL_EXPORT_C(int,Fl_Text_Buffer_utf8_align)(fl_Text_Buffer text_buffer,int align){+    return (static_cast<Fl_Text_Buffer*>(text_buffer))->utf8_align(align);+  }+  FL_EXPORT_C(fl_Text_Buffer, Fl_Text_Buffer_New)(){+    Fl_Text_Buffer* b = new Fl_Text_Buffer();+    return (fl_Text_Buffer)b;+  }+  FL_EXPORT_C(fl_Text_Buffer, Fl_Text_Buffer_New_With_RequestedSize)(int requestedSize){+    Fl_Text_Buffer* b = new Fl_Text_Buffer(requestedSize);+    return (fl_Text_Buffer)b;+  }+  FL_EXPORT_C(fl_Text_Buffer, Fl_Text_Buffer_New_With_PreferredGapSize)(int preferredGapSize){+    Fl_Text_Buffer* b = new Fl_Text_Buffer(0,preferredGapSize);+    return (fl_Text_Buffer)b;+  }+  FL_EXPORT_C(fl_Text_Buffer, Fl_Text_Buffer_New_With_RequestedSize_PreferredGapSize)(int requestedSize, int preferredGapSize){+    Fl_Text_Buffer* b = new Fl_Text_Buffer(requestedSize,preferredGapSize);+    return (fl_Text_Buffer)b;+  }+  FL_EXPORT_C(void, Fl_Text_Buffer_Destroy)(fl_Text_Buffer text_buffer){+    delete(static_cast<Fl_Text_Buffer*>(text_buffer));+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Text_BufferC.h view
@@ -0,0 +1,109 @@+#ifndef __FL_TEXT_BUFFER_C__+#define __FL_TEXT_BUFFER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Text_Buffer.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_Text_Buffer, Fl_Text_Buffer_New)();+  FL_EXPORT_C(fl_Text_Buffer, Fl_Text_Buffer_New_With_RequestedSize)(int requestedSize);+  FL_EXPORT_C(fl_Text_Buffer, Fl_Text_Buffer_New_With_PreferredGapSize)(int preferredGapSize);+  FL_EXPORT_C(fl_Text_Buffer, Fl_Text_Buffer_New_With_RequestedSize_PreferredGapSize)(int requestedSize, int preferredGapSize);+  FL_EXPORT_C(void, Fl_Text_Buffer_Destroy)(fl_Text_Buffer text_buffer);+#ifndef INTERNAL_LINKAGE+  typedef void (*Fl_Text_Modify_Cb)(int pos, int nInserted, int nDeleted,+                                  int nRestyled, const char* deletedText,+                                  void* cbArg);+  typedef void (*Fl_Text_Predelete_Cb)(int pos, int nDeleted, void* cbArg);+#endif+  FL_EXPORT_C(int, Fl_Text_Buffer_input_file_was_transcoded)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(const char*, Fl_Text_Buffer_file_encoding_warning_message)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_set_transcoding_warning_action)(fl_Text_Buffer text_buffer,fl_Text_Buffer_Callback cb);+  /* int input_file_was_transcoded; */+  /* const char* file_encoding_warning_message; */+  /* void (*transcoding_warning_action)(Fl_Text_Buffer*); */+  FL_EXPORT_C(int, Fl_Text_Buffer_length)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(char*, Fl_Text_Buffer_text)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_set_text)(fl_Text_Buffer text_buffer,const char* text);+  FL_EXPORT_C(char*, Fl_Text_Buffer_text_range)(fl_Text_Buffer text_buffer,int start, int end);+  FL_EXPORT_C(unsigned int, Fl_Text_Buffer_char_at)(fl_Text_Buffer text_buffer,int pos);+  FL_EXPORT_C(char, Fl_Text_Buffer_byte_at)(fl_Text_Buffer text_buffer,int pos);+  FL_EXPORT_C(char*, Fl_Text_Buffer_address)(fl_Text_Buffer text_buffer,int pos);+  FL_EXPORT_C(void, Fl_Text_Buffer_insert)(fl_Text_Buffer text_buffer,int pos, const char* text);+  FL_EXPORT_C(void, Fl_Text_Buffer_append)(fl_Text_Buffer text_buffer,const char* t);+  FL_EXPORT_C(void, Fl_Text_Buffer_remove)(fl_Text_Buffer text_buffer,int start, int end);+  FL_EXPORT_C(void, Fl_Text_Buffer_replace)(fl_Text_Buffer text_buffer,int start, int end, const char* text);+  FL_EXPORT_C(void, Fl_Text_Buffer_copy)(fl_Text_Buffer text_buffer,fl_Text_Buffer fromBuf, int fromStart, int fromEnd, int toPos);+  FL_EXPORT_C(int, Fl_Text_Buffer_undo)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(int, Fl_Text_Buffer_undo_with_cp)(fl_Text_Buffer text_buffer,int *cp);+  FL_EXPORT_C(void, Fl_Text_Buffer_canUndo)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_canUndo_with_flag)(fl_Text_Buffer text_buffer,char flag);+  FL_EXPORT_C(int, Fl_Text_Buffer_insertfile)(fl_Text_Buffer text_buffer,const char* file, int pos);+  FL_EXPORT_C(int, Fl_Text_Buffer_insertfile_with_buflen)(fl_Text_Buffer text_buffer,const char* file, int pos, int buflen);+  FL_EXPORT_C(int, Fl_Text_Buffer_appendfile)(fl_Text_Buffer text_buffer,const char* file);+  FL_EXPORT_C(int, Fl_Text_Buffer_appendfile_with_buflen)(fl_Text_Buffer text_buffer,const char* file, int buflen);+  FL_EXPORT_C(int, Fl_Text_Buffer_loadfile)(fl_Text_Buffer text_buffer,const char* file);+  FL_EXPORT_C(int, Fl_Text_Buffer_loadfile_with_buflen)(fl_Text_Buffer text_buffer,const char* file, int buflen);+  FL_EXPORT_C(int, Fl_Text_Buffer_outputfile)(fl_Text_Buffer text_buffer,const char* file, int start, int end);+  FL_EXPORT_C(int, Fl_Text_Buffer_outputfile_with_buflen)(fl_Text_Buffer text_buffer,const char* file, int start, int end, int buflen);+  FL_EXPORT_C(int, Fl_Text_Buffer_savefile)(fl_Text_Buffer text_buffer,const char* file);+  FL_EXPORT_C(int, Fl_Text_Buffer_savefile_with_buflen)(fl_Text_Buffer text_buffer,const char* file, int buflen);+  FL_EXPORT_C(int, Fl_Text_Buffer_tab_distance)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_set_tab_distance)(fl_Text_Buffer text_buffer,int tabDist);+  FL_EXPORT_C(void, Fl_Text_Buffer_select)(fl_Text_Buffer text_buffer,int start, int end);+  FL_EXPORT_C(int, Fl_Text_Buffer_selected)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_unselect)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(int, Fl_Text_Buffer_selection_position)(fl_Text_Buffer text_buffer,int* start, int* end);+  FL_EXPORT_C(char*, Fl_Text_Buffer_selection_text)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_remove_selection)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_replace_selection)(fl_Text_Buffer text_buffer,const char* text);+  FL_EXPORT_C(void, Fl_Text_Buffer_secondary_select)(fl_Text_Buffer text_buffer,int start, int end);+  FL_EXPORT_C(int, Fl_Text_Buffer_secondary_selected)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_set_secondary_unselect)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(int, Fl_Text_Buffer_secondary_selection_position)(fl_Text_Buffer text_buffer,int* start, int* end);+  FL_EXPORT_C(char*, Fl_Text_Buffer_secondary_selection_text)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_remove_secondary_selection)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_replace_secondary_selection)(fl_Text_Buffer text_buffer,const char* text);+  FL_EXPORT_C(void, Fl_Text_Buffer_set_highlight)(fl_Text_Buffer text_buffer,int start, int end);+  FL_EXPORT_C(int, Fl_Text_Buffer_highlight)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_unhighlight)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(int, Fl_Text_Buffer_highlight_position)(fl_Text_Buffer text_buffer,int* start, int* end);+  FL_EXPORT_C(char*, Fl_Text_Buffer_highlight_text)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_add_modify_callback)(fl_Text_Buffer text_buffer,Fl_Text_Modify_Cb bufModifiedCB, void* cbArg);+  FL_EXPORT_C(void, Fl_Text_Buffer_remove_modify_callback)(fl_Text_Buffer text_buffer,Fl_Text_Modify_Cb bufModifiedCB, void* cbArg);+  FL_EXPORT_C(void, Fl_Text_Buffer_call_modify_callbacks)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(void, Fl_Text_Buffer_add_predelete_callback)(fl_Text_Buffer text_buffer,Fl_Text_Predelete_Cb bufPredelCB, void* cbArg);+  FL_EXPORT_C(void, Fl_Text_Buffer_remove_predelete_callback)(fl_Text_Buffer text_buffer,Fl_Text_Predelete_Cb predelCB, void* cbArg);+  FL_EXPORT_C(void, Fl_Text_Buffer_call_predelete_callbacks)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(char*, Fl_Text_Buffer_line_text)(fl_Text_Buffer text_buffer,int pos);+  FL_EXPORT_C(int, Fl_Text_Buffer_line_start)(fl_Text_Buffer text_buffer,int pos);+  FL_EXPORT_C(int, Fl_Text_Buffer_line_end)(fl_Text_Buffer text_buffer,int pos);+  FL_EXPORT_C(int, Fl_Text_Buffer_word_start)(fl_Text_Buffer text_buffer,int pos);+  FL_EXPORT_C(int, Fl_Text_Buffer_word_end)(fl_Text_Buffer text_buffer,int pos);+  FL_EXPORT_C(int, Fl_Text_Buffer_count_displayed_characters)(fl_Text_Buffer text_buffer,int lineStartPos, int targetPos);+  FL_EXPORT_C(int, Fl_Text_Buffer_skip_displayed_characters)(fl_Text_Buffer text_buffer,int lineStartPos, int nChars);+  FL_EXPORT_C(int, Fl_Text_Buffer_count_lines)(fl_Text_Buffer text_buffer,int startPos, int endPos);+  FL_EXPORT_C(int, Fl_Text_Buffer_skip_lines)(fl_Text_Buffer text_buffer,int startPos, int nLines);+  FL_EXPORT_C(int, Fl_Text_Buffer_rewind_lines)(fl_Text_Buffer text_buffer,int startPos, int nLines);+  FL_EXPORT_C(int, Fl_Text_Buffer_findchar_forward)(fl_Text_Buffer text_buffer,int startPos, unsigned searchChar, int* foundPos);+  FL_EXPORT_C(int, Fl_Text_Buffer_findchar_backward)(fl_Text_Buffer text_buffer,int startPos, unsigned int searchChar, int* foundPos);+  FL_EXPORT_C(int, Fl_Text_Buffer_search_forward)(fl_Text_Buffer text_buffer,int startPos, const char* searchString, int* foundPos);+  FL_EXPORT_C(int, Fl_Text_Buffer_search_forward_with_matchcase)(fl_Text_Buffer text_buffer,int startPos, const char* searchString, int* foundPos, int matchCase );+  FL_EXPORT_C(int, Fl_Text_Buffer_search_backward)(fl_Text_Buffer text_buffer,int startPos, const char* searchString, int* foundPos);+  FL_EXPORT_C(int, Fl_Text_Buffer_search_backward_with_matchcase)(fl_Text_Buffer text_buffer,int startPos, const char* searchString, int* foundPos, int matchCase );+  FL_EXPORT_C(fl_Text_Selection, Fl_Text_Buffer_primary_selection)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(const fl_Text_Selection, Fl_Text_Buffer_secondary_selection)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(const fl_Text_Selection, Fl_Text_Buffer_highlight_selection)(fl_Text_Buffer text_buffer);+  FL_EXPORT_C(int, Fl_Text_Buffer_prev_char)(fl_Text_Buffer text_buffer,int ix);+  FL_EXPORT_C(int, Fl_Text_Buffer_prev_char_clipped)(fl_Text_Buffer text_buffer,int ix);+  FL_EXPORT_C(int, Fl_Text_Buffer_next_char)(fl_Text_Buffer text_buffer,int ix);+  FL_EXPORT_C(int, Fl_Text_Buffer_next_char_clipped)(fl_Text_Buffer text_buffer,int ix);+  FL_EXPORT_C(int, Fl_Text_Buffer_utf8_align)(fl_Text_Buffer text_buffer,int align);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_TEXT_BUFFER_C__*/
+ c-src/Fl_Text_DisplayC.cpp view
@@ -0,0 +1,543 @@+#include "Fl_Text_DisplayC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Text_Display_handle)(fl_Text_Display self, int event){+    return (static_cast<Fl_Text_Display*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Text_Display_parent)(fl_Text_Display text_display){+    return (fl_Group) (static_cast<Fl_Text_Display*>(text_display))->parent();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_parent)(fl_Text_Display text_display,fl_Text_Display grp){+    (static_cast<Fl_Text_Display*>(text_display))->parent((static_cast<Fl_Text_Display*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Text_Display_type)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->type();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_type)(fl_Text_Display text_display,uchar t){+    (static_cast<Fl_Text_Display*>(text_display))->type(t);+  }++  FL_EXPORT_C(int,Fl_Text_Display_x)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->x();+  }+  FL_EXPORT_C(int,Fl_Text_Display_y)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->y();+  }+  FL_EXPORT_C(int,Fl_Text_Display_w)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->w();+  }+  FL_EXPORT_C(int,Fl_Text_Display_h)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->h();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_align)(fl_Text_Display text_display, Fl_Align alignment){+    (static_cast<Fl_Text_Display*>(text_display))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Text_Display_align)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Text_Display_box)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->box();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_box)(fl_Text_Display text_display,Fl_Boxtype new_box){+    (static_cast<Fl_Text_Display*>(text_display))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Text_Display_color)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->color();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_color)(fl_Text_Display text_display,Fl_Color bg){+    (static_cast<Fl_Text_Display*>(text_display))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_color_with_bg_sel)(fl_Text_Display text_display,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Text_Display*>(text_display))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Text_Display_selection_color)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_selection_color)(fl_Text_Display text_display,Fl_Color a){+    (static_cast<Fl_Text_Display*>(text_display))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Text_Display_label)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->label();+  }+  FL_EXPORT_C(void,Fl_Text_Display_copy_label)(fl_Text_Display text_display,const char* new_label){+    (static_cast<Fl_Text_Display*>(text_display))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_label)(fl_Text_Display text_display,const char* text){+    (static_cast<Fl_Text_Display*>(text_display))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Text_Display_labeltype)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_labeltype)(fl_Text_Display text_display,Fl_Labeltype a){+    (static_cast<Fl_Text_Display*>(text_display))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_labelcolor)(fl_Text_Display text_display,Fl_Color c){+    (static_cast<Fl_Text_Display*>(text_display))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Text_Display_labelcolor)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Text_Display_labelfont)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_labelfont)(fl_Text_Display text_display,Fl_Font c){+    (static_cast<Fl_Text_Display*>(text_display))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Text_Display_labelsize)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_labelsize)(fl_Text_Display text_display,Fl_Fontsize pix){+    (static_cast<Fl_Text_Display*>(text_display))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Text_Display_image)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->image();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_image)(fl_Text_Display text_display,fl_Image pix){+    (static_cast<Fl_Text_Display*>(text_display))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Text_Display_deimage)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->deimage();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_deimage)(fl_Text_Display text_display,fl_Image pix){+    (static_cast<Fl_Text_Display*>(text_display))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Text_Display_tooltip)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Text_Display_copy_tooltip)(fl_Text_Display text_display,const char* text){+    (static_cast<Fl_Text_Display*>(text_display))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_tooltip)(fl_Text_Display text_display,const char* text){+    (static_cast<Fl_Text_Display*>(text_display))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_callback_with_user_data)(fl_Text_Display text_display,fl_Callback* cb,void* p){+    Fl_Text_Display* castedWindow = (static_cast<Fl_Text_Display*>(text_display));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_callback)(fl_Text_Display text_display,fl_Callback* cb){+    Fl_Text_Display* castedWindow = (static_cast<Fl_Text_Display*>(text_display));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Text_Display_user_data)(fl_Text_Display text_display){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Text_Display*>(text_display))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Text_Display*>(text_display))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_user_data)(fl_Text_Display text_display,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Text_Display*>(text_display))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Text_Display*>(text_display))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Text_Display*>(text_display))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Text_Display_argument)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->argument();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_argument)(fl_Text_Display text_display,long v){+    (static_cast<Fl_Text_Display*>(text_display))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Text_Display_when)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->when();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_when)(fl_Text_Display text_display,uchar i){+    (static_cast<Fl_Text_Display*>(text_display))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Text_Display_visible)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->visible();+  }+  FL_EXPORT_C(int,Fl_Text_Display_visible_r)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_visible)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->visible();+  }+  FL_EXPORT_C(void,Fl_Text_Display_clear_visible)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Text_Display_active)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->active();+  }+  FL_EXPORT_C(int,Fl_Text_Display_active_r)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->active_r();+  }+  FL_EXPORT_C(void,Fl_Text_Display_activate)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->activate();+  }+  FL_EXPORT_C(void,Fl_Text_Display_deactivate)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Text_Display_output)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->output();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_output)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->output();+  }+  FL_EXPORT_C(void,Fl_Text_Display_clear_output)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Text_Display_takesevents)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_changed)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->changed();+  }+  FL_EXPORT_C(void,Fl_Text_Display_clear_changed)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Text_Display_take_focus)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_visible_focus)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Text_Display_clear_visible_focus)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Text_Display_modify_visible_focus)(fl_Text_Display text_display,int v){+    (static_cast<Fl_Text_Display*>(text_display))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Text_Display_visible_focus)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Text_Display_do_callback)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Text_Display_do_callback_with_widget_and_user_data)(fl_Text_Display text_display,fl_Widget w,long arg){+    (static_cast<Fl_Text_Display*>(text_display))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Text_Display_do_callback_with_widget_and_default_user_data)(fl_Text_Display text_display,fl_Widget w){+    (static_cast<Fl_Text_Display*>(text_display))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Text_Display_contains)(fl_Text_Display text_display,fl_Widget w){+    return (static_cast<Fl_Text_Display*>(text_display))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Text_Display_inside)(fl_Text_Display text_display,fl_Widget w){+    return (static_cast<Fl_Text_Display*>(text_display))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Text_Display_redraw)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->redraw();+  }+  FL_EXPORT_C(void,Fl_Text_Display_redraw_label)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Text_Display_damage)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->damage();+  }+  FL_EXPORT_C(void,Fl_Text_Display_clear_damage_with_bitmask)(fl_Text_Display text_display,uchar c){+    (static_cast<Fl_Text_Display*>(text_display))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Text_Display_clear_damage)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Text_Display_damage_with_text)(fl_Text_Display text_display,uchar c){+    (static_cast<Fl_Text_Display*>(text_display))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Text_Display_damage_inside_widget)(fl_Text_Display text_display,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Text_Display*>(text_display))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Text_Display_draw_label_with_xywh_alignment)(fl_Text_Display text_display,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Text_Display*>(text_display))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Text_Display_measure_label)(fl_Text_Display text_display,int* ww,int* hh){+    (static_cast<Fl_Text_Display*>(text_display))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Text_Display_window)(fl_Text_Display text_display){+    return (fl_Window) (static_cast<Fl_Text_Display*>(text_display))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Text_Display_top_window)(fl_Text_Display text_display){+    return (fl_Window) (static_cast<Fl_Text_Display*>(text_display))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Text_Display_top_window_offset)(fl_Text_Display text_display, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Text_Display*>(text_display))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Text_Display_as_group)(fl_Text_Display text_display){+    return (fl_Text_Display) (static_cast<Fl_Text_Display*>(text_display))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Text_Display_as_gl_window)(fl_Text_Display text_display){+    return (fl_Gl_Window) (static_cast<Fl_Text_Display*>(text_display))->as_gl_window();+  }++  FL_EXPORT_C(void,Fl_Text_Display_begin)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->begin();+  }+  FL_EXPORT_C(void,Fl_Text_Display_end)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->end();+  }+  FL_EXPORT_C(int,Fl_Text_Display_find)(fl_Text_Display text_display,fl_Widget w){+    return (static_cast<Fl_Text_Display*>(text_display))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Text_Display_add)(fl_Text_Display text_display,fl_Widget w){+    (static_cast<Fl_Text_Display*>(text_display))->add((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Text_Display_remove_index)(fl_Text_Display text_display,int index){+    (static_cast<Fl_Text_Display*>(text_display))->remove(index);+  }+  FL_EXPORT_C(void,Fl_Text_Display_remove_widget)(fl_Text_Display text_display,fl_Widget w){+    (static_cast<Fl_Text_Display*>(text_display))->remove((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Text_Display_clear)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->clear();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_resizable_by_reference)(fl_Text_Display text_display,fl_Widget o){+    (static_cast<Fl_Text_Display*>(text_display))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_resizable)(fl_Text_Display text_display,fl_Widget o){+    (static_cast<Fl_Text_Display*>(text_display))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Text_Display_resizable)(fl_Text_Display text_display){+    return (fl_Widget)(static_cast<Fl_Text_Display*>(text_display))->resizable();+  }+  FL_EXPORT_C(void,Fl_Text_Display_add_resizable)(fl_Text_Display text_display,fl_Widget o){+    return (static_cast<Fl_Text_Display*>(text_display))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Text_Display_init_sizes)(fl_Text_Display text_display){+    (static_cast<Fl_Text_Display*>(text_display))->init_sizes();+  }+  FL_EXPORT_C(void,Fl_Text_Display_resize)(fl_Text_Display text_display, int X, int Y, int W, int H){+    (static_cast<Fl_Text_Display*>(text_display))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(int,Fl_Text_Display_children)(fl_Text_Display self){+    return (static_cast<Fl_Text_Display*>(self))->children();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_clip_children)(fl_Text_Display text_display,int c){+    return (static_cast<Fl_Text_Display*>(text_display))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Text_Display_clip_children)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Text_Display_focus)(fl_Text_Display text_display, fl_Widget W){+    return (static_cast<Fl_Text_Display*>(text_display))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Text_Display__ddfdesign_kludge)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(fl_Widget*, Fl_Text_Display_array)(fl_Text_Display self){+    return (fl_Widget*)(static_cast<Fl_Text_Display*>(self))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Text_Display_child)(fl_Text_Display self, int n){+    return (fl_Widget)(static_cast<Fl_Text_Display*>(self))->child(n);+  }+  FL_EXPORT_C(fl_Text_Display,     Fl_Text_Display_New)(int x, int y, int w, int h){+    Fl_Text_Display* g = new Fl_Text_Display(x,y,w,h);+    return (fl_Text_Display)g;+  }+  FL_EXPORT_C(fl_Text_Display,     Fl_Text_Display_New_WithLabel)(int x, int y, int w, int h, const char* t){+    Fl_Text_Display* g = new Fl_Text_Display(x,y,w,h,t);+    return (fl_Text_Display)g;+  }+  FL_EXPORT_C(void, Fl_Text_Display_Destroy)(fl_Text_Display text_display){+    delete (static_cast<Fl_Text_Display*>(text_display));+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_buffer)(fl_Text_Display text_display,fl_Text_Buffer buf){+    return (static_cast<Fl_Text_Display*>(text_display))->buffer((static_cast<Fl_Text_Buffer*>(buf)));+  }+  FL_EXPORT_C(fl_Text_Buffer,Fl_Text_Display_buffer)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->buffer();+  }+  FL_EXPORT_C(void,Fl_Text_Display_redisplay_range)(fl_Text_Display text_display,int start,int end){+    return (static_cast<Fl_Text_Display*>(text_display))->redisplay_range(start,end);+  }+  FL_EXPORT_C(void,Fl_Text_Display_scroll)(fl_Text_Display text_display,int topLineNum,int horizOffset){+    return (static_cast<Fl_Text_Display*>(text_display))->scroll(topLineNum,horizOffset);+  }+  FL_EXPORT_C(void,Fl_Text_Display_insert)(fl_Text_Display text_display,const char* text){+    return (static_cast<Fl_Text_Display*>(text_display))->insert(text);+  }+  FL_EXPORT_C(void,Fl_Text_Display_overstrike)(fl_Text_Display text_display,const char* text){+    return (static_cast<Fl_Text_Display*>(text_display))->overstrike(text);+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_insert_position)(fl_Text_Display text_display,int newPos){+    return (static_cast<Fl_Text_Display*>(text_display))->insert_position(newPos);+  }+  FL_EXPORT_C(int,Fl_Text_Display_insert_position)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->insert_position();+  }+  FL_EXPORT_C(int,Fl_Text_Display_position_to_xy)(fl_Text_Display text_display,int pos,int* x,int* y){+    return (static_cast<Fl_Text_Display*>(text_display))->position_to_xy(pos,x,y);+  }+  FL_EXPORT_C(int,Fl_Text_Display_in_selection)(fl_Text_Display text_display,int x,int y){+    return (static_cast<Fl_Text_Display*>(text_display))->in_selection(x,y);+  }+  FL_EXPORT_C(void,Fl_Text_Display_show_insert_position)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->show_insert_position();+  }+  FL_EXPORT_C(int,Fl_Text_Display_move_right)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->move_right();+  }+  FL_EXPORT_C(int,Fl_Text_Display_move_left)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->move_left();+  }+  FL_EXPORT_C(int,Fl_Text_Display_move_up)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->move_up();+  }+  FL_EXPORT_C(int,Fl_Text_Display_move_down)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->move_down();+  }+  FL_EXPORT_C(int,Fl_Text_Display_count_lines)(fl_Text_Display text_display,int start,int end,int start_pos_is_line_start){+    return (static_cast<Fl_Text_Display*>(text_display))->count_lines(start,end,start_pos_is_line_start >= 1 ? true : false);+  }+  FL_EXPORT_C(int,Fl_Text_Display_line_start)(fl_Text_Display text_display,int pos){+    return (static_cast<Fl_Text_Display*>(text_display))->line_start(pos);+  }+  FL_EXPORT_C(int,Fl_Text_Display_line_end)(fl_Text_Display text_display,int startPos,int startPosIsLineStart){+    return (static_cast<Fl_Text_Display*>(text_display))->line_end(startPos,startPosIsLineStart >= 1 ? true : false);+  }+  FL_EXPORT_C(int,Fl_Text_Display_skip_lines)(fl_Text_Display text_display,int startPos,int nLines,int startPosIsLineStart){+    return (static_cast<Fl_Text_Display*>(text_display))->skip_lines(startPos,nLines,startPosIsLineStart>= 1 ? true : false);+  }+  FL_EXPORT_C(int,Fl_Text_Display_rewind_lines)(fl_Text_Display text_display,int startPos,int nLines){+    return (static_cast<Fl_Text_Display*>(text_display))->rewind_lines(startPos,nLines);+  }+  FL_EXPORT_C(void,Fl_Text_Display_next_word)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->next_word();+  }+  FL_EXPORT_C(void,Fl_Text_Display_previous_word)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->previous_word();+  }+  FL_EXPORT_C(void,Fl_Text_Display_show_cursor)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->show_cursor();+  }+  FL_EXPORT_C(void,Fl_Text_Display_show_cursor_with_b)(fl_Text_Display text_display,int b){+    return (static_cast<Fl_Text_Display*>(text_display))->show_cursor(b);+  }+  FL_EXPORT_C(void,Fl_Text_Display_hide_cursor)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->hide_cursor();+  }+  // FL_EXPORT_C(int ,Fl_Text_Display_cursor_style)(fl_Text_Display text_display){+  //  return (static_cast<Fl_Text_Display*>(text_display))->cursor_style();+  // }+  FL_EXPORT_C(void,Fl_Text_Display_set_cursor_style)(fl_Text_Display text_display,int style){+    (static_cast<Fl_Text_Display*>(text_display))->cursor_style(style);+  }+  FL_EXPORT_C(Fl_Color,Fl_Text_Display_cursor_color)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->cursor_color();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_cursor_color)(fl_Text_Display text_display,Fl_Color n){+    return (static_cast<Fl_Text_Display*>(text_display))->cursor_color(n);+  }+  FL_EXPORT_C(int,Fl_Text_Display_scrollbar_width)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->scrollbar_width();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_scrollbar_width)(fl_Text_Display text_display,int W){+    return (static_cast<Fl_Text_Display*>(text_display))->scrollbar_width(W);+  }+  FL_EXPORT_C(Fl_Align,Fl_Text_Display_scrollbar_align)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->scrollbar_align();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_scrollbar_align)(fl_Text_Display text_display,Fl_Align a){+    return (static_cast<Fl_Text_Display*>(text_display))->scrollbar_align(a);+  }+  FL_EXPORT_C(int,Fl_Text_Display_word_start)(fl_Text_Display text_display,int pos){+    return (static_cast<Fl_Text_Display*>(text_display))->word_start(pos);+  }+  FL_EXPORT_C(int,Fl_Text_Display_word_end)(fl_Text_Display text_display,int pos){+    return (static_cast<Fl_Text_Display*>(text_display))->word_end(pos);+  }+  FL_EXPORT_C(void,Fl_Text_Display_highlight_data)(fl_Text_Display text_display,fl_Text_Buffer styleBuffer,Style_Table_Entry *styleTable,int nStyles,char unfinishedStyle,Unfinished_Style_Cb unfinishedHighlightCB,void *cbArg){+    Fl_Text_Display::Style_Table_Entry* s = new Fl_Text_Display::Style_Table_Entry[nStyles]();+    int i = 0;+    for (;i<nStyles;i++){+      Fl_Text_Display::Style_Table_Entry x =  Fl_Text_Display::Style_Table_Entry();+      x.color = styleTable[i].color;+      x.font = styleTable[i].font;+      x.size = styleTable[i].size;+      x.attr = styleTable[i].attr;+      s[i] = x;+    }+    (static_cast<Fl_Text_Display*>(text_display))->highlight_data((static_cast<Fl_Text_Buffer*>(styleBuffer)),s,nStyles,unfinishedStyle,unfinishedHighlightCB,cbArg);+  }+  FL_EXPORT_C(int,Fl_Text_Display_position_style)(fl_Text_Display text_display,int lineStartPos,int lineLen,int lineIndex){+    return (static_cast<Fl_Text_Display*>(text_display))->position_style(lineStartPos,lineLen,lineIndex);+  }+  FL_EXPORT_C(int,Fl_Text_Display_shortcut)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_shortcut)(fl_Text_Display text_display,int s){+    return (static_cast<Fl_Text_Display*>(text_display))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Font,Fl_Text_Display_textfont)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->textfont();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_textfont)(fl_Text_Display text_display,Fl_Font s){+    return (static_cast<Fl_Text_Display*>(text_display))->textfont(s);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Text_Display_textsize)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->textsize();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_textsize)(fl_Text_Display text_display,Fl_Fontsize s){+    return (static_cast<Fl_Text_Display*>(text_display))->textsize(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_Text_Display_textcolor)(fl_Text_Display text_display){+    return (static_cast<Fl_Text_Display*>(text_display))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Text_Display_set_textcolor)(fl_Text_Display text_display,Fl_Color n){+    return (static_cast<Fl_Text_Display*>(text_display))->textcolor(n);+  }+  FL_EXPORT_C(int,Fl_Text_Display_wrapped_column)(fl_Text_Display text_display,int row,int column){+    return (static_cast<Fl_Text_Display*>(text_display))->wrapped_column(row,column);+  }+  FL_EXPORT_C(int,Fl_Text_Display_wrapped_row)(fl_Text_Display text_display,int row){+    return (static_cast<Fl_Text_Display*>(text_display))->wrapped_row(row);+  }+  FL_EXPORT_C(void,Fl_Text_Display_wrap_mode)(fl_Text_Display text_display,int wrap,int wrap_margin){+    return (static_cast<Fl_Text_Display*>(text_display))->wrap_mode(wrap,wrap_margin);+  }+  FL_EXPORT_C(double,Fl_Text_Display_x_to_col)(fl_Text_Display text_display,double x){+    return (static_cast<Fl_Text_Display*>(text_display))->x_to_col(x);+  }+  FL_EXPORT_C(double,Fl_Text_Display_col_to_x)(fl_Text_Display text_display,double col){+    return (static_cast<Fl_Text_Display*>(text_display))->col_to_x(col);+  }+ FL_EXPORT_C(void,set_linenumber_width)(fl_Text_Display text_display,int width){+   (static_cast<Fl_Text_Display*>(text_display))->linenumber_width(width);+ }+ FL_EXPORT_C(int         ,linenumber_width)(fl_Text_Display text_display){+   return (static_cast<Fl_Text_Display*>(text_display))->linenumber_width();+ }+ FL_EXPORT_C(void        ,set_linenumber_font)(fl_Text_Display text_display,Fl_Font val){+   (static_cast<Fl_Text_Display*>(text_display))->linenumber_font(val);+ }+ FL_EXPORT_C(Fl_Font     ,linenumber_font)(fl_Text_Display text_display){+   return (static_cast<Fl_Text_Display*>(text_display))->linenumber_font();+ }+ FL_EXPORT_C(void        ,set_linenumber_size)(fl_Text_Display text_display,Fl_Fontsize val){+   (static_cast<Fl_Text_Display*>(text_display))->linenumber_size(val);+ }+ FL_EXPORT_C(Fl_Fontsize ,linenumber_size)(fl_Text_Display text_display){+   return (static_cast<Fl_Text_Display*>(text_display))->linenumber_size();+ }+ FL_EXPORT_C(void        ,set_linenumber_fgcolor)(fl_Text_Display text_display,Fl_Color val){+   (static_cast<Fl_Text_Display*>(text_display))->linenumber_fgcolor(val);+ }+ FL_EXPORT_C(Fl_Color    ,linenumber_fgcolor)(fl_Text_Display text_display){+   return (static_cast<Fl_Text_Display*>(text_display))->linenumber_fgcolor();+ }+ FL_EXPORT_C(void        ,set_linenumber_bgcolor)(fl_Text_Display text_display,Fl_Color val){+   (static_cast<Fl_Text_Display*>(text_display))->linenumber_bgcolor(val);+ }+ FL_EXPORT_C(Fl_Color    ,linenumber_bgcolor)(fl_Text_Display text_display){+   return (static_cast<Fl_Text_Display*>(text_display))->linenumber_bgcolor();+ }+ FL_EXPORT_C(void        ,set_linenumber_align)(fl_Text_Display text_display,Fl_Align val){+   (static_cast<Fl_Text_Display*>(text_display))->linenumber_align(val);+ }+ FL_EXPORT_C(Fl_Align    ,linenumber_align)(fl_Text_Display text_display){+   return (static_cast<Fl_Text_Display*>(text_display))->linenumber_align();+ }+ FL_EXPORT_C(void        ,set_linenumber_format)(fl_Text_Display text_display,const char* val){+   (static_cast<Fl_Text_Display*>(text_display))->linenumber_format(val);+ }+ FL_EXPORT_C(const char* ,linenumber_format)(fl_Text_Display text_display){+   return (static_cast<Fl_Text_Display*>(text_display))->linenumber_format();+ }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Text_DisplayC.h view
@@ -0,0 +1,199 @@+#ifndef __FL_TEXT_DISPLAY_C__+#define __FL_TEXT_DISPLAY_C__+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#ifdef __cplusplus+#include "FL/Fl.H"+#include "FL/Fl_Text_Display.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,          Fl_Text_Display_handle)(fl_Text_Display self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Text_Display_parent)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_parent)(fl_Text_Display text_display, fl_Text_Display grp);+  FL_EXPORT_C(uchar,        Fl_Text_Display_type)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_type)(fl_Text_Display text_display, uchar t);++  FL_EXPORT_C(int,          Fl_Text_Display_x)(fl_Text_Display text_display);+  FL_EXPORT_C(int,          Fl_Text_Display_y)(fl_Text_Display text_display);+  FL_EXPORT_C(int,          Fl_Text_Display_w)(fl_Text_Display text_display);+  FL_EXPORT_C(int,          Fl_Text_Display_h)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_align)(fl_Text_Display text_display, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Text_Display_align)(fl_Text_Display text_display);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Text_Display_box)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_box)(fl_Text_Display text_display, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Text_Display_color)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_color)(fl_Text_Display text_display, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Text_Display_set_color_with_bg_sel)(fl_Text_Display text_display,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Text_Display_selection_color)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_selection_color)(fl_Text_Display text_display, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Text_Display_label)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_copy_label)(fl_Text_Display text_display, const char* new_label);+  FL_EXPORT_C(void,         Fl_Text_Display_set_label)(fl_Text_Display text_display, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Text_Display_labeltype)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_labeltype)(fl_Text_Display text_display, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Text_Display_labelcolor)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_labelcolor)(fl_Text_Display text_display, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Text_Display_item_labelfont)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_item_labelfont)(fl_Text_Display text_display, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Text_Display_item_labelsize)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_item_labelsize)(fl_Text_Display text_display, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Text_Display_image)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_image)(fl_Text_Display text_display, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Text_Display_deimage)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_deimage)(fl_Text_Display text_display, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Text_Display_tooltip)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_copy_tooltip)(fl_Text_Display text_display, const char* text);+  FL_EXPORT_C(void,         Fl_Text_Display_set_tooltip)(fl_Text_Display text_display, const char* text);+  FL_EXPORT_C(void,         Fl_Text_Display_set_callback_with_user_data)(fl_Text_Display text_display, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Text_Display_set_callback)(fl_Text_Display text_display, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Text_Display_other_data)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_other_data)(fl_Text_Display text_display, void* v);+  FL_EXPORT_C(void*,        Fl_Text_Display_user_data)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_user_data)(fl_Text_Display text_display, void* v);+  FL_EXPORT_C(long,         Fl_Text_Display_argument)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_argument)(fl_Text_Display text_display, long v);+  FL_EXPORT_C(Fl_When,      Fl_Text_Display_when)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_when)(fl_Text_Display text_display, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Text_Display_visible)(fl_Text_Display text_display);+  FL_EXPORT_C(int,          Fl_Text_Display_visible_r)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_show_super)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_show)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_hide_super)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_hide)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_visible)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_clear_visible)(fl_Text_Display text_display);+  FL_EXPORT_C(unsigned int, Fl_Text_Display_active)(fl_Text_Display text_display);+  FL_EXPORT_C(int,          Fl_Text_Display_active_r)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_activate)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_deactivate)(fl_Text_Display text_display);+  FL_EXPORT_C(unsigned int, Fl_Text_Display_output)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_output)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_clear_output)(fl_Text_Display text_display);+  FL_EXPORT_C(unsigned int, Fl_Text_Display_takesevents)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_changed)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_clear_changed)(fl_Text_Display text_display);+  FL_EXPORT_C(int,          Fl_Text_Display_take_focus)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_visible_focus)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_clear_visible_focus)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_modify_visible_focus)(fl_Text_Display text_display, int v);+  FL_EXPORT_C(unsigned int, Fl_Text_Display_visible_focus)(fl_Text_Display text_display);+  FL_EXPORT_C(int,          Fl_Text_Display_contains)(fl_Text_Display text_display, fl_Text_Display w);+  FL_EXPORT_C(int,          Fl_Text_Display_inside)(fl_Text_Display text_display, fl_Text_Display w);+  FL_EXPORT_C(void,         Fl_Text_Display_redraw)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_redraw_label)(fl_Text_Display text_display);+  FL_EXPORT_C(uchar,        Fl_Text_Display_damage)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_clear_damage_with_bitmask)(fl_Text_Display text_display, uchar c);+  FL_EXPORT_C(void,         Fl_Text_Display_clear_damage)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_damage_with_text)(fl_Text_Display text_display, uchar c);+  FL_EXPORT_C(void,         Fl_Text_Display_damage_inside_text_display)(fl_Text_Display text_display, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Text_Display_draw_label_with_xywh_alignment)(fl_Text_Display text_display, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Text_Display_measure_label)(fl_Text_Display text_display, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Text_Display_window)(fl_Text_Display text_display);+  FL_EXPORT_C(fl_Window,    Fl_Text_Display_top_window)(fl_Text_Display text_display);+  FL_EXPORT_C(fl_Window ,   Fl_Text_Display_top_window_offset)(fl_Text_Display text_display, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Text_Display,     Fl_Text_Display_as_text_display_super)(fl_Text_Display text_display);+  FL_EXPORT_C(fl_Text_Display,     Fl_Text_Display_as_text_display)(fl_Text_Display text_display);+  FL_EXPORT_C(fl_Gl_Window, Fl_Text_Display_as_gl_window_super)(fl_Text_Display text_display);+  FL_EXPORT_C(fl_Gl_Window, Fl_Text_Display_as_gl_window)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_resize)(fl_Text_Display text_display,int X, int Y, int W, int H);++  /* Fl_Group specific */+  FL_EXPORT_C(void,         Fl_Text_Display_begin)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_end)(fl_Text_Display text_display);+  FL_EXPORT_C(int,          Fl_Text_Display_find)(fl_Text_Display text_display, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Text_Display_add)(fl_Text_Display text_display, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Text_Display_insert)(fl_Text_Display text_display, const char* text);+  FL_EXPORT_C(void,         Fl_Text_Display_remove_index)(fl_Text_Display text_display, int index);+  FL_EXPORT_C(void,         Fl_Text_Display_remove_widget)(fl_Text_Display text_display, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Text_Display_clear)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_resizable_by_reference)(fl_Text_Display text_display,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Text_Display_set_resizable)(fl_Text_Display text_display,fl_Widget o);+  FL_EXPORT_C(fl_Widget,         Fl_Text_Display_resizable)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_add_resizable)(fl_Text_Display text_display,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Text_Display_init_sizes)(fl_Text_Display text_display);+  FL_EXPORT_C(int,          Fl_Text_Display_children)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_set_clip_children)(fl_Text_Display text_display,int c);+  FL_EXPORT_C(unsigned int, Fl_Text_Display_clip_children)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_focus)(fl_Text_Display text_display,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Text_Display__ddfdesign_kludge)(fl_Text_Display text_display);+  FL_EXPORT_C(void,         Fl_Text_Display_insert_with_before)(fl_Text_Display self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Text_Display_array)(fl_Text_Display self);+  FL_EXPORT_C(fl_Widget,    Fl_Text_Display_child)(fl_Text_Display self, int n);+  FL_EXPORT_C(fl_Group,     Fl_Text_Display_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Group,     Fl_Text_Display_New_WithLabel)(int x, int y, int w, int h, const char* t);++  /* Fl_Text_Display specific */+  FL_EXPORT_C(fl_Text_Display, Fl_Text_Display_New)(int X, int Y, int W, int H);+  FL_EXPORT_C(fl_Text_Display, Fl_Text_Display_New_WithLabel)(int X, int Y, int W, int H, const char* l);+  FL_EXPORT_C(void, Fl_Text_Display_Destroy)(fl_Text_Display text_display);+  FL_EXPORT_C(int, Fl_Text_Display_handle)(fl_Text_Display text_display, int e);+  FL_EXPORT_C(void, Fl_Text_Display_set_buffer)(fl_Text_Display text_display, fl_Text_Buffer buf);+  FL_EXPORT_C(fl_Text_Buffer, Fl_Text_Display_buffer)(fl_Text_Display text_display);+  FL_EXPORT_C(void, Fl_Text_Display_redisplay_range)(fl_Text_Display text_display, int start, int end);+  FL_EXPORT_C(void, Fl_Text_Display_scroll)(fl_Text_Display text_display, int topLineNum, int horizOffset);+  FL_EXPORT_C(void, Fl_Text_Display_overstrike)(fl_Text_Display text_display, const char* text);+  FL_EXPORT_C(void, Fl_Text_Display_set_insert_position)(fl_Text_Display text_display, int newPos);+  FL_EXPORT_C(int, Fl_Text_Display_insert_position)(fl_Text_Display text_display);+  FL_EXPORT_C(int, Fl_Text_Display_position_to_xy)(fl_Text_Display text_display, int pos, int* x, int* y);+  FL_EXPORT_C(int, Fl_Text_Display_in_selection)(fl_Text_Display text_display, int x, int y);+  FL_EXPORT_C(void, Fl_Text_Display_show_insert_position)(fl_Text_Display text_display);+  FL_EXPORT_C(int, Fl_Text_Display_move_right)(fl_Text_Display text_display);+  FL_EXPORT_C(int, Fl_Text_Display_move_left)(fl_Text_Display text_display);+  FL_EXPORT_C(int, Fl_Text_Display_move_up)(fl_Text_Display text_display);+  FL_EXPORT_C(int, Fl_Text_Display_move_down)(fl_Text_Display text_display);+  FL_EXPORT_C(int, Fl_Text_Display_count_lines)(fl_Text_Display text_display, int start, int end, int start_pos_is_line_start);+  FL_EXPORT_C(int, Fl_Text_Display_line_start)(fl_Text_Display text_display, int pos);+  FL_EXPORT_C(int, Fl_Text_Display_line_end)(fl_Text_Display text_display, int startPos, int startPosIsLineStart);+  FL_EXPORT_C(int, Fl_Text_Display_skip_lines)(fl_Text_Display text_display, int startPos, int nLines, int startPosIsLineStart);+  FL_EXPORT_C(int, Fl_Text_Display_rewind_lines)(fl_Text_Display text_display, int startPos, int nLines);+  FL_EXPORT_C(void, Fl_Text_Display_next_word)(fl_Text_Display text_display);+  FL_EXPORT_C(void, Fl_Text_Display_previous_word)(fl_Text_Display text_display);+  FL_EXPORT_C(void, Fl_Text_Display_show_cursor)(fl_Text_Display text_display);+  FL_EXPORT_C(void, Fl_Text_Display_show_cursor_with_b)(fl_Text_Display text_display, int b);+  FL_EXPORT_C(void, Fl_Text_Display_hide_cursor)(fl_Text_Display text_display);+  FL_EXPORT_C(void, Fl_Text_Display_set_cursor_style)(fl_Text_Display text_display, int style);+  // FL_EXPORT_C(int, Fl_Text_Display_cursor_style)(fl_Text_Display text_display);+  FL_EXPORT_C(Fl_Color, Fl_Text_Display_cursor_color)(fl_Text_Display text_display);+  FL_EXPORT_C(void, Fl_Text_Display_set_cursor_color)(fl_Text_Display text_display, Fl_Color n);+  FL_EXPORT_C(int, Fl_Text_Display_scrollbar_width)(fl_Text_Display text_display);+  FL_EXPORT_C(void, Fl_Text_Display_set_scrollbar_width)(fl_Text_Display text_display, int W);+  FL_EXPORT_C(Fl_Align, Fl_Text_Display_scrollbar_align)(fl_Text_Display text_display);+  FL_EXPORT_C(void, Fl_Text_Display_set_scrollbar_align)(fl_Text_Display text_display, Fl_Align a);+  FL_EXPORT_C(int, Fl_Text_Display_word_start)(fl_Text_Display text_display, int pos);+  FL_EXPORT_C(int, Fl_Text_Display_word_end)(fl_Text_Display text_display, int pos);+  FL_EXPORT_C(void, Fl_Text_Display_highlight_data)(fl_Text_Display text_display, fl_Text_Buffer styleBuffer, Style_Table_Entry *styleTable, int nStyles, char unfinishedStyle, Unfinished_Style_Cb unfinishedHighlightCB, void *cbArg);+  FL_EXPORT_C(int, Fl_Text_Display_position_style)(fl_Text_Display text_display, int lineStartPos, int lineLen, int lineIndex);+  FL_EXPORT_C(int, Fl_Text_Display_shortcut)(fl_Text_Display text_display);+  FL_EXPORT_C(void, Fl_Text_Display_set_shortcut)(fl_Text_Display text_display, int s);+  FL_EXPORT_C(Fl_Font, Fl_Text_Display_textfont)(fl_Text_Display text_display);+  FL_EXPORT_C(void, Fl_Text_Display_set_textfont)(fl_Text_Display text_display, Fl_Font s);+  FL_EXPORT_C(Fl_Fontsize, Fl_Text_Display_textsize)(fl_Text_Display text_display);+  FL_EXPORT_C(void, Fl_Text_Display_set_textsize)(fl_Text_Display text_display, Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color, Fl_Text_Display_textcolor)(fl_Text_Display text_display);+  FL_EXPORT_C(void, Fl_Text_Display_set_textcolor)(fl_Text_Display text_display, Fl_Color n);+  FL_EXPORT_C(int, Fl_Text_Display_wrapped_column)(fl_Text_Display text_display, int row, int column);+  FL_EXPORT_C(int, Fl_Text_Display_wrapped_row)(fl_Text_Display text_display, int row);+  FL_EXPORT_C(void, Fl_Text_Display_wrap_mode)(fl_Text_Display text_display, int wrap, int wrap_margin);+  FL_EXPORT_C(double, Fl_Text_Display_x_to_col)(fl_Text_Display text_display, double x);+  FL_EXPORT_C(double, Fl_Text_Display_col_to_x)(fl_Text_Display text_display,double col);+  FL_EXPORT_C(void        ,set_linenumber_width)(fl_Text_Display text_display,int width);+  FL_EXPORT_C(int         ,linenumber_width)(fl_Text_Display text_display);+  FL_EXPORT_C(void        ,set_linenumber_font)(fl_Text_Display text_display,Fl_Font val);+  FL_EXPORT_C(Fl_Font     ,linenumber_font)(fl_Text_Display text_display);+  FL_EXPORT_C(void        ,set_linenumber_size)(fl_Text_Display text_display,Fl_Fontsize val);+  FL_EXPORT_C(Fl_Fontsize ,linenumber_size)(fl_Text_Display text_display);+  FL_EXPORT_C(void        ,set_linenumber_fgcolor)(fl_Text_Display text_display,Fl_Color val);+  FL_EXPORT_C(Fl_Color    ,linenumber_fgcolor)(fl_Text_Display text_display);+  FL_EXPORT_C(void        ,set_linenumber_bgcolor)(fl_Text_Display text_display,Fl_Color val);+  FL_EXPORT_C(Fl_Color    ,linenumber_bgcolor)(fl_Text_Display text_display);+  FL_EXPORT_C(void        ,set_linenumber_align)(fl_Text_Display text_display,Fl_Align val);+  FL_EXPORT_C(Fl_Align    ,linenumber_align)(fl_Text_Display text_display);+  FL_EXPORT_C(void        ,set_linenumber_format)(fl_Text_Display text_display,const char* val);+  FL_EXPORT_C(const char* ,linenumber_format)(fl_Text_Display text_display);+#ifdef __cplusplus+}+#endif+#endif /* __FL_TEXT_DISPLAY_C__ */
+ c-src/Fl_Text_EditorC.cpp view
@@ -0,0 +1,658 @@+#include "Fl_Text_EditorC.h"+#ifdef __cplusplus+DerivedText_Editor::Key_Binding_With_Callback* convertKeyBindings(Key_BindingC* bindings){+  Key_BindingC*  curr = bindings;+  DerivedText_Editor::Key_Binding_With_Callback* start = new DerivedText_Editor::Key_Binding_With_Callback();+  DerivedText_Editor::Key_Binding_With_Callback* ret_curr = start;+  for (;curr;curr = curr->next, ret_curr = ret_curr->next){+    if (curr){+      ret_curr->key = curr->key;+      ret_curr->state = curr->state;+      C_to_Fl_Callback* callback_context = new C_to_Fl_Callback(bindings->function);+      ret_curr->callback_context = callback_context;+      if (curr->next){+        ret_curr->next = new DerivedText_Editor::Key_Binding_With_Callback();+      }+    }+  }+  return start;+}+Key_BindingC* convertKeyBindings(DerivedText_Editor::Key_Binding_With_Callback* bindings){+  DerivedText_Editor::Key_Binding_With_Callback* curr = bindings;+  Key_BindingC* start = (Key_BindingC*)malloc (sizeof(Key_BindingC));+  Key_BindingC* ret_curr = start;+  for(;curr;curr = curr->next, ret_curr = ret_curr->next){+    if (curr){+      ret_curr->key = curr->key;+      ret_curr->state = curr->state;+      ret_curr->function = C_to_Fl_Callback::intercept;+      if (curr->next) {+        ret_curr->next =  (Key_BindingC*)malloc (sizeof(Key_BindingC));+      }+    }+  }+  return start;+}+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Text_Editor_handle)(fl_Text_Editor self, int event){+    return (static_cast<DerivedText_Editor*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Text_Editor_parent)(fl_Text_Editor win){+    return (fl_Group) (static_cast<DerivedText_Editor*>(win))->parent();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_parent)(fl_Text_Editor win,fl_Text_Editor grp){+    (static_cast<DerivedText_Editor*>(win))->parent((static_cast<DerivedText_Editor*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Text_Editor_type)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->type();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_type)(fl_Text_Editor win,uchar t){+    (static_cast<DerivedText_Editor*>(win))->type(t);+  }++  FL_EXPORT_C(int,Fl_Text_Editor_x)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->x();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_y)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->y();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_w)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->w();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_h)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->h();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_align)(fl_Text_Editor text_editor, Fl_Align alignment){+    (static_cast<DerivedText_Editor*>(text_editor))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Text_Editor_align)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Text_Editor_box)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->box();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_box)(fl_Text_Editor win,Fl_Boxtype new_box){+    (static_cast<DerivedText_Editor*>(win))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Text_Editor_color)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->color();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_color)(fl_Text_Editor win,Fl_Color bg){+    (static_cast<DerivedText_Editor*>(win))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_color_with_bg_sel)(fl_Text_Editor win,Fl_Color bg,Fl_Color a){+    (static_cast<DerivedText_Editor*>(win))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Text_Editor_selection_color)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_selection_color)(fl_Text_Editor win,Fl_Color a){+    (static_cast<DerivedText_Editor*>(win))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Text_Editor_label)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->label();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_copy_label)(fl_Text_Editor win,const char* new_label){+    (static_cast<DerivedText_Editor*>(win))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_label)(fl_Text_Editor win,const char* text){+    (static_cast<DerivedText_Editor*>(win))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Text_Editor_labeltype)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_labeltype)(fl_Text_Editor win,Fl_Labeltype a){+    (static_cast<DerivedText_Editor*>(win))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_labelcolor)(fl_Text_Editor win,Fl_Color c){+    (static_cast<DerivedText_Editor*>(win))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Text_Editor_labelcolor)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Text_Editor_labelfont)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_labelfont)(fl_Text_Editor win,Fl_Font c){+    (static_cast<DerivedText_Editor*>(win))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Text_Editor_labelsize)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_labelsize)(fl_Text_Editor win,Fl_Fontsize pix){+    (static_cast<DerivedText_Editor*>(win))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Text_Editor_image)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->image();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_image)(fl_Text_Editor win,fl_Image pix){+    (static_cast<DerivedText_Editor*>(win))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Text_Editor_deimage)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->deimage();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_deimage)(fl_Text_Editor win,fl_Image pix){+    (static_cast<DerivedText_Editor*>(win))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Text_Editor_tooltip)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_copy_tooltip)(fl_Text_Editor win,const char* text){+    (static_cast<DerivedText_Editor*>(win))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_tooltip)(fl_Text_Editor win,const char* text){+    (static_cast<DerivedText_Editor*>(win))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_callback_with_user_data)(fl_Text_Editor win,fl_Callback* cb,void* p){+    Fl_Text_Editor* castedWindow = (static_cast<DerivedText_Editor*>(win));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_callback)(fl_Text_Editor win,fl_Callback* cb){+    Fl_Text_Editor* castedWindow = (static_cast<DerivedText_Editor*>(win));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Text_Editor_user_data)(fl_Text_Editor win){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Text_Editor*>(win))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Text_Editor*>(win))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_user_data)(fl_Text_Editor win,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Text_Editor*>(win))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Text_Editor*>(win))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Text_Editor*>(win))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Text_Editor_argument)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->argument();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_argument)(fl_Text_Editor win,long v){+    (static_cast<DerivedText_Editor*>(win))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Text_Editor_when)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->when();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_when)(fl_Text_Editor win,uchar i){+    (static_cast<DerivedText_Editor*>(win))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Text_Editor_visible)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->visible();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_visible_r)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_visible)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->visible();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_clear_visible)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Text_Editor_active)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->active();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_active_r)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->active_r();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_activate)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->activate();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_deactivate)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Text_Editor_output)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_output)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_clear_output)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Text_Editor_takesevents)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_changed)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->changed();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_clear_changed)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_take_focus)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_visible_focus)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_clear_visible_focus)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_modify_visible_focus)(fl_Text_Editor win,int v){+    (static_cast<DerivedText_Editor*>(win))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Text_Editor_visible_focus)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_do_callback)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_do_callback_with_widget_and_user_data)(fl_Text_Editor win,fl_Widget w,long arg){+    (static_cast<DerivedText_Editor*>(win))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_do_callback_with_widget_and_default_user_data)(fl_Text_Editor win,fl_Widget w){+    (static_cast<DerivedText_Editor*>(win))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Text_Editor_contains)(fl_Text_Editor win,fl_Widget w){+    return (static_cast<DerivedText_Editor*>(win))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Text_Editor_inside)(fl_Text_Editor win,fl_Widget w){+    return (static_cast<DerivedText_Editor*>(win))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Text_Editor_redraw)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->redraw();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_redraw_label)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Text_Editor_damage)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->damage();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_clear_damage_with_bitmask)(fl_Text_Editor win,uchar c){+    (static_cast<DerivedText_Editor*>(win))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_clear_damage)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_damage_with_text)(fl_Text_Editor win,uchar c){+    (static_cast<DerivedText_Editor*>(win))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_damage_inside_widget)(fl_Text_Editor win,uchar c,int x,int y,int w,int h){+    (static_cast<DerivedText_Editor*>(win))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_draw_label_with_xywh_alignment)(fl_Text_Editor win,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<DerivedText_Editor*>(win))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_measure_label)(fl_Text_Editor win,int* ww,int* hh){+    (static_cast<DerivedText_Editor*>(win))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Text_Editor_window)(fl_Text_Editor text_editor){+    return (fl_Window) (static_cast<DerivedText_Editor*>(text_editor))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Text_Editor_top_window)(fl_Text_Editor text_editor){+    return (fl_Window) (static_cast<DerivedText_Editor*>(text_editor))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Text_Editor_top_window_offset)(fl_Text_Editor text_editor, int* xoff, int* yoff){+    return (fl_Window) (static_cast<DerivedText_Editor*>(text_editor))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Text_Editor_as_group)(fl_Text_Editor win){+    return (fl_Text_Editor) (static_cast<DerivedText_Editor*>(win))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Text_Editor_as_gl_window)(fl_Text_Editor win){+    return (fl_Gl_Window) (static_cast<DerivedText_Editor*>(win))->as_gl_window();+  }++  FL_EXPORT_C(void,Fl_Text_Editor_begin)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->begin();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_end)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->end();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_find)(fl_Text_Editor win,fl_Widget w){+    return (static_cast<DerivedText_Editor*>(win))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Text_Editor_add)(fl_Text_Editor win,fl_Widget w){+    (static_cast<DerivedText_Editor*>(win))->add((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Text_Editor_remove_index)(fl_Text_Editor win,int index){+    (static_cast<DerivedText_Editor*>(win))->remove(index);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_remove_widget)(fl_Text_Editor win,fl_Widget w){+    (static_cast<DerivedText_Editor*>(win))->remove((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Text_Editor_clear)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->clear();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_resizable_by_reference)(fl_Text_Editor win,fl_Widget o){+    (static_cast<DerivedText_Editor*>(win))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_resizable)(fl_Text_Editor win,fl_Widget o){+    (static_cast<DerivedText_Editor*>(win))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Text_Editor_resizable)(fl_Text_Editor win){+    return (fl_Widget)(static_cast<DerivedText_Editor*>(win))->resizable();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_add_resizable)(fl_Text_Editor win,fl_Widget o){+    return (static_cast<DerivedText_Editor*>(win))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Text_Editor_init_sizes)(fl_Text_Editor win){+    (static_cast<DerivedText_Editor*>(win))->init_sizes();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_children)(fl_Text_Editor self){+    return (static_cast<DerivedText_Editor*>(self))->children();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_clip_children)(fl_Text_Editor win,int c){+    return (static_cast<DerivedText_Editor*>(win))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Text_Editor_clip_children)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_focus)(fl_Text_Editor win, fl_Widget W){+    return (static_cast<DerivedText_Editor*>(win))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Text_Editor__ddfdesign_kludge)(fl_Text_Editor win){+    return (static_cast<DerivedText_Editor*>(win))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(fl_Widget*, Fl_Text_Editor_array)(fl_Text_Editor self){+    return (fl_Widget*)(static_cast<DerivedText_Editor*>(self))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Text_Editor_child)(fl_Text_Editor self, int n){+    return (fl_Widget)(static_cast<DerivedText_Editor*>(self))->child(n);+  }+  FL_EXPORT_C(fl_Text_Editor,     Fl_Text_Editor_New)(int x, int y, int w, int h){+    DerivedText_Editor* g = new DerivedText_Editor(x,y,w,h);+    return (fl_Text_Editor)g;+  }+  FL_EXPORT_C(fl_Text_Editor,     Fl_Text_Editor_New_WithLabel)(int x, int y, int w, int h, const char* t){+    DerivedText_Editor* g = new DerivedText_Editor(x,y,w,h,t);+    return (fl_Text_Editor)g;+  }+  FL_EXPORT_C(void,     Fl_Text_Editor_Destroy)(fl_Text_Editor text_editor){+    delete (static_cast<DerivedText_Editor*>(text_editor));+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_buffer)(fl_Text_Editor text_editor,fl_Text_Buffer buf){+    return (static_cast<DerivedText_Editor*>(text_editor))->buffer((static_cast<Fl_Text_Buffer*>(buf)));+  }+  FL_EXPORT_C(fl_Text_Buffer,Fl_Text_Editor_buffer)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->buffer();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_redisplay_range)(fl_Text_Editor text_editor,int start,int end){+    (static_cast<DerivedText_Editor*>(text_editor))->redisplay_range(start,end);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_scroll)(fl_Text_Editor text_editor,int topLineNum,int horizOffset){+    return (static_cast<DerivedText_Editor*>(text_editor))->scroll(topLineNum,horizOffset);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_insert)(fl_Text_Editor text_editor,const char* text){+    return (static_cast<DerivedText_Editor*>(text_editor))->insert(text);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_overstrike)(fl_Text_Editor text_editor,const char* text){+    return (static_cast<DerivedText_Editor*>(text_editor))->overstrike(text);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_insert_position)(fl_Text_Editor text_editor,int newPos){+    return (static_cast<DerivedText_Editor*>(text_editor))->insert_position(newPos);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_insert_position)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->insert_position();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_position_to_xy)(fl_Text_Editor text_editor,int pos,int* x,int* y){+    return (static_cast<DerivedText_Editor*>(text_editor))->position_to_xy(pos,x,y);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_in_selection)(fl_Text_Editor text_editor,int x,int y){+    return (static_cast<DerivedText_Editor*>(text_editor))->in_selection(x,y);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_show_insert_position)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->show_insert_position();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_move_right)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->move_right();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_move_left)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->move_left();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_move_up)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->move_up();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_move_down)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->move_down();+  }+  FL_EXPORT_C(int,Fl_Text_Editor_count_lines)(fl_Text_Editor text_editor,int start,int end,int start_pos_is_line_start){+    return (static_cast<DerivedText_Editor*>(text_editor))->count_lines(start,end,start_pos_is_line_start >= 1 ? true : false);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_line_start)(fl_Text_Editor text_editor,int pos){+    return (static_cast<DerivedText_Editor*>(text_editor))->line_start(pos);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_line_end)(fl_Text_Editor text_editor,int startPos,int startPosIsLineStart){+    return (static_cast<DerivedText_Editor*>(text_editor))->line_end(startPos,startPosIsLineStart >= 1 ? true : false);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_skip_lines)(fl_Text_Editor text_editor,int startPos,int nLines,int startPosIsLineStart){+    return (static_cast<DerivedText_Editor*>(text_editor))->skip_lines(startPos,nLines,startPosIsLineStart>= 1 ? true : false);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_rewind_lines)(fl_Text_Editor text_editor,int startPos,int nLines){+    return (static_cast<DerivedText_Editor*>(text_editor))->rewind_lines(startPos,nLines);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_next_word)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->next_word();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_previous_word)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->previous_word();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_show_cursor)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->show_cursor();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_show_cursor_with_b)(fl_Text_Editor text_editor,int b){+    return (static_cast<DerivedText_Editor*>(text_editor))->show_cursor(b);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_hide_cursor)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->hide_cursor();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_cursor_style)(fl_Text_Editor text_editor,int style){+    return (static_cast<DerivedText_Editor*>(text_editor))->cursor_style(style);+  }+  FL_EXPORT_C(Fl_Color,Fl_Text_Editor_cursor_color)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->cursor_color();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_cursor_color)(fl_Text_Editor text_editor,Fl_Color n){+    return (static_cast<DerivedText_Editor*>(text_editor))->cursor_color(n);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_scrollbar_width)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->scrollbar_width();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_scrollbar_width)(fl_Text_Editor text_editor,int W){+    return (static_cast<DerivedText_Editor*>(text_editor))->scrollbar_width(W);+  }+  FL_EXPORT_C(Fl_Align,Fl_Text_Editor_scrollbar_align)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->scrollbar_align();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_scrollbar_align)(fl_Text_Editor text_editor,Fl_Align a){+    return (static_cast<DerivedText_Editor*>(text_editor))->scrollbar_align(a);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_word_start)(fl_Text_Editor text_editor,int pos){+    return (static_cast<DerivedText_Editor*>(text_editor))->word_start(pos);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_word_end)(fl_Text_Editor text_editor,int pos){+    return (static_cast<DerivedText_Editor*>(text_editor))->word_end(pos);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_highlight_data)(fl_Text_Editor text_editor,fl_Text_Buffer styleBuffer,Style_Table_Entry *styleTable,int nStyles,char unfinishedStyle,Unfinished_Style_Cb unfinishedHighlightCB,void *cbArg){+    Fl_Text_Editor::Style_Table_Entry* s = new Fl_Text_Editor::Style_Table_Entry[nStyles]();+    int i = 0;+    for (;i<nStyles;i++){+      Fl_Text_Editor::Style_Table_Entry x =  Fl_Text_Editor::Style_Table_Entry();+      x.color = styleTable[i].color;+      x.font = styleTable[i].font;+      x.size = styleTable[i].size;+      x.attr = styleTable[i].attr;+      s[i] = x;+    }+    (static_cast<DerivedText_Editor*>(text_editor))->highlight_data((static_cast<Fl_Text_Buffer*>(styleBuffer)),s,nStyles,unfinishedStyle,unfinishedHighlightCB,cbArg);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_position_style)(fl_Text_Editor text_editor,int lineStartPos,int lineLen,int lineIndex){+    return (static_cast<DerivedText_Editor*>(text_editor))->position_style(lineStartPos,lineLen,lineIndex);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_shortcut)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_shortcut)(fl_Text_Editor text_editor,int s){+    return (static_cast<DerivedText_Editor*>(text_editor))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Font,Fl_Text_Editor_textfont)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->textfont();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_textfont)(fl_Text_Editor text_editor,Fl_Font s){+    return (static_cast<DerivedText_Editor*>(text_editor))->textfont(s);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Text_Editor_textsize)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->textsize();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_textsize)(fl_Text_Editor text_editor,Fl_Fontsize s){+    return (static_cast<DerivedText_Editor*>(text_editor))->textsize(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_Text_Editor_textcolor)(fl_Text_Editor text_editor){+    return (static_cast<DerivedText_Editor*>(text_editor))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Text_Editor_set_textcolor)(fl_Text_Editor text_editor,Fl_Color n){+    return (static_cast<DerivedText_Editor*>(text_editor))->textcolor(n);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_wrapped_column)(fl_Text_Editor text_editor,int row,int column){+    return (static_cast<DerivedText_Editor*>(text_editor))->wrapped_column(row,column);+  }+  FL_EXPORT_C(int,Fl_Text_Editor_wrapped_row)(fl_Text_Editor text_editor,int row){+    return (static_cast<DerivedText_Editor*>(text_editor))->wrapped_row(row);+  }+  FL_EXPORT_C(void,Fl_Text_Editor_wrap_mode)(fl_Text_Editor text_editor,int wrap,int wrap_margin){+    return (static_cast<DerivedText_Editor*>(text_editor))->wrap_mode(wrap,wrap_margin);+  }+  FL_EXPORT_C(double,Fl_Text_Editor_x_to_col)(fl_Text_Editor text_editor,double x){+    return (static_cast<DerivedText_Editor*>(text_editor))->x_to_col(x);+  }+  FL_EXPORT_C(double,Fl_Text_Editor_col_to_x)(fl_Text_Editor text_editor,double col){+    return (static_cast<DerivedText_Editor*>(text_editor))->col_to_x(col);+  }+ FL_EXPORT_C(void,Fl_Text_Editor_set_insert_mode)(fl_Text_Editor text_editor,int b){+   (static_cast<DerivedText_Editor*>(text_editor))->insert_mode(b);+ }+ FL_EXPORT_C(int,Fl_Text_Editor_insert_mode)(fl_Text_Editor text_editor){+   return (static_cast<DerivedText_Editor*>(text_editor))->insert_mode();+ }+ FL_EXPORT_C(int, Fl_Text_Editor_num_key_bindings)(Key_BindingC* bindings){+   int count = 0;+   Key_BindingC* curr = bindings;+   for (;curr;curr = curr->next){+     if (curr) {+       count++;+     }+   }+   return count;+ }+ FL_EXPORT_C(void,Fl_Text_Editor_add_key_binding_with_list)(fl_Text_Editor text_editor,int key,int state,fl_Key_Func f,Key_BindingC* list){+   DerivedText_Editor::Key_Binding_With_Callback* bs = convertKeyBindings(list);+   DerivedText_Editor* e =  (static_cast<DerivedText_Editor*>(text_editor));+   C_to_Fl_Callback* context = new C_to_Fl_Callback(f);+   e->add_key_binding(key,state,context,&bs);+ }+ FL_EXPORT_C(void,Fl_Text_Editor_add_key_binding)(fl_Text_Editor text_editor,int key,int state,fl_Key_Func f){+   C_to_Fl_Callback* context = new C_to_Fl_Callback(f);+   (static_cast<DerivedText_Editor*>(text_editor))->add_key_binding(key,state,context);+ }+ FL_EXPORT_C(void,Fl_Text_Editor_remove_key_binding_with_list)(fl_Text_Editor text_editor,int key,int state,Key_BindingC* list){+   DerivedText_Editor::Key_Binding_With_Callback* bs = convertKeyBindings(list);+   (static_cast<DerivedText_Editor*>(text_editor))->remove_key_binding(key,state,&bs);+ }+ FL_EXPORT_C(void,Fl_Text_Editor_remove_key_binding)(fl_Text_Editor text_editor,int key,int state){+   (static_cast<DerivedText_Editor*>(text_editor))->remove_key_binding(key,state);+ }+ FL_EXPORT_C(void,Fl_Text_Editor_remove_all_key_bindings_with_list)(fl_Text_Editor text_editor,Key_BindingC* list){+   DerivedText_Editor::Key_Binding_With_Callback* bs = convertKeyBindings(list);+   (static_cast<DerivedText_Editor*>(text_editor))->remove_all_key_bindings(&bs);+ }+ FL_EXPORT_C(void,Fl_Text_Editor_remove_all_key_bindings)(fl_Text_Editor text_editor){+   (static_cast<DerivedText_Editor*>(text_editor))->remove_all_key_bindings();+ }+ FL_EXPORT_C(void,Fl_Text_Editor_replace_key_bindings)(fl_Text_Editor text_editor, Key_BindingC* list){+   DerivedText_Editor::Key_Binding_With_Callback* bs = convertKeyBindings(list);+   (static_cast<DerivedText_Editor*>(text_editor))->replace_key_bindings(&bs);+ }+ FL_EXPORT_C(void,Fl_Text_Editor_replace_key_bindings_with_list)(fl_Text_Editor text_editor, Key_BindingC* list1, Key_BindingC* list2){+   DerivedText_Editor::Key_Binding_With_Callback* bs1 = convertKeyBindings(list1);+   DerivedText_Editor::Key_Binding_With_Callback* bs2 = convertKeyBindings(list2);+   (static_cast<DerivedText_Editor*>(text_editor))->replace_key_bindings(&bs1,&bs2);+ }+ FL_EXPORT_C(Key_BindingC* ,Fl_Text_Editor_add_default_key_bindings)(fl_Text_Editor text_editor,Key_BindingC* list){+   DerivedText_Editor::Key_Binding_With_Callback* bs_ = new DerivedText_Editor::Key_Binding_With_Callback();+   (static_cast<DerivedText_Editor*>(text_editor))->add_default_key_bindings(&bs_);+   list = convertKeyBindings(bs_);+   return list;+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_undo)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_undo(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_ignore)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_ignore(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_backspace)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_backspace(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_enter)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_enter(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_move)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_move(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_shift_move)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_shift_move(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_ctrl_move)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_ctrl_move(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_c_s_move)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_c_s_move(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_meta_move)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_meta_move(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_m_s_move)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_m_s_move(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_home)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_home(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_end)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_end(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_left)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_left(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_up)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_up(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_right)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_right(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_down)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_down(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_page_up)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_page_up(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_page_down)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_page_down(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_insert)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_insert(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_delete)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_delete(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_copy)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_copy(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_cut)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_cut(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_paste)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_paste(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_select_all)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_select_all(c,(static_cast<DerivedText_Editor*>(e)));+ }+ FL_EXPORT_C(int,Fl_Text_Editor_kf_default)(int c,fl_Text_Editor e){+   return Fl_Text_Editor::kf_default(c,(static_cast<DerivedText_Editor*>(e)));+ }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Text_EditorC.h view
@@ -0,0 +1,224 @@+#ifndef __FL_TEXT_EDITOR_C__+#define __FL_TEXT_EDITOR_C__+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#ifdef __cplusplus+#include "FL/Fl.H"+#include "FL/Fl_Text_Editor.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,          Fl_Text_Editor_handle)(fl_Text_Editor self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Text_Editor_parent)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_parent)(fl_Text_Editor text_editor, fl_Text_Editor grp);+  FL_EXPORT_C(uchar,        Fl_Text_Editor_type)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_type)(fl_Text_Editor text_editor, uchar t);++  FL_EXPORT_C(int,          Fl_Text_Editor_x)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int,          Fl_Text_Editor_y)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int,          Fl_Text_Editor_w)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int,          Fl_Text_Editor_h)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_align)(fl_Text_Editor text_editor, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Text_Editor_align)(fl_Text_Editor text_editor);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Text_Editor_box)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_box)(fl_Text_Editor text_editor, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Text_Editor_color)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_color)(fl_Text_Editor text_editor, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_color_with_bg_sel)(fl_Text_Editor text_editor,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Text_Editor_selection_color)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_selection_color)(fl_Text_Editor text_editor, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Text_Editor_label)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_copy_label)(fl_Text_Editor text_editor, const char* new_label);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_label)(fl_Text_Editor text_editor, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Text_Editor_labeltype)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_labeltype)(fl_Text_Editor text_editor, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Text_Editor_labelcolor)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_labelcolor)(fl_Text_Editor text_editor, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Text_Editor_item_labelfont)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_item_labelfont)(fl_Text_Editor text_editor, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Text_Editor_item_labelsize)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_item_labelsize)(fl_Text_Editor text_editor, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Text_Editor_image)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_image)(fl_Text_Editor text_editor, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Text_Editor_deimage)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_deimage)(fl_Text_Editor text_editor, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Text_Editor_tooltip)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_copy_tooltip)(fl_Text_Editor text_editor, const char* text);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_tooltip)(fl_Text_Editor text_editor, const char* text);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_callback_with_user_data)(fl_Text_Editor text_editor, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_callback)(fl_Text_Editor text_editor, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Text_Editor_other_data)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_other_data)(fl_Text_Editor text_editor, void* v);+  FL_EXPORT_C(void*,        Fl_Text_Editor_user_data)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_user_data)(fl_Text_Editor text_editor, void* v);+  FL_EXPORT_C(long,         Fl_Text_Editor_argument)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_argument)(fl_Text_Editor text_editor, long v);+  FL_EXPORT_C(Fl_When,      Fl_Text_Editor_when)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_when)(fl_Text_Editor text_editor, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Text_Editor_visible)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int,          Fl_Text_Editor_visible_r)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_show_super)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_show)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_hide_super)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_hide)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_visible)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_clear_visible)(fl_Text_Editor text_editor);+  FL_EXPORT_C(unsigned int, Fl_Text_Editor_active)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int,          Fl_Text_Editor_active_r)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_activate)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_deactivate)(fl_Text_Editor text_editor);+  FL_EXPORT_C(unsigned int, Fl_Text_Editor_output)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_output)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_clear_output)(fl_Text_Editor text_editor);+  FL_EXPORT_C(unsigned int, Fl_Text_Editor_takesevents)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_changed)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_clear_changed)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int,          Fl_Text_Editor_take_focus)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_visible_focus)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_clear_visible_focus)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_modify_visible_focus)(fl_Text_Editor text_editor, int v);+  FL_EXPORT_C(unsigned int, Fl_Text_Editor_visible_focus)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int,          Fl_Text_Editor_contains)(fl_Text_Editor text_editor, fl_Text_Editor w);+  FL_EXPORT_C(int,          Fl_Text_Editor_inside)(fl_Text_Editor text_editor, fl_Text_Editor w);+  FL_EXPORT_C(void,         Fl_Text_Editor_redraw)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_redraw_label)(fl_Text_Editor text_editor);+  FL_EXPORT_C(uchar,        Fl_Text_Editor_damage)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_clear_damage_with_bitmask)(fl_Text_Editor text_editor, uchar c);+  FL_EXPORT_C(void,         Fl_Text_Editor_clear_damage)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_damage_with_text)(fl_Text_Editor text_editor, uchar c);+  FL_EXPORT_C(void,         Fl_Text_Editor_damage_inside_text_editor)(fl_Text_Editor text_editor, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Text_Editor_draw_label_with_xywh_alignment)(fl_Text_Editor text_editor, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Text_Editor_measure_label)(fl_Text_Editor text_editor, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Text_Editor_window)(fl_Text_Editor text_editor);+  FL_EXPORT_C(fl_Window,    Fl_Text_Editor_top_window)(fl_Text_Editor text_editor);+  FL_EXPORT_C(fl_Window ,   Fl_Text_Editor_top_window_offset)(fl_Text_Editor text_editor, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Text_Editor,     Fl_Text_Editor_as_text_editor_super)(fl_Text_Editor text_editor);+  FL_EXPORT_C(fl_Text_Editor,     Fl_Text_Editor_as_text_editor)(fl_Text_Editor text_editor);+  FL_EXPORT_C(fl_Gl_Window, Fl_Text_Editor_as_gl_window_super)(fl_Text_Editor text_editor);+  FL_EXPORT_C(fl_Gl_Window, Fl_Text_Editor_as_gl_window)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_resize_super)(fl_Text_Editor text_editor,int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Text_Editor_resize)(fl_Text_Editor text_editor,int X, int Y, int W, int H);++  /* Fl_Group specific */+  FL_EXPORT_C(void,         Fl_Text_Editor_begin)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_end)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int,          Fl_Text_Editor_find)(fl_Text_Editor text_editor, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Text_Editor_add)(fl_Text_Editor text_editor, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Text_Editor_insert)(fl_Text_Editor text_editor, const char* text);+  FL_EXPORT_C(void,         Fl_Text_Editor_remove_index)(fl_Text_Editor text_editor, int index);+  FL_EXPORT_C(void,         Fl_Text_Editor_remove_widget)(fl_Text_Editor text_editor, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Text_Editor_clear)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_resizable_by_reference)(fl_Text_Editor text_editor,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_resizable)(fl_Text_Editor text_editor,fl_Widget o);+  FL_EXPORT_C(fl_Widget,         Fl_Text_Editor_resizable)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_add_resizable)(fl_Text_Editor text_editor,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Text_Editor_init_sizes)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int,          Fl_Text_Editor_children)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_set_clip_children)(fl_Text_Editor text_editor,int c);+  FL_EXPORT_C(unsigned int, Fl_Text_Editor_clip_children)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_focus)(fl_Text_Editor text_editor,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Text_Editor__ddfdesign_kludge)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void,         Fl_Text_Editor_insert_with_before)(fl_Text_Editor self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Text_Editor_array)(fl_Text_Editor self);+  FL_EXPORT_C(fl_Widget,    Fl_Text_Editor_child)(fl_Text_Editor self, int n);++  /* Inherited from Fl_Text_Display */+  FL_EXPORT_C(fl_Text_Editor, Fl_Text_Editor_New)(int X, int Y, int W, int H);+  FL_EXPORT_C(fl_Text_Editor, Fl_Text_Editor_New_WithLabel)(int X, int Y, int W, int H, const char* l);+  FL_EXPORT_C(void,     Fl_Text_Editor_Destroy)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int, Fl_Text_Editor_handle)(fl_Text_Editor text_editor, int e);+  FL_EXPORT_C(void, Fl_Text_Editor_set_buffer)(fl_Text_Editor text_editor, fl_Text_Buffer buf);+  FL_EXPORT_C(fl_Text_Buffer, Fl_Text_Editor_buffer)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void, Fl_Text_Editor_redisplay_range)(fl_Text_Editor text_editor, int start, int end);+  FL_EXPORT_C(void, Fl_Text_Editor_scroll)(fl_Text_Editor text_editor, int topLineNum, int horizOffset);+  FL_EXPORT_C(void, Fl_Text_Editor_overstrike)(fl_Text_Editor text_editor, const char* text);+  FL_EXPORT_C(void, Fl_Text_Editor_set_insert_position)(fl_Text_Editor text_editor, int newPos);+  FL_EXPORT_C(int, Fl_Text_Editor_insert_position)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int, Fl_Text_Editor_position_to_xy)(fl_Text_Editor text_editor, int pos, int* x, int* y);+  FL_EXPORT_C(int, Fl_Text_Editor_in_selection)(fl_Text_Editor text_editor, int x, int y);+  FL_EXPORT_C(void, Fl_Text_Editor_show_insert_position)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int, Fl_Text_Editor_move_right)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int, Fl_Text_Editor_move_left)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int, Fl_Text_Editor_move_up)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int, Fl_Text_Editor_move_down)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int, Fl_Text_Editor_count_lines)(fl_Text_Editor text_editor, int start, int end, int start_pos_is_line_start);+  FL_EXPORT_C(int, Fl_Text_Editor_line_start)(fl_Text_Editor text_editor, int pos);+  FL_EXPORT_C(int, Fl_Text_Editor_line_end)(fl_Text_Editor text_editor, int startPos, int startPosIsLineStart);+  FL_EXPORT_C(int, Fl_Text_Editor_skip_lines)(fl_Text_Editor text_editor, int startPos, int nLines, int startPosIsLineStart);+  FL_EXPORT_C(int, Fl_Text_Editor_rewind_lines)(fl_Text_Editor text_editor, int startPos, int nLines);+  FL_EXPORT_C(void, Fl_Text_Editor_next_word)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void, Fl_Text_Editor_previous_word)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void, Fl_Text_Editor_show_cursor)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void, Fl_Text_Editor_show_cursor_with_b)(fl_Text_Editor text_editor, int b);+  FL_EXPORT_C(void, Fl_Text_Editor_hide_cursor)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void, Fl_Text_Editor_cursor_style)(fl_Text_Editor text_editor, int style);+  FL_EXPORT_C(Fl_Color, Fl_Text_Editor_cursor_color)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void, Fl_Text_Editor_set_cursor_color)(fl_Text_Editor text_editor, Fl_Color n);+  FL_EXPORT_C(int, Fl_Text_Editor_scrollbar_width)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void, Fl_Text_Editor_set_scrollbar_width)(fl_Text_Editor text_editor, int W);+  FL_EXPORT_C(Fl_Align, Fl_Text_Editor_scrollbar_align)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void, Fl_Text_Editor_set_scrollbar_align)(fl_Text_Editor text_editor, Fl_Align a);+  FL_EXPORT_C(int, Fl_Text_Editor_word_start)(fl_Text_Editor text_editor, int pos);+  FL_EXPORT_C(int, Fl_Text_Editor_word_end)(fl_Text_Editor text_editor, int pos);+  FL_EXPORT_C(void, Fl_Text_Editor_highlight_data)(fl_Text_Editor text_editor, fl_Text_Buffer styleBuffer, Style_Table_Entry *styleTable, int nStyles, char unfinishedStyle, Unfinished_Style_Cb unfinishedHighlightCB, void *cbArg);+  FL_EXPORT_C(int, Fl_Text_Editor_position_style)(fl_Text_Editor text_editor, int lineStartPos, int lineLen, int lineIndex);+  FL_EXPORT_C(int, Fl_Text_Editor_shortcut)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void, Fl_Text_Editor_set_shortcut)(fl_Text_Editor text_editor, int s);+  FL_EXPORT_C(Fl_Font, Fl_Text_Editor_textfont)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void, Fl_Text_Editor_set_textfont)(fl_Text_Editor text_editor, Fl_Font s);+  FL_EXPORT_C(Fl_Fontsize, Fl_Text_Editor_textsize)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void, Fl_Text_Editor_set_textsize)(fl_Text_Editor text_editor, Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color, Fl_Text_Editor_textcolor)(fl_Text_Editor text_editor);+  FL_EXPORT_C(void, Fl_Text_Editor_set_textcolor)(fl_Text_Editor text_editor, Fl_Color n);+  FL_EXPORT_C(int, Fl_Text_Editor_wrapped_column)(fl_Text_Editor text_editor, int row, int column);+  FL_EXPORT_C(int, Fl_Text_Editor_wrapped_row)(fl_Text_Editor text_editor, int row);+  FL_EXPORT_C(void, Fl_Text_Editor_wrap_mode)(fl_Text_Editor text_editor, int wrap, int wrap_margin);+  FL_EXPORT_C(double, Fl_Text_Editor_x_to_col)(fl_Text_Editor text_editor, double x);+  FL_EXPORT_C(double, Fl_Text_Editor_col_to_x)(fl_Text_Editor text_editor,double col);++  /* Fl_Text_Editor specific */+  FL_EXPORT_C(void, Fl_Text_Editor_set_insert_mode)(fl_Text_Editor text_editor, int b);+  FL_EXPORT_C(int, Fl_Text_Editor_insert_mode)(fl_Text_Editor text_editor);+  FL_EXPORT_C(int, Fl_Text_Editor_num_key_bindings)(Key_BindingC* list);+  FL_EXPORT_C(void, Fl_Text_Editor_add_key_binding_with_list)(fl_Text_Editor text_editor,int key, int state, fl_Key_Func f, Key_BindingC* list);+  FL_EXPORT_C(void, Fl_Text_Editor_add_key_binding)(fl_Text_Editor text_editor, int key, int state, fl_Key_Func f);+  FL_EXPORT_C(void, Fl_Text_Editor_remove_key_binding_with_list)(fl_Text_Editor text_editor, int key, int state, Key_BindingC* list);+  FL_EXPORT_C(void, Fl_Text_Editor_remove_key_binding)(fl_Text_Editor text_editor, int key, int state);+  FL_EXPORT_C(void, Fl_Text_Editor_remove_all_key_bindings_with_list)(fl_Text_Editor text_editor, Key_BindingC* list);+  FL_EXPORT_C(void, Fl_Text_Editor_remove_all_key_bindings)(fl_Text_Editor text_editor);+  FL_EXPORT_C(Key_BindingC*, Fl_Text_Editor_add_default_key_bindings)(fl_Text_Editor text_editor, Key_BindingC* list);++    // functions for the built in default bindings+  FL_EXPORT_C(int, Fl_Text_Editor_kf_default)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_ignore)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_backspace)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_enter)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_move)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_shift_move)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_ctrl_move)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_c_s_move)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_meta_move)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_m_s_move)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_home)(int, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_end)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_left)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_up)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_right)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_down)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_page_up)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_page_down)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_insert)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_delete)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_copy)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_cut)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_paste)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_select_all)(int c, fl_Text_Editor e);+  FL_EXPORT_C(int, Fl_Text_Editor_kf_undo)(int c, fl_Text_Editor e);+  FL_EXPORT_C(void,Fl_Text_Editor_replace_key_bindings)(fl_Text_Editor text_editor, Key_BindingC* list);+  FL_EXPORT_C(void,Fl_Text_Editor_replace_key_bindings_with_list)(fl_Text_Editor text_editor, Key_BindingC* list1, Key_BindingC* list2);+#ifdef __cplusplus+}+#endif+#endif /* __FL_TEXT_EDITOR_C__ */
+ c-src/Fl_Text_SelectionC.cpp view
@@ -0,0 +1,35 @@+#include "Fl_Text_SelectionC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(void,Fl_Text_Selection_set)(fl_Text_Selection text_selection,int start,int end){+  (static_cast<Fl_Text_Selection*>(text_selection))->set(start,end);+}+  FL_EXPORT_C(void,Fl_Text_Selection_update)(fl_Text_Selection text_selection,int pos,int nDeleted,int nInserted){+  (static_cast<Fl_Text_Selection*>(text_selection))->update(pos,nDeleted,nInserted);+}+  FL_EXPORT_C(int,Fl_Text_Selection_start)(fl_Text_Selection text_selection){+  return (static_cast<Fl_Text_Selection*>(text_selection))->start();+}+  FL_EXPORT_C(int,Fl_Text_Selection_end)(fl_Text_Selection text_selection){+  return (static_cast<Fl_Text_Selection*>(text_selection))->end();+}+  FL_EXPORT_C(int,Fl_Text_Selection_selected)(fl_Text_Selection text_selection){+  return (static_cast<Fl_Text_Selection*>(text_selection))->selected();+}+  FL_EXPORT_C(void,Fl_Text_Selection_set_selected)(fl_Text_Selection text_selection,int b){+  (static_cast<Fl_Text_Selection*>(text_selection))->selected(b);+}+  FL_EXPORT_C(int,Fl_Text_Selection_includes)(fl_Text_Selection text_selection,int pos){+  return (static_cast<Fl_Text_Selection*>(text_selection))->includes(pos);+}+  FL_EXPORT_C(int,Fl_Text_Selection_position)(fl_Text_Selection text_selection,int* start,int* end){+  return (static_cast<Fl_Text_Selection*>(text_selection))->position(start,end);+}+  FL_EXPORT_C(fl_Text_Selection, Fl_Text_Selection_New)(){+  Fl_Text_Selection* t = new Fl_Text_Selection();+  return (fl_Text_Selection)t;+}+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Text_SelectionC.h view
@@ -0,0 +1,23 @@+#ifndef __FL_TEXT_SELECTION_C__+#define __FL_TEXT_SELECTION_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Text_Buffer.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(void, Fl_Text_Selection_set)(fl_Text_Selection text_selection,int start, int end);+  FL_EXPORT_C(void, Fl_Text_Selection_update)(fl_Text_Selection text_selection, int pos, int nDeleted, int nInserted);+  FL_EXPORT_C(int, Fl_Text_Selection_start)(fl_Text_Selection text_selection);+  FL_EXPORT_C(int, Fl_Text_Selection_end)(fl_Text_Selection text_selection);+  FL_EXPORT_C(int, Fl_Text_Selection_selected)(fl_Text_Selection text_selection);+  FL_EXPORT_C(void, Fl_Text_Selection_set_selected)(fl_Text_Selection text_selection, int b);+  FL_EXPORT_C(int, Fl_Text_Selection_includes)(fl_Text_Selection text_selection, int pos);+  FL_EXPORT_C(int, Fl_Text_Selection_position)(fl_Text_Selection text_selection, int* start, int* end);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_TEXT_SELECTION_C__*/
+ c-src/Fl_TileC.cpp view
@@ -0,0 +1,340 @@+#include "Fl_TileC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Tile_handle)(fl_Tile tile, int event){+    return (static_cast<Fl_Tile*>(tile))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Tile_parent)(fl_Tile tile){+    return (fl_Group) (static_cast<Fl_Tile*>(tile))->parent();+  }+  FL_EXPORT_C(void,Fl_Tile_set_parent)(fl_Tile tile,fl_Group grp){+    (static_cast<Fl_Tile*>(tile))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Tile_type)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->type();+  }+  FL_EXPORT_C(void,Fl_Tile_set_type)(fl_Tile tile,uchar t){+    (static_cast<Fl_Tile*>(tile))->type(t);+  }++  FL_EXPORT_C(int,Fl_Tile_x)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->x();+  }+  FL_EXPORT_C(int,Fl_Tile_y)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->y();+  }+  FL_EXPORT_C(int,Fl_Tile_w)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->w();+  }+  FL_EXPORT_C(int,Fl_Tile_h)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->h();+  }+  FL_EXPORT_C(void,Fl_Tile_set_align)(fl_Tile tile, Fl_Align alignment){+    (static_cast<Fl_Tile*>(tile))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Tile_align)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Tile_box)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->box();+  }+  FL_EXPORT_C(void,Fl_Tile_set_box)(fl_Tile tile,Fl_Boxtype new_box){+    (static_cast<Fl_Tile*>(tile))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Tile_color)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->color();+  }+  FL_EXPORT_C(void,Fl_Tile_set_color)(fl_Tile tile,Fl_Color bg){+    (static_cast<Fl_Tile*>(tile))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Tile_set_color_with_bg_sel)(fl_Tile tile,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Tile*>(tile))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tile_selection_color)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Tile_set_selection_color)(fl_Tile tile,Fl_Color a){+    (static_cast<Fl_Tile*>(tile))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Tile_label)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->label();+  }+  FL_EXPORT_C(void,Fl_Tile_copy_label)(fl_Tile tile,const char* new_label){+    (static_cast<Fl_Tile*>(tile))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Tile_set_label)(fl_Tile tile,const char* text){+    (static_cast<Fl_Tile*>(tile))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Tile_labeltype)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Tile_set_labeltype)(fl_Tile tile,Fl_Labeltype a){+    (static_cast<Fl_Tile*>(tile))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Tile_set_labelcolor)(fl_Tile tile,Fl_Color c){+    (static_cast<Fl_Tile*>(tile))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Tile_labelcolor)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Tile_labelfont)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Tile_set_labelfont)(fl_Tile tile,Fl_Font c){+    (static_cast<Fl_Tile*>(tile))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Tile_labelsize)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Tile_set_labelsize)(fl_Tile tile,Fl_Fontsize pix){+    (static_cast<Fl_Tile*>(tile))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Tile_image)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->image();+  }+  FL_EXPORT_C(void,Fl_Tile_set_image)(fl_Tile tile,fl_Image pix){+    (static_cast<Fl_Tile*>(tile))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Tile_deimage)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->deimage();+  }+  FL_EXPORT_C(void,Fl_Tile_set_deimage)(fl_Tile tile,fl_Image pix){+    (static_cast<Fl_Tile*>(tile))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Tile_tooltip)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Tile_copy_tooltip)(fl_Tile tile,const char* text){+    (static_cast<Fl_Tile*>(tile))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Tile_set_tooltip)(fl_Tile tile,const char* text){+    (static_cast<Fl_Tile*>(tile))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Tile_set_callback_with_user_data)(fl_Tile tile,fl_Callback* cb,void* p){+    Fl_Tile* castedWindow = (static_cast<Fl_Tile*>(tile));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Tile_set_callback)(fl_Tile tile,fl_Callback* cb){+    Fl_Tile* castedWindow = (static_cast<Fl_Tile*>(tile));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Tile_user_data)(fl_Tile tile){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Tile*>(tile))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Tile*>(tile))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Tile_set_user_data)(fl_Tile tile,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Tile*>(tile))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Tile*>(tile))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Tile*>(tile))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Tile_argument)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->argument();+  }+  FL_EXPORT_C(void,Fl_Tile_set_argument)(fl_Tile tile,long v){+    (static_cast<Fl_Tile*>(tile))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Tile_when)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->when();+  }+  FL_EXPORT_C(void,Fl_Tile_set_when)(fl_Tile tile,uchar i){+    (static_cast<Fl_Tile*>(tile))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Tile_visible)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->visible();+  }+  FL_EXPORT_C(int,Fl_Tile_visible_r)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Tile_set_visible)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->visible();+  }+  FL_EXPORT_C(void,Fl_Tile_clear_visible)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Tile_active)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->active();+  }+  FL_EXPORT_C(int,Fl_Tile_active_r)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->active_r();+  }+  FL_EXPORT_C(void,Fl_Tile_activate)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->activate();+  }+  FL_EXPORT_C(void,Fl_Tile_deactivate)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Tile_output)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->output();+  }+  FL_EXPORT_C(void,Fl_Tile_set_output)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->output();+  }+  FL_EXPORT_C(void,Fl_Tile_clear_output)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Tile_takesevents)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Tile_set_changed)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->changed();+  }+  FL_EXPORT_C(void,Fl_Tile_clear_changed)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Tile_take_focus)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Tile_set_visible_focus)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Tile_clear_visible_focus)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Tile_modify_visible_focus)(fl_Tile tile,int v){+    (static_cast<Fl_Tile*>(tile))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Tile_visible_focus)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Tile_do_callback)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Tile_do_callback_with_widget_and_user_data)(fl_Tile tile,fl_Widget w,long arg){+    (static_cast<Fl_Tile*>(tile))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Tile_do_callback_with_widget_and_default_user_data)(fl_Tile tile,fl_Widget w){+    (static_cast<Fl_Tile*>(tile))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Tile_contains)(fl_Tile tile,fl_Widget w){+    return (static_cast<Fl_Tile*>(tile))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Tile_inside)(fl_Tile tile,fl_Widget w){+    return (static_cast<Fl_Tile*>(tile))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Tile_redraw)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->redraw();+  }+  FL_EXPORT_C(void,Fl_Tile_redraw_label)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Tile_damage)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->damage();+  }+  FL_EXPORT_C(void,Fl_Tile_clear_damage_with_bitmask)(fl_Tile tile,uchar c){+    (static_cast<Fl_Tile*>(tile))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Tile_clear_damage)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Tile_damage_with_text)(fl_Tile tile,uchar c){+    (static_cast<Fl_Tile*>(tile))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Tile_damage_inside_widget)(fl_Tile tile,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Tile*>(tile))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Tile_draw_label_with_xywh_alignment)(fl_Tile tile,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Tile*>(tile))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Tile_measure_label)(fl_Tile tile,int* ww,int* hh){+    (static_cast<Fl_Tile*>(tile))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Tile_window)(fl_Tile tile){+    return (fl_Window) (static_cast<Fl_Tile*>(tile))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Tile_top_window)(fl_Tile tile){+    return (fl_Window) (static_cast<Fl_Tile*>(tile))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Tile_top_window_offset)(fl_Tile tile, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Tile*>(tile))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Tile_as_group)(fl_Tile tile){+    return (fl_Group) (static_cast<Fl_Tile*>(tile))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Tile_as_gl_window)(fl_Tile tile){+    return (fl_Gl_Window) (static_cast<Fl_Tile*>(tile))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Tile_begin)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->begin();+  }+  FL_EXPORT_C(void,Fl_Tile_end)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->end();+  }+  FL_EXPORT_C(int,Fl_Tile_find)(fl_Tile tile,fl_Widget w){+    return (static_cast<Fl_Tile*>(tile))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Tile_add)(fl_Tile tile,fl_Widget w){+    (static_cast<Fl_Tile*>(tile))->add((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Tile_insert)(fl_Tile tile,fl_Widget w,int i){+    (static_cast<Fl_Tile*>(tile))->insert(*(static_cast<Fl_Widget*>(w)),i);+  }+  FL_EXPORT_C(void,Fl_Tile_remove_index)(fl_Tile tile,int index){+    (static_cast<Fl_Tile*>(tile))->remove(index);+  }+  FL_EXPORT_C(void,Fl_Tile_remove_widget)(fl_Tile tile,fl_Widget w){+    (static_cast<Fl_Tile*>(tile))->remove((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Tile_clear)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->clear();+  }+  FL_EXPORT_C(void,Fl_Tile_set_resizable_by_reference)(fl_Tile tile,fl_Widget o){+    (static_cast<Fl_Tile*>(tile))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Tile_set_resizable)(fl_Tile tile,fl_Widget o){+    (static_cast<Fl_Tile*>(tile))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Tile_resizable)(fl_Tile tile){+    return (fl_Widget)(static_cast<Fl_Tile*>(tile))->resizable();+  }+  FL_EXPORT_C(void,Fl_Tile_add_resizable)(fl_Tile tile,fl_Widget o){+    return (static_cast<Fl_Tile*>(tile))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Tile_init_sizes)(fl_Tile tile){+    (static_cast<Fl_Tile*>(tile))->init_sizes();+  }+  FL_EXPORT_C(int,Fl_Tile_children)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->children();+  }+  FL_EXPORT_C(void,Fl_Tile_set_clip_children)(fl_Tile tile,int c){+    return (static_cast<Fl_Tile*>(tile))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Tile_clip_children)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Tile_focus)(fl_Tile tile, fl_Widget W){+    return (static_cast<Fl_Tile*>(tile))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Tile__ddfdesign_kludge)(fl_Tile tile){+    return (static_cast<Fl_Tile*>(tile))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(void, Fl_Tile_insert_with_before)(fl_Tile tile, fl_Widget w, fl_Widget before){+    (static_cast<Fl_Tile*>(tile))->insert(*(static_cast<Fl_Widget*>(w)),(static_cast<Fl_Widget*>(before)));+  }+  FL_EXPORT_C(fl_Widget*, Fl_Tile_array)(fl_Tile tile){+    return (fl_Widget*)(static_cast<Fl_Tile*>(tile))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Tile_child)(fl_Tile tile, int n){+    return (fl_Widget)(static_cast<Fl_Tile*>(tile))->child(n);+  }+  FL_EXPORT_C(fl_Tile,     Fl_Tile_New)(int x, int y, int w, int h){+    Fl_Tile* g = new Fl_Tile(x,y,w,h);+    return (fl_Tile)g;+  }+  FL_EXPORT_C(fl_Tile,     Fl_Tile_New_WithLabel)(int x, int y, int w, int h, const char* t){+    Fl_Tile* g = new Fl_Tile(x,y,w,h,t);+    return (fl_Tile)g;+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_TileC.h view
@@ -0,0 +1,132 @@+#ifndef __FL_TILE_C__+#define __FL_TILE_C__+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#ifdef __cplusplus+#include "FL/Fl.H"+#include "FL/Fl_Tile.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,          Fl_Tile_handle)(fl_Tile tile, int event);+  FL_EXPORT_C(fl_Group,     Fl_Tile_parent)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_parent)(fl_Tile tile, fl_Group group);+  FL_EXPORT_C(uchar,        Fl_Tile_type)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_type)(fl_Tile tile, uchar t);++  FL_EXPORT_C(int,          Fl_Tile_x)(fl_Tile tile);+  FL_EXPORT_C(int,          Fl_Tile_y)(fl_Tile tile);+  FL_EXPORT_C(int,          Fl_Tile_w)(fl_Tile tile);+  FL_EXPORT_C(int,          Fl_Tile_h)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_align)(fl_Tile tile, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Tile_align)(fl_Tile tile);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Tile_box)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_box)(fl_Tile tile, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Tile_color)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_color)(fl_Tile tile, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Tile_set_color_with_bg_sel)(fl_Tile tile,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Tile_selection_color)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_selection_color)(fl_Tile tile, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Tile_label)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_copy_label)(fl_Tile tile, const char* new_label);+  FL_EXPORT_C(void,         Fl_Tile_set_label)(fl_Tile tile, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Tile_labeltype)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_labeltype)(fl_Tile tile, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Tile_labelcolor)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_labelcolor)(fl_Tile tile, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Tile_item_labelfont)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_item_labelfont)(fl_Tile tile, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Tile_item_labelsize)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_item_labelsize)(fl_Tile tile, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Tile_image)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_image)(fl_Tile tile, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Tile_deimage)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_deimage)(fl_Tile tile, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Tile_tooltip)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_copy_tooltip)(fl_Tile tile, const char* text);+  FL_EXPORT_C(void,         Fl_Tile_set_tooltip)(fl_Tile tile, const char* text);+  FL_EXPORT_C(void,         Fl_Tile_set_callback_with_user_data)(fl_Tile tile, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Tile_set_callback)(fl_Tile tile, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Tile_other_data)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_other_data)(fl_Tile tile, void* v);+  FL_EXPORT_C(void*,        Fl_Tile_user_data)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_user_data)(fl_Tile tile, void* v);+  FL_EXPORT_C(long,         Fl_Tile_argument)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_argument)(fl_Tile tile, long v);+  FL_EXPORT_C(Fl_When,      Fl_Tile_when)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_when)(fl_Tile tile, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Tile_visible)(fl_Tile tile);+  FL_EXPORT_C(int,          Fl_Tile_visible_r)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_show_super)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_show)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_hide_super)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_hide)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_visible)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_clear_visible)(fl_Tile tile);+  FL_EXPORT_C(unsigned int, Fl_Tile_active)(fl_Tile tile);+  FL_EXPORT_C(int,          Fl_Tile_active_r)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_activate)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_deactivate)(fl_Tile tile);+  FL_EXPORT_C(unsigned int, Fl_Tile_output)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_output)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_clear_output)(fl_Tile tile);+  FL_EXPORT_C(unsigned int, Fl_Tile_takesevents)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_changed)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_clear_changed)(fl_Tile tile);+  FL_EXPORT_C(int,          Fl_Tile_take_focus)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_visible_focus)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_clear_visible_focus)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_modify_visible_focus)(fl_Tile tile, int v);+  FL_EXPORT_C(unsigned int, Fl_Tile_visible_focus)(fl_Tile tile);+  FL_EXPORT_C(int,          Fl_Tile_contains)(fl_Tile tile, fl_Group w);+  FL_EXPORT_C(int,          Fl_Tile_inside)(fl_Tile tile, fl_Group w);+  FL_EXPORT_C(void,         Fl_Tile_redraw)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_redraw_label)(fl_Tile tile);+  FL_EXPORT_C(uchar,        Fl_Tile_damage)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_clear_damage_with_bitmask)(fl_Tile tile, uchar c);+  FL_EXPORT_C(void,         Fl_Tile_clear_damage)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_damage_with_text)(fl_Tile tile, uchar c);+  FL_EXPORT_C(void,         Fl_Tile_damage_inside_group)(fl_Tile tile, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Tile_draw_label_with_xywh_alignment)(fl_Tile tile, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Tile_measure_label)(fl_Tile tile, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Tile_window)(fl_Tile tile);+  FL_EXPORT_C(fl_Window,    Fl_Tile_top_window)(fl_Tile tile);+  FL_EXPORT_C(fl_Window ,   Fl_Tile_top_window_offset)(fl_Tile tile, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Tile_as_group_super)(fl_Tile tile);+  FL_EXPORT_C(fl_Group,     Fl_Tile_as_group)(fl_Tile tile);+  FL_EXPORT_C(fl_Gl_Window, Fl_Tile_as_gl_window_super)(fl_Tile tile);+  FL_EXPORT_C(fl_Gl_Window, Fl_Tile_as_gl_window)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_resize_super)(fl_Tile tile,int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Tile_resize)(fl_Tile tile,int X, int Y, int W, int H);++  /* Fl_Tile specific */+  FL_EXPORT_C(void,         Fl_Tile_begin)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_end)(fl_Tile tile);+  FL_EXPORT_C(int,          Fl_Tile_find)(fl_Tile tile, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Tile_add)(fl_Tile tile, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Tile_insert)(fl_Tile tile, fl_Widget w, int i);+  FL_EXPORT_C(void,         Fl_Tile_remove_index)(fl_Tile tile, int index);+  FL_EXPORT_C(void,         Fl_Tile_remove_widget)(fl_Tile tile, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Tile_clear)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_resizable_by_reference)(fl_Tile tile,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Tile_set_resizable)(fl_Tile tile,fl_Widget o);+  FL_EXPORT_C(fl_Widget,         Fl_Tile_resizable)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_add_resizable)(fl_Tile tile,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Tile_init_sizes)(fl_Tile tile);+  FL_EXPORT_C(int,          Fl_Tile_children)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_set_clip_children)(fl_Tile tile,int c);+  FL_EXPORT_C(unsigned int, Fl_Tile_clip_children)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_focus)(fl_Tile tile,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Tile__ddfdesign_kludge)(fl_Tile tile);+  FL_EXPORT_C(void,         Fl_Tile_insert_with_before)(fl_Tile tile, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Tile_array)(fl_Tile tile);+  FL_EXPORT_C(fl_Widget,    Fl_Tile_child)(fl_Tile tile, int n);+  FL_EXPORT_C(fl_Group,     Fl_Tile_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Group,     Fl_Tile_New_WithLabel)(int x, int y, int w, int h, const char* t);+  FL_EXPORT_C(void,         Fl_Tile_position)(int x, int y, int w, int h);+#ifdef __cplusplus+}+#endif+#endif /* __FL_TILE_C__ */
+ c-src/Fl_TimerC.cpp view
@@ -0,0 +1,298 @@+#include "Fl_TimerC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int , Fl_Timer_handle )(fl_Timer timer,int event) {+    return (static_cast<Fl_Timer*>(timer))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Timer_parent)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->parent();+  }+  FL_EXPORT_C(void,Fl_Timer_set_parent)(fl_Timer adjuster,fl_Group grp){+    (static_cast<Fl_Timer*>(adjuster))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Timer_type)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->type();+  }+  FL_EXPORT_C(void,Fl_Timer_set_type)(fl_Timer adjuster,uchar t){+    (static_cast<Fl_Timer*>(adjuster))->type(t);+  }+  FL_EXPORT_C(int,Fl_Timer_x)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->x();+  }+  FL_EXPORT_C(int,Fl_Timer_y)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->y();+  }+  FL_EXPORT_C(int,Fl_Timer_w)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->w();+  }+  FL_EXPORT_C(int,Fl_Timer_h)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->h();+  }+  FL_EXPORT_C(void,Fl_Timer_set_align)(fl_Timer adjuster,Fl_Align alignment){+    (static_cast<Fl_Timer*>(adjuster))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Timer_align)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Timer_box)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->box();+  }+  FL_EXPORT_C(void,Fl_Timer_set_box)(fl_Timer adjuster,Fl_Boxtype new_box){+    (static_cast<Fl_Timer*>(adjuster))->box(new_box);+  }+  FL_EXPORT_C(Fl_Color,Fl_Timer_color)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->color();+  }+  FL_EXPORT_C(void,Fl_Timer_set_color)(fl_Timer adjuster,Fl_Color bg){+    (static_cast<Fl_Timer*>(adjuster))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Timer_set_color_with_bg_sel)(fl_Timer adjuster,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Timer*>(adjuster))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Timer_selection_color)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Timer_set_selection_color)(fl_Timer adjuster,Fl_Color a){+    (static_cast<Fl_Timer*>(adjuster))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Timer_label)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->label();+  }+  FL_EXPORT_C(void,Fl_Timer_copy_label)(fl_Timer adjuster,const char* new_label){+    (static_cast<Fl_Timer*>(adjuster))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Timer_set_label)(fl_Timer adjuster,const char* text){+    (static_cast<Fl_Timer*>(adjuster))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Timer_labeltype)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Timer_set_labeltype)(fl_Timer adjuster,Fl_Labeltype a){+    (static_cast<Fl_Timer*>(adjuster))->labeltype(a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Timer_labelcolor)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->labelcolor();+  }+  FL_EXPORT_C(void,Fl_Timer_set_labelcolor)(fl_Timer adjuster,Fl_Color c){+    (static_cast<Fl_Timer*>(adjuster))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Font,Fl_Timer_labelfont)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Timer_set_labelfont)(fl_Timer adjuster,Fl_Font c){+    (static_cast<Fl_Timer*>(adjuster))->labelfont(c);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Timer_labelsize)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Timer_set_labelsize)(fl_Timer adjuster,Fl_Fontsize pix){+    (static_cast<Fl_Timer*>(adjuster))->labelsize(pix);+  }+  FL_EXPORT_C(fl_Image,Fl_Timer_image)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->image();+  }+  FL_EXPORT_C(void,Fl_Timer_set_image)(fl_Timer adjuster,fl_Image pix){+    (static_cast<Fl_Timer*>(adjuster))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Timer_deimage)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->deimage();+  }+  FL_EXPORT_C(void,Fl_Timer_set_deimage)(fl_Timer adjuster,fl_Image pix){+    (static_cast<Fl_Timer*>(adjuster))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Timer_tooltip)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Timer_copy_tooltip)(fl_Timer adjuster,const char* text){+    (static_cast<Fl_Timer*>(adjuster))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Timer_set_tooltip)(fl_Timer adjuster,const char* text){+    (static_cast<Fl_Timer*>(adjuster))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Timer_set_callback_with_user_data)(fl_Timer adjuster,fl_Callback* cb,void* p){+    Fl_Timer* castedTimer = (static_cast<Fl_Timer*>(adjuster));+    new C_to_Fl_Callback(castedTimer, cb, p);+  }+  FL_EXPORT_C(void,Fl_Timer_set_callback)(fl_Timer adjuster,fl_Callback* cb){+    Fl_Timer* castedTimer = (static_cast<Fl_Timer*>(adjuster));+    new C_to_Fl_Callback(castedTimer, cb);+  }+  FL_EXPORT_C(void*,Fl_Timer_user_data)(fl_Timer adjuster){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Timer*>(adjuster))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Timer*>(adjuster))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Timer_set_user_data)(fl_Timer adjuster,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Timer*>(adjuster))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Timer*>(adjuster))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Timer*>(adjuster))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Timer_argument)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->argument();+  }+  FL_EXPORT_C(void,Fl_Timer_set_argument)(fl_Timer adjuster,long v){+    (static_cast<Fl_Timer*>(adjuster))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Timer_when)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->when();+  }+  FL_EXPORT_C(void,Fl_Timer_set_when)(fl_Timer adjuster,uchar i){+    (static_cast<Fl_Timer*>(adjuster))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Timer_visible)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->visible();+  }+  FL_EXPORT_C(int,Fl_Timer_visible_r)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Timer_show)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->show();+  }+  FL_EXPORT_C(void,Fl_Timer_hide)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->hide();+  }+  FL_EXPORT_C(void,Fl_Timer_set_visible)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->visible();+  }+  FL_EXPORT_C(void,Fl_Timer_clear_visible)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Timer_active)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->active();+  }+  FL_EXPORT_C(int,Fl_Timer_active_r)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->active_r();+  }+  FL_EXPORT_C(void,Fl_Timer_activate)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->activate();+  }+  FL_EXPORT_C(void,Fl_Timer_deactivate)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Timer_output)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->output();+  }+  FL_EXPORT_C(void,Fl_Timer_set_output)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->output();+  }+  FL_EXPORT_C(void,Fl_Timer_clear_output)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Timer_takesevents)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Timer_set_changed)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->changed();+  }+  FL_EXPORT_C(void,Fl_Timer_clear_changed)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Timer_take_focus)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Timer_set_visible_focus)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Timer_clear_visible_focus)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Timer_modify_visible_focus)(fl_Timer adjuster,int v){+    (static_cast<Fl_Timer*>(adjuster))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Timer_visible_focus)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_Timer_contains)(fl_Timer adjuster,fl_Widget w){+    return (static_cast<Fl_Timer*>(adjuster))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Timer_inside)(fl_Timer adjuster,fl_Widget w){+    return (static_cast<Fl_Timer*>(adjuster))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Timer_redraw)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->redraw();+  }+  FL_EXPORT_C(void,Fl_Timer_redraw_label)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Timer_damage)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->damage();+  }+  FL_EXPORT_C(void,Fl_Timer_clear_damage_with_bitmask)(fl_Timer adjuster,uchar c){+    (static_cast<Fl_Timer*>(adjuster))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Timer_clear_damage)(fl_Timer adjuster){+    (static_cast<Fl_Timer*>(adjuster))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Timer_damage_with_text)(fl_Timer adjuster,uchar c){+    (static_cast<Fl_Timer*>(adjuster))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Timer_damage_inside_widget)(fl_Timer adjuster,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Timer*>(adjuster))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Timer_draw_label_with_xywh_alignment)(fl_Timer adjuster,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Timer*>(adjuster))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Timer_measure_label)(fl_Timer adjuster,int* ww,int* hh){+    (static_cast<Fl_Timer*>(adjuster))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,Fl_Timer_window)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->window();+  }+  FL_EXPORT_C(fl_Window,Fl_Timer_top_window)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->top_window();+  }+  FL_EXPORT_C(fl_Window,Fl_Timer_top_window_offset)(fl_Timer adjuster,int* xoff,int* yoff){+    return (fl_Window)(static_cast<Fl_Timer*>(adjuster))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Timer_as_gl_window)(fl_Timer adjuster){+    return (static_cast<Fl_Timer*>(adjuster))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Timer_resize)(fl_Timer adjuster,int X,int Y,int W,int H){+    (static_cast<Fl_Timer*>(adjuster))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(fl_Timer,Fl_Timer_New)(int x,int y,int w,int h,const char* label){+    Fl_Timer* adjuster = new Fl_Timer(FL_NORMAL_TIMER,x,y,w,h,label);+    return (fl_Timer) adjuster;+  }+  FL_EXPORT_C(fl_Timer,Fl_Value_Timer_New)(int x,int y,int w,int h,const char* label){+    Fl_Timer* adjuster = new Fl_Timer(FL_VALUE_TIMER,x,y,w,h,label);+    return (fl_Timer) adjuster;+  }+  FL_EXPORT_C(fl_Timer,Fl_Hidden_Timer_New)(int x,int y,int w,int h,const char* label){+    Fl_Timer* adjuster = new Fl_Timer(FL_HIDDEN_TIMER,x,y,w,h,label);+    return (fl_Timer) adjuster;+  }+  FL_EXPORT_C(void,Fl_Timer_Destroy)(fl_Timer timer){+    delete (static_cast<Fl_Timer*>(timer));+  }+  FL_EXPORT_C(char,Fl_Timer_direction)(fl_Timer timer){+    return (static_cast<Fl_Timer*>(timer))->direction();+  }+  FL_EXPORT_C(void,Fl_Timer_set_direction)(fl_Timer timer,char d){+    (static_cast<Fl_Timer*>(timer))->direction(d);+  }+  FL_EXPORT_C(void,Fl_Timer_set_value)(fl_Timer timer, double value) {+    (static_cast<Fl_Timer*>(timer)->value(value));+  }+  FL_EXPORT_C(double, Fl_Timer_value)(fl_Timer timer){+    return (static_cast<Fl_Timer*>(timer)->value());+  }+  FL_EXPORT_C(char,Fl_Timer_suspended)(fl_Timer timer){+    return (static_cast<Fl_Timer*>(timer))->suspended();+  }+  FL_EXPORT_C(void,Fl_Timer_set_suspended)(fl_Timer timer,char s){+    (static_cast<Fl_Timer*>(timer))->suspended(s);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_TimerC.h view
@@ -0,0 +1,117 @@+#ifndef __FL_TIMER_C__+#define __FL_TIMER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Timer.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int ,         Fl_Timer_handle )(fl_Timer timer,int event);+  FL_EXPORT_C(void,         Fl_Timer_resize )(fl_Timer timer,int x, int y, int w, int h);+  FL_EXPORT_C(void,         Fl_Timer_show )(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_hide )(fl_Timer timer);+  FL_EXPORT_C(fl_Window,    Fl_Timer_as_window )(fl_Timer timer);+  FL_EXPORT_C(fl_Gl_Window, Fl_Timer_as_gl_window)(fl_Timer timer);+  FL_EXPORT_C(fl_Group,     Fl_Timer_parent)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_parent)(fl_Timer timer, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Timer_type)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_type)(fl_Timer timer, uchar t);++  FL_EXPORT_C(int,          Fl_Timer_x)(fl_Timer timer);+  FL_EXPORT_C(int,          Fl_Timer_y)(fl_Timer timer);+  FL_EXPORT_C(int,          Fl_Timer_w)(fl_Timer timer);+  FL_EXPORT_C(int,          Fl_Timer_h)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_align)(fl_Timer timer, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Timer_align)(fl_Timer timer);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Timer_box)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_box)(fl_Timer timer, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Timer_color)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_color)(fl_Timer timer, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Timer_set_color_with_bg_sel)(fl_Timer timer,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Timer_selection_color)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_selection_color)(fl_Timer timer, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Timer_label)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_copy_label)(fl_Timer timer, const char* new_label);+  FL_EXPORT_C(void,         Fl_Timer_set_label)(fl_Timer timer, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Timer_labeltype)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_labeltype)(fl_Timer timer, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Timer_labelcolor)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_labelcolor)(fl_Timer timer, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Timer_labelfont)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_labelfont)(fl_Timer timer, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Timer_labelsize)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_labelsize)(fl_Timer timer, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Timer_image)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_image)(fl_Timer timer, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Timer_deimage)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_deimage)(fl_Timer timer, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Timer_tooltip)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_copy_tooltip)(fl_Timer timer, const char* text);+  FL_EXPORT_C(void,         Fl_Timer_set_tooltip)(fl_Timer timer, const char* text);+  FL_EXPORT_C(void,         Fl_Timer_set_callback_with_user_data)(fl_Timer timer, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Timer_set_callback)(fl_Timer timer, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Timer_user_data)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_user_data)(fl_Timer timer, void* v);+  FL_EXPORT_C(long,         Fl_Timer_argument)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_argument)(fl_Timer timer, long v);+  FL_EXPORT_C(Fl_When,      Fl_Timer_when)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_when)(fl_Timer timer, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Timer_visible)(fl_Timer timer);+  FL_EXPORT_C(int,          Fl_Timer_visible_r)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_visible)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_clear_visible)(fl_Timer timer);+  FL_EXPORT_C(unsigned int, Fl_Timer_active)(fl_Timer timer);+  FL_EXPORT_C(int,          Fl_Timer_active_r)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_activate)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_deactivate)(fl_Timer timer);+  FL_EXPORT_C(unsigned int, Fl_Timer_output)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_output)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_clear_output)(fl_Timer timer);+  FL_EXPORT_C(unsigned int, Fl_Timer_takesevents)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_changed)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_clear_changed)(fl_Timer timer);+  FL_EXPORT_C(int,          Fl_Timer_take_focus)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_set_visible_focus)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_clear_visible_focus)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_modify_visible_focus)(fl_Timer timer, int v);+  FL_EXPORT_C(unsigned int, Fl_Timer_visible_focus)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_do_callback)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_do_callback_with_widget_and_user_data)(fl_Timer timer, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Timer_do_callback_with_widget_and_default_user_data)(fl_Timer timer, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Timer_contains)(fl_Timer timer, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Timer_inside)(fl_Timer timer, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Timer_redraw)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_redraw_label)(fl_Timer timer);+  FL_EXPORT_C(uchar,        Fl_Timer_damage)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_clear_damage_with_bitmask)(fl_Timer timer, uchar c);+  FL_EXPORT_C(void,         Fl_Timer_clear_damage)(fl_Timer timer);+  FL_EXPORT_C(void,         Fl_Timer_damage_with_text)(fl_Timer timer, uchar c);+  FL_EXPORT_C(void,         Fl_Timer_damage_inside_widget)(fl_Timer timer, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Timer_draw_label_with_xywh_alignment)(fl_Timer timer, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Timer_measure_label)(fl_Timer timer, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Timer_window)(fl_Timer timer);+  FL_EXPORT_C(fl_Window,    Fl_Timer_top_window)(fl_Timer timer);+  FL_EXPORT_C(fl_Window ,   Fl_Timer_top_window_offset)(fl_Timer timer, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Timer_as_group)(fl_Timer timer);+  FL_EXPORT_C(fl_Gl_Window, Fl_Timer_as_gl_window)(fl_Timer timer);++  FL_EXPORT_C(fl_Timer, Fl_Timer_New)(int x, int y, int w, int h, const char* l);+  FL_EXPORT_C(fl_Timer, Fl_Value_Timer_New)(int x, int y, int w, int h, const char* l);+  FL_EXPORT_C(fl_Timer, Fl_Hidden_Timer_New)(int x, int y, int w, int h, const char* l);++  FL_EXPORT_C(void, Fl_Timer_Destroy)(fl_Timer timer);++  FL_EXPORT_C(char,      Fl_Timer_direction)(fl_Timer timer);+  FL_EXPORT_C(void,      Fl_Timer_set_direction)(fl_Timer timer, char d);+  FL_EXPORT_C(double,    Fl_Timer_value)(fl_Timer timer);+  FL_EXPORT_C(void,      Fl_Timer_set_value)(fl_Timer timer, double value);+  FL_EXPORT_C(char,      Fl_Timer_suspended)(fl_Timer timer);+  FL_EXPORT_C(void,      Fl_Timer_set_suspended)(fl_Timer timer, char s);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_TIMER_C__*/
+ c-src/Fl_Toggle_ButtonC.cpp view
@@ -0,0 +1,311 @@+#include "Fl_Toggle_ButtonC.h"++#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Toggle_Button_handle)(fl_Toggle_Button self, int event){+    return (static_cast<Fl_Toggle_Button*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Toggle_Button_parent)(fl_Toggle_Button b){+    return (fl_Group) (static_cast<Fl_Toggle_Button*>(b))->parent();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_parent)(fl_Toggle_Button b,fl_Group grp){+    (static_cast<Fl_Toggle_Button*>(b))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Toggle_Button_type)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->type();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_type)(fl_Toggle_Button b,uchar t){+    (static_cast<Fl_Toggle_Button*>(b))->type(t);+  }++  FL_EXPORT_C(int,Fl_Toggle_Button_x)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->x();+  }+  FL_EXPORT_C(int,Fl_Toggle_Button_y)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->y();+  }+  FL_EXPORT_C(int,Fl_Toggle_Button_w)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->w();+  }+  FL_EXPORT_C(int,Fl_Toggle_Button_h)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->h();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_align)(fl_Toggle_Button b, Fl_Align alignment){+    (static_cast<Fl_Toggle_Button*>(b))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Toggle_Button_align)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Toggle_Button_box)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->box();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_box)(fl_Toggle_Button b,Fl_Boxtype new_box){+    (static_cast<Fl_Toggle_Button*>(b))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Toggle_Button_color)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->color();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_color)(fl_Toggle_Button b,Fl_Color bg){+    (static_cast<Fl_Toggle_Button*>(b))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_color_with_bg_sel)(fl_Toggle_Button b,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Toggle_Button*>(b))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Toggle_Button_selection_color)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_selection_color)(fl_Toggle_Button b,Fl_Color a){+    (static_cast<Fl_Toggle_Button*>(b))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Toggle_Button_label)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->label();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_copy_label)(fl_Toggle_Button b,const char* new_label){+    (static_cast<Fl_Toggle_Button*>(b))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_label)(fl_Toggle_Button b,const char* text){+    (static_cast<Fl_Toggle_Button*>(b))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Toggle_Button_labeltype)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_labeltype)(fl_Toggle_Button b,Fl_Labeltype a){+    (static_cast<Fl_Toggle_Button*>(b))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_labelcolor)(fl_Toggle_Button b,Fl_Color c){+    (static_cast<Fl_Toggle_Button*>(b))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Toggle_Button_labelcolor)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Toggle_Button_labelfont)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_labelfont)(fl_Toggle_Button b,Fl_Font c){+    (static_cast<Fl_Toggle_Button*>(b))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Toggle_Button_labelsize)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_labelsize)(fl_Toggle_Button b,Fl_Fontsize pix){+    (static_cast<Fl_Toggle_Button*>(b))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Toggle_Button_image)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->image();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_image)(fl_Toggle_Button b,fl_Image pix){+    (static_cast<Fl_Toggle_Button*>(b))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Toggle_Button_deimage)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->deimage();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_deimage)(fl_Toggle_Button b,fl_Image pix){+    (static_cast<Fl_Toggle_Button*>(b))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Toggle_Button_tooltip)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_copy_tooltip)(fl_Toggle_Button b,const char* text){+    (static_cast<Fl_Toggle_Button*>(b))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_tooltip)(fl_Toggle_Button b,const char* text){+    (static_cast<Fl_Toggle_Button*>(b))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_callback_with_user_data)(fl_Toggle_Button b,fl_Callback* cb,void* p){+    Fl_Toggle_Button* castedButton = (static_cast<Fl_Toggle_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_callback)(fl_Toggle_Button b,fl_Callback* cb){+    Fl_Toggle_Button* castedButton = (static_cast<Fl_Toggle_Button*>(b));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Toggle_Button_user_data)(fl_Toggle_Button b){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Toggle_Button*>(b))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Toggle_Button*>(b))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_user_data)(fl_Toggle_Button b,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Toggle_Button*>(b))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Toggle_Button*>(b))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Toggle_Button*>(b))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Toggle_Button_argument)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->argument();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_argument)(fl_Toggle_Button b,long v){+    (static_cast<Fl_Toggle_Button*>(b))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Toggle_Button_when)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->when();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_when)(fl_Toggle_Button b,uchar i){+    (static_cast<Fl_Toggle_Button*>(b))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Toggle_Button_visible)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->visible();+  }+  FL_EXPORT_C(int,Fl_Toggle_Button_visible_r)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_visible)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->visible();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_clear_visible)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Toggle_Button_active)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->active();+  }+  FL_EXPORT_C(int,Fl_Toggle_Button_active_r)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->active_r();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_activate)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->activate();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_deactivate)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Toggle_Button_output)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_output)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->output();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_clear_output)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Toggle_Button_takesevents)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_changed)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->changed();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_clear_changed)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Toggle_Button_take_focus)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_visible_focus)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_clear_visible_focus)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_modify_visible_focus)(fl_Toggle_Button b,int v){+    (static_cast<Fl_Toggle_Button*>(b))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Toggle_Button_visible_focus)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_do_callback)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_do_callback_with_widget_and_user_data)(fl_Toggle_Button b,fl_Widget w,long arg){+    (static_cast<Fl_Toggle_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_do_callback_with_widget_and_default_user_data)(fl_Toggle_Button b,fl_Widget w){+    (static_cast<Fl_Toggle_Button*>(b))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Toggle_Button_contains)(fl_Toggle_Button b,fl_Widget w){+    return (static_cast<Fl_Toggle_Button*>(b))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Toggle_Button_inside)(fl_Toggle_Button b,fl_Widget w){+    return (static_cast<Fl_Toggle_Button*>(b))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_redraw)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->redraw();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_redraw_label)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Toggle_Button_damage)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->damage();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_clear_damage_with_bitmask)(fl_Toggle_Button b,uchar c){+    (static_cast<Fl_Toggle_Button*>(b))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_clear_damage)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_damage_with_text)(fl_Toggle_Button b,uchar c){+    (static_cast<Fl_Toggle_Button*>(b))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_damage_inside_widget)(fl_Toggle_Button b,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Toggle_Button*>(b))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_draw_label_with_xywh_alignment)(fl_Toggle_Button b,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Toggle_Button*>(b))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_measure_label)(fl_Toggle_Button b,int* ww,int* hh){+    (static_cast<Fl_Toggle_Button*>(b))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Toggle_Button_window)(fl_Toggle_Button toggle_button){+    return (fl_Window)(static_cast<Fl_Toggle_Button*>(toggle_button))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Toggle_Button_top_window)(fl_Toggle_Button toggle_button){+    return (fl_Window) (static_cast<Fl_Toggle_Button*>(toggle_button))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Toggle_Button_top_window_offset)(fl_Toggle_Button toggle_button, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Toggle_Button*>(toggle_button))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Toggle_Button_as_group)(fl_Toggle_Button toggle_button){+    return (fl_Group) (static_cast<Fl_Toggle_Button*>(toggle_button))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Toggle_Button_as_gl_window)(fl_Toggle_Button toggle_button){+    return (fl_Gl_Window) (static_cast<Fl_Toggle_Button*>(toggle_button))->as_gl_window();+  }+  FL_EXPORT_C(fl_Toggle_Button, Fl_Toggle_Button_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Toggle_Button* button = new Fl_Toggle_Button(x,y,w,h,label);+    return (static_cast<fl_Toggle_Button>(button));+  }+  FL_EXPORT_C(fl_Toggle_Button, Fl_Toggle_Button_New)(int x, int y, int w, int h) {+    Fl_Toggle_Button* button = new Fl_Toggle_Button(x,y,w,h,0);+    return (fl_Toggle_Button)button;+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_Destroy)(fl_Toggle_Button button){+    delete (static_cast<Fl_Toggle_Button*>(button));+  }+  FL_EXPORT_C(int,Fl_Toggle_Button_set_value)(fl_Toggle_Button b,int v){+    return (static_cast<Fl_Toggle_Button*>(b))->value(v);+  }+  FL_EXPORT_C(char,Fl_Toggle_Button_value)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->value();+  }+  FL_EXPORT_C(int,Fl_Toggle_Button_clear)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->clear();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_setonly)(fl_Toggle_Button b){+    (static_cast<Fl_Toggle_Button*>(b))->setonly();+  }+  FL_EXPORT_C(int,Fl_Toggle_Button_get_shortcut)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_shortcut)(fl_Toggle_Button b,int s){+    (static_cast<Fl_Toggle_Button*>(b))->shortcut(s);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Toggle_Button_down_box)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->down_box();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_down_box)(fl_Toggle_Button b,Fl_Boxtype boxtype){+    (static_cast<Fl_Toggle_Button*>(b))->down_box(boxtype);+  }+  FL_EXPORT_C(Fl_Color,Fl_Toggle_Button_down_color)(fl_Toggle_Button b){+    return (static_cast<Fl_Toggle_Button*>(b))->down_color();+  }+  FL_EXPORT_C(void,Fl_Toggle_Button_set_down_color)(fl_Toggle_Button b,Fl_Color c){+    (static_cast<Fl_Toggle_Button*>(b))->down_color(c);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Toggle_ButtonC.h view
@@ -0,0 +1,114 @@+#ifndef __FL_TOGGLE_BUTTON_C__+#define __FL_TOGGLE_BUTTON_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Toggle_Button.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Toggle_Button_handle)(fl_Toggle_Button self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Toggle_Button_parent)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_parent)(fl_Toggle_Button win, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Toggle_Button_type)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_type)(fl_Toggle_Button win, uchar t);++  FL_EXPORT_C(int,          Fl_Toggle_Button_x)(fl_Toggle_Button win);+  FL_EXPORT_C(int,          Fl_Toggle_Button_y)(fl_Toggle_Button win);+  FL_EXPORT_C(int,          Fl_Toggle_Button_w)(fl_Toggle_Button win);+  FL_EXPORT_C(int,          Fl_Toggle_Button_h)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_align)(fl_Toggle_Button toggle_button, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Toggle_Button_align)(fl_Toggle_Button win);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Toggle_Button_box)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_box)(fl_Toggle_Button win, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Toggle_Button_color)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_color)(fl_Toggle_Button win, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_color_with_bg_sel)(fl_Toggle_Button win,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Toggle_Button_selection_color)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_selection_color)(fl_Toggle_Button win, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Toggle_Button_label)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_copy_label)(fl_Toggle_Button win, const char* new_label);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_label)(fl_Toggle_Button win, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Toggle_Button_labeltype)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_labeltype)(fl_Toggle_Button win, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Toggle_Button_labelcolor)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_labelcolor)(fl_Toggle_Button win, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Toggle_Button_labelfont)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_labelfont)(fl_Toggle_Button win, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Toggle_Button_labelsize)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_labelsize)(fl_Toggle_Button win, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Toggle_Button_image)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_image)(fl_Toggle_Button win, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Toggle_Button_deimage)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_deimage)(fl_Toggle_Button win, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Toggle_Button_tooltip)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_copy_tooltip)(fl_Toggle_Button win, const char* text);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_tooltip)(fl_Toggle_Button win, const char* text);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_callback_with_user_data)(fl_Toggle_Button win, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_callback)(fl_Toggle_Button win, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Toggle_Button_user_data)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_user_data)(fl_Toggle_Button win, void* v);+  FL_EXPORT_C(long,         Fl_Toggle_Button_argument)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_argument)(fl_Toggle_Button win, long v);+  FL_EXPORT_C(Fl_When,      Fl_Toggle_Button_when)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_when)(fl_Toggle_Button win, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Toggle_Button_visible)(fl_Toggle_Button win);+  FL_EXPORT_C(int,          Fl_Toggle_Button_visible_r)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_visible)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_clear_visible)(fl_Toggle_Button win);+  FL_EXPORT_C(unsigned int, Fl_Toggle_Button_active)(fl_Toggle_Button win);+  FL_EXPORT_C(int,          Fl_Toggle_Button_active_r)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_activate)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_deactivate)(fl_Toggle_Button win);+  FL_EXPORT_C(unsigned int, Fl_Toggle_Button_output)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_output)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_clear_output)(fl_Toggle_Button win);+  FL_EXPORT_C(unsigned int, Fl_Toggle_Button_takesevents)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_changed)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_clear_changed)(fl_Toggle_Button win);+  FL_EXPORT_C(int,          Fl_Toggle_Button_take_focus)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_set_visible_focus)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_clear_visible_focus)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_modify_visible_focus)(fl_Toggle_Button win, int v);+  FL_EXPORT_C(unsigned int, Fl_Toggle_Button_visible_focus)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_do_callback)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_do_callback_with_widget_and_user_data)(fl_Toggle_Button win, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Toggle_Button_do_callback_with_widget_and_default_user_data)(fl_Toggle_Button win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Toggle_Button_contains)(fl_Toggle_Button win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Toggle_Button_inside)(fl_Toggle_Button win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Toggle_Button_redraw)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_redraw_label)(fl_Toggle_Button win);+  FL_EXPORT_C(uchar,        Fl_Toggle_Button_damage)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_clear_damage_with_bitmask)(fl_Toggle_Button win, uchar c);+  FL_EXPORT_C(void,         Fl_Toggle_Button_clear_damage)(fl_Toggle_Button win);+  FL_EXPORT_C(void,         Fl_Toggle_Button_damage_with_text)(fl_Toggle_Button win, uchar c);+  FL_EXPORT_C(void,         Fl_Toggle_Button_damage_inside_widget)(fl_Toggle_Button win, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Toggle_Button_draw_label_with_xywh_alignment)(fl_Toggle_Button win, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Toggle_Button_measure_label)(fl_Toggle_Button win, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Toggle_Button_window)(fl_Toggle_Button toggle_button);+  FL_EXPORT_C(fl_Window,    Fl_Toggle_Button_top_window)(fl_Toggle_Button toggle_button);+  FL_EXPORT_C(fl_Window ,   Fl_Toggle_Button_top_window_offset)(fl_Toggle_Button toggle_button, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Toggle_Button_as_group)(fl_Toggle_Button toggle_button);+  FL_EXPORT_C(fl_Gl_Window, Fl_Toggle_Button_as_gl_window)(fl_Toggle_Button toggle_button);+  /* Fl_Toggle_Button specific functions */+  FL_EXPORT_C(fl_Toggle_Button, Fl_Toggle_Button_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Toggle_Button, Fl_Toggle_Button_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,             Fl_Toggle_Button_Destroy)(fl_Toggle_Button button);+  +  FL_EXPORT_C(char        , Fl_Toggle_Button_value)(fl_Toggle_Button b);+  FL_EXPORT_C(int         , Fl_Toggle_Button_set_value)(fl_Toggle_Button b, int v);+  FL_EXPORT_C(int         , Fl_Toggle_Button_clear)(fl_Toggle_Button b);+  FL_EXPORT_C(void        , Fl_Toggle_Button_setonly)(fl_Toggle_Button b);+  FL_EXPORT_C(int         , Fl_Toggle_Button_get_shortcut )(fl_Toggle_Button b);+  FL_EXPORT_C(void        , Fl_Toggle_Button_set_shortcut )(fl_Toggle_Button b, int s);+  FL_EXPORT_C(Fl_Boxtype  , Fl_Toggle_Button_down_box)(fl_Toggle_Button b);+  FL_EXPORT_C(void        , Fl_Toggle_Button_set_down_box)(fl_Toggle_Button b,Fl_Boxtype boxtype);+  FL_EXPORT_C(Fl_Color    , Fl_Toggle_Button_down_color )(fl_Toggle_Button b);+  FL_EXPORT_C(void        , Fl_Toggle_Button_set_down_color)(fl_Toggle_Button b, Fl_Color c);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_TOGGLE_BUTTON_C__*/
+ c-src/Fl_TooltipC.cpp view
@@ -0,0 +1,96 @@+#include "Fl_TooltipC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(float,Fl_Tooltip_delay)( ){+    return Fl_Tooltip::delay();+  }+  FL_EXPORT_C(void,Fl_Tooltip_set_delay)(float f){+    Fl_Tooltip::delay(f);+  }+  FL_EXPORT_C(float,Fl_Tooltip_hoverdelay)( ){+    return Fl_Tooltip::hoverdelay();+  }+  FL_EXPORT_C(void,Fl_Tooltip_set_hoverdelay)(float f){+    Fl_Tooltip::hoverdelay(f);+  }+  FL_EXPORT_C(void,Fl_Tooltip_enable)( ){+    Fl_Tooltip::enable();+  }+  FL_EXPORT_C(void,Fl_Tooltip_enable_with_b)(int b){+    Fl_Tooltip::enable(b);+  }+  FL_EXPORT_C(void,Fl_Tooltip_disable)( ){+    Fl_Tooltip::disable();+  }+  FL_EXPORT_C(void,Fl_Tooltip_enter_area)(fl_Widget w,int X,int Y,int W,int H,const char* tip){+    Fl_Tooltip::enter_area((static_cast<Fl_Widget*>(w)),X,Y,W,H,tip);+  }+  FL_EXPORT_C(fl_Widget,Fl_Tooltip_current)( ){+    return (fl_Widget)Fl_Tooltip::current();+  }+  FL_EXPORT_C(void,Fl_Tooltip_set_current)(fl_Widget w){+    Fl_Tooltip::current((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(Fl_Font,Fl_Tooltip_font)( ){+    return Fl_Tooltip::font();+  }+  FL_EXPORT_C(void,Fl_Tooltip_set_font)(Fl_Font i){+    Fl_Tooltip::font(i);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Tooltip_size)( ){+    return Fl_Tooltip::size();+  }+  FL_EXPORT_C(void,Fl_Tooltip_set_size)(Fl_Fontsize s){+    Fl_Tooltip::size(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tooltip_color)( ){+    return Fl_Tooltip::color();+  }+  FL_EXPORT_C(void,Fl_Tooltip_set_color)(Fl_Color c){+    Fl_Tooltip::color(c);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tooltip_textcolor)( ){+    return Fl_Tooltip::textcolor();+  }+  FL_EXPORT_C(void,Fl_Tooltip_set_textcolor)(Fl_Color c){+    Fl_Tooltip::textcolor(c);+  }+#if FLTK_ABI_VERSION >= 10301+  FL_EXPORT_C(int,Fl_Tooltip_margin_width)( ){+    return Fl_Tooltip::margin_width();+  }+  FL_EXPORT_C(void,Fl_Tooltip_set_margin_width)(int v){+    Fl_Tooltip::margin_width(v);+  }+  FL_EXPORT_C(int,Fl_Tooltip_margin_height)( ){+    return Fl_Tooltip::margin_height();+  }+  FL_EXPORT_C(void,Fl_Tooltip_set_margin_height)(int v){+    Fl_Tooltip::margin_height(v);+  }+  FL_EXPORT_C(int,Fl_Tooltip_wrap_width)( ){+    return Fl_Tooltip::wrap_width();+  }+  FL_EXPORT_C(void,Fl_Tooltip_set_wrap_width)(int v){+    Fl_Tooltip::wrap_width(v);+  }+#else+  FL_EXPORT_C(int,Fl_Tooltip_margin_width)( ){+    return Fl_Tooltip::margin_width();+  }+  FL_EXPORT_C(int,Fl_Tooltip_margin_height)( ){+    return Fl_Tooltip::margin_height();+  }+  FL_EXPORT_C(int,Fl_Tooltip_wrap_width)( ){+    return Fl_Tooltip::wrap_width();+  }+#endif+#ifdef __APPLE__+  FL_EXPORT_C(fl_Window,Fl_Tooltip_current_window)(void ){+    return (fl_Window)Fl_Tooltip::current_window();+  }+#endif  +#ifdef __cplusplus+}+#endif
+ c-src/Fl_TooltipC.h view
@@ -0,0 +1,51 @@+#ifndef __FL_TOOLTIP_C__+#define __FL_TOOLTIP_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Tooltip.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(float, Fl_Tooltip_delay)();+  FL_EXPORT_C(void, Fl_Tooltip_set_delay)(float f);+  FL_EXPORT_C(float, Fl_Tooltip_hoverdelay)();+  FL_EXPORT_C(void, Fl_Tooltip_set_hoverdelay)(float f);+  FL_EXPORT_C(int, Fl_Tooltip_enabled)();+  FL_EXPORT_C(void, Fl_Tooltip_enable)();+  FL_EXPORT_C(void, Fl_Tooltip_enable_with_b)(int b);+  FL_EXPORT_C(void, Fl_Tooltip_disable)();+  typedef void (*fl_enter)(fl_Widget w);+  FL_EXPORT_C(void, Fl_Tooltip_enter_area)(fl_Widget w, int X, int Y, int W, int H, const char* tip);+  typedef void (*fl_exit)(fl_Widget w);+  FL_EXPORT_C(fl_Widget, Fl_Tooltip_current)();+  FL_EXPORT_C(void, Fl_Tooltip_set_current)(fl_Widget w);+  FL_EXPORT_C(Fl_Font, Fl_Tooltip_font)();+  FL_EXPORT_C(void, Fl_Tooltip_set_font)(Fl_Font i);+  FL_EXPORT_C(Fl_Fontsize, Fl_Tooltip_size)();+  FL_EXPORT_C(void, Fl_Tooltip_set_size)(Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color, Fl_Tooltip_color)();+  FL_EXPORT_C(void, Fl_Tooltip_set_color)(Fl_Color c);+  FL_EXPORT_C(Fl_Color, Fl_Tooltip_textcolor)();+  FL_EXPORT_C(void, Fl_Tooltip_set_textcolor)(Fl_Color c);+#if FLTK_ABI_VERSION >= 10301+  FL_EXPORT_C(int, Fl_Tooltip_margin_width)();+  FL_EXPORT_C(void, Fl_Tooltip_set_margin_width)(int v);+  FL_EXPORT_C(int, Fl_Tooltip_margin_height)();+  FL_EXPORT_C(void, Fl_Tooltip_set_margin_height)(int v);+  FL_EXPORT_C(int, Fl_Tooltip_wrap_width)();+  FL_EXPORT_C(void, Fl_Tooltip_set_wrap_width)(int v);+#else+  FL_EXPORT_C(int, Fl_Tooltip_margin_width)();+  FL_EXPORT_C(int, Fl_Tooltip_margin_height)();+  FL_EXPORT_C(int, Fl_Tooltip_wrap_width)();+#endif+#ifdef __APPLE__+  FL_EXPORT_C(fl_Window, Fl_Tooltip_current_window)(void);+#endif+#ifdef __cplusplus+}+#endif+#endif /* __FL_TOOLTIP_C__ */
+ c-src/Fl_TreeC.cpp view
@@ -0,0 +1,712 @@+#include "Fl_TreeC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Tree_handle)(fl_Tree self, int event){+    return (static_cast<Fl_Tree*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Tree_parent)(fl_Tree tree){+    return (fl_Group) (static_cast<Fl_Tree*>(tree))->parent();+  }+  FL_EXPORT_C(void,Fl_Tree_set_parent)(fl_Tree tree,fl_Group grp){+    (static_cast<Fl_Tree*>(tree))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Tree_type)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->type();+  }+  FL_EXPORT_C(void,Fl_Tree_set_type)(fl_Tree tree,uchar t){+    (static_cast<Fl_Tree*>(tree))->type(t);+  }++  FL_EXPORT_C(int,Fl_Tree_x)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->x();+  }+  FL_EXPORT_C(int,Fl_Tree_y)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->y();+  }+  FL_EXPORT_C(int,Fl_Tree_w)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->w();+  }+  FL_EXPORT_C(int,Fl_Tree_h)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->h();+  }+  FL_EXPORT_C(void,Fl_Tree_set_align)(fl_Tree tree, Fl_Align alignment){+    (static_cast<Fl_Tree*>(tree))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Tree_align)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Tree_box)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->box();+  }+  FL_EXPORT_C(void,Fl_Tree_set_box)(fl_Tree tree,Fl_Boxtype new_box){+    (static_cast<Fl_Tree*>(tree))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Tree_color)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->color();+  }+  FL_EXPORT_C(void,Fl_Tree_set_color)(fl_Tree tree,Fl_Color bg){+    (static_cast<Fl_Tree*>(tree))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Tree_set_color_with_bg_sel)(fl_Tree tree,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Tree*>(tree))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tree_selection_color)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Tree_set_selection_color)(fl_Tree tree,Fl_Color a){+    (static_cast<Fl_Tree*>(tree))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Tree_label)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->label();+  }+  FL_EXPORT_C(void,Fl_Tree_copy_label)(fl_Tree tree,const char* new_label){+    (static_cast<Fl_Tree*>(tree))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Tree_set_label)(fl_Tree tree,const char* text){+    (static_cast<Fl_Tree*>(tree))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Tree_labeltype)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Tree_set_labeltype)(fl_Tree tree,Fl_Labeltype a){+    (static_cast<Fl_Tree*>(tree))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Tree_set_labelcolor)(fl_Tree tree,Fl_Color c){+    (static_cast<Fl_Tree*>(tree))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Tree_labelcolor)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->labelcolor();+  }+  FL_EXPORT_C(fl_Image,Fl_Tree_image)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->image();+  }+  FL_EXPORT_C(void,Fl_Tree_set_image)(fl_Tree tree,fl_Image pix){+    (static_cast<Fl_Tree*>(tree))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Tree_deimage)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->deimage();+  }+  FL_EXPORT_C(void,Fl_Tree_set_deimage)(fl_Tree tree,fl_Image pix){+    (static_cast<Fl_Tree*>(tree))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Tree_tooltip)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Tree_copy_tooltip)(fl_Tree tree,const char* text){+    (static_cast<Fl_Tree*>(tree))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Tree_set_tooltip)(fl_Tree tree,const char* text){+    (static_cast<Fl_Tree*>(tree))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Tree_set_callback_with_user_data)(fl_Tree tree,fl_Callback* cb,void* p){+    Fl_Tree* castedButton = (static_cast<Fl_Tree*>(tree));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Tree_set_callback)(fl_Tree tree,fl_Callback* cb){+    Fl_Tree* castedButton = (static_cast<Fl_Tree*>(tree));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Tree_user_data)(fl_Tree tree){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Tree*>(tree))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Tree*>(tree))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Tree_set_user_data)(fl_Tree tree,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Tree*>(tree))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Tree*>(tree))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Tree*>(tree))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Tree_argument)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->argument();+  }+  FL_EXPORT_C(void,Fl_Tree_set_argument)(fl_Tree tree,long v){+    (static_cast<Fl_Tree*>(tree))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Tree_when)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->when();+  }+  FL_EXPORT_C(void,Fl_Tree_set_when)(fl_Tree tree,uchar i){+    (static_cast<Fl_Tree*>(tree))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Tree_visible)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->visible();+  }+  FL_EXPORT_C(int,Fl_Tree_visible_r)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Tree_set_visible)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->visible();+  }+  FL_EXPORT_C(void,Fl_Tree_clear_visible)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Tree_active)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->active();+  }+  FL_EXPORT_C(int,Fl_Tree_active_r)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->active_r();+  }+  FL_EXPORT_C(void,Fl_Tree_activate)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->activate();+  }+  FL_EXPORT_C(void,Fl_Tree_deactivate)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Tree_output)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->output();+  }+  FL_EXPORT_C(void,Fl_Tree_set_output)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->output();+  }+  FL_EXPORT_C(void,Fl_Tree_clear_output)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Tree_takesevents)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Tree_set_changed)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->changed();+  }+  FL_EXPORT_C(void,Fl_Tree_clear_changed)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Tree_take_focus)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Tree_set_visible_focus)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Tree_clear_visible_focus)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Tree_modify_visible_focus)(fl_Tree tree,int v){+    (static_cast<Fl_Tree*>(tree))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Tree_visible_focus)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Tree_do_callback)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Tree_do_callback_with_widget_and_user_data)(fl_Tree tree,fl_Widget w,long arg){+    (static_cast<Fl_Tree*>(tree))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Tree_do_callback_with_widget_and_default_user_data)(fl_Tree tree,fl_Widget w){+    (static_cast<Fl_Tree*>(tree))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Tree_contains)(fl_Tree tree,fl_Widget w){+    return (static_cast<Fl_Tree*>(tree))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Tree_inside)(fl_Tree tree,fl_Widget w){+    return (static_cast<Fl_Tree*>(tree))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Tree_redraw)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->redraw();+  }+  FL_EXPORT_C(void,Fl_Tree_redraw_label)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Tree_damage)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->damage();+  }+  FL_EXPORT_C(void,Fl_Tree_clear_damage_with_bitmask)(fl_Tree tree,uchar c){+    (static_cast<Fl_Tree*>(tree))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Tree_clear_damage)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Tree_damage_with_text)(fl_Tree tree,uchar c){+    (static_cast<Fl_Tree*>(tree))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Tree_damage_inside_widget)(fl_Tree tree,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Tree*>(tree))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Tree_draw_label_with_xywh_alignment)(fl_Tree tree,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Tree*>(tree))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Tree_measure_label)(fl_Tree tree,int* ww,int* hh){+    (static_cast<Fl_Tree*>(tree))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Tree_window)(fl_Tree tree){+    return (fl_Window) (static_cast<Fl_Tree*>(tree))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Tree_top_window)(fl_Tree tree){+    return (fl_Window) (static_cast<Fl_Tree*>(tree))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Tree_top_window_offset)(fl_Tree tree, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Tree*>(tree))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Tree_as_group)(fl_Tree tree){+    return (fl_Group) (static_cast<Fl_Tree*>(tree))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Tree_as_gl_window)(fl_Tree tree){+    return (fl_Gl_Window) (static_cast<Fl_Tree*>(tree))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Tree_draw)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->draw();+  }++  FL_EXPORT_C(void,Fl_Tree_begin)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->begin();+  }+  FL_EXPORT_C(void,Fl_Tree_end)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->end();+  }+  FL_EXPORT_C(int,Fl_Tree_find)(fl_Tree tree,fl_Widget w){+    return (static_cast<Fl_Tree*>(tree))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Tree_set_resizable_by_reference)(fl_Tree tree,fl_Widget o){+    (static_cast<Fl_Tree*>(tree))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Tree_set_resizable)(fl_Tree tree,fl_Widget o){+    (static_cast<Fl_Tree*>(tree))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Tree_resizable)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->resizable();+  }+  FL_EXPORT_C(void,Fl_Tree_add_resizable)(fl_Tree tree,fl_Widget o){+    return (static_cast<Fl_Tree*>(tree))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Tree_init_sizes)(fl_Tree tree){+    (static_cast<Fl_Tree*>(tree))->init_sizes();+  }+  FL_EXPORT_C(void,Fl_Tree_set_clip_children)(fl_Tree tree,int c){+    return (static_cast<Fl_Tree*>(tree))->clip_children(c);+  }+  FL_EXPORT_C(int,Fl_Tree_children)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->children();+  }+  FL_EXPORT_C(unsigned int,Fl_Tree_clip_children)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Tree_focus)(fl_Tree tree, fl_Widget W){+    return (static_cast<Fl_Tree*>(tree))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Tree__ddfdesign_kludge)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(fl_Widget*, Fl_Tree_array)(fl_Tree self){+    return (fl_Widget*)(static_cast<Fl_Tree*>(self))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Tree_child)(fl_Tree self, int n){+    return (fl_Widget)(static_cast<Fl_Tree*>(self))->child(n);+  }+  // FL_EXPORT_C(void     , Fl_Tree_forms_end)(fl_Tree self){+  //   (static_cast<Fl_Tree*>(self))->forms_end();+  // }++  FL_EXPORT_C(fl_Tree, Fl_Tree_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Tree* tree = new Fl_Tree(x,y,w,h,label);+    return (static_cast<Fl_Tree*>(tree));+  }+  FL_EXPORT_C(fl_Tree, Fl_Tree_New)(int x, int y, int w, int h) {+    Fl_Tree* tree = new Fl_Tree(x,y,w,h,0);+    return (fl_Tree)tree;+  }+  FL_EXPORT_C(void,Fl_Tree_Destroy)(fl_Tree tree){+    delete (static_cast<Fl_Tree*>(tree));+  }+  FL_EXPORT_C(void,Fl_Tree_show_self)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->show_self();+  }+  FL_EXPORT_C(void,Fl_Tree_root_label)(fl_Tree tree,const char *new_label){+    return (static_cast<Fl_Tree*>(tree))->root_label(new_label);+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_root)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->root();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_add)(fl_Tree tree,const char *path){+    return (fl_Tree_Item)(static_cast<Fl_Tree*>(tree))->add(path);+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_add_with_item_name)(fl_Tree tree,fl_Tree_Item item, const char *name){+    return (fl_Tree_Item)(static_cast<Fl_Tree*>(tree))->add((static_cast<Fl_Tree_Item*>(item)),name);+  };+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_insert_above)(fl_Tree tree,fl_Tree_Item above,const char *name){+    return (static_cast<Fl_Tree*>(tree))->insert_above((static_cast<Fl_Tree_Item*>(above)),name);+  }+  FL_EXPORT_C(int,Fl_Tree_remove)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->remove((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(void,Fl_Tree_clear)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->clear();+  }+  FL_EXPORT_C(void,Fl_Tree_clear_children)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->clear_children((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_find_item)(fl_Tree tree,const char *path){+    return (static_cast<Fl_Tree*>(tree))->find_item(path);+  }+  FL_EXPORT_C(int,Fl_Tree_item_pathname)(fl_Tree tree,char *pathname,int pathnamelen,const fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->item_pathname(pathname,pathnamelen,(static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_item_clicked)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->item_clicked();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_first)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->first();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_first_visible)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->first_visible();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_next)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->next();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_next_with_item)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->next((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_prev)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->prev();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_prev_with_item)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->prev((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_last)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->last();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_last_visible)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->last_visible();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_first_selected_item)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->first_selected_item();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_next_selected_item)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->next_selected_item();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_next_selected_item_with_item)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->next_selected_item((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(int,Fl_Tree_open_with_item)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->open((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(int,Fl_Tree_open_with_item_docallback)(fl_Tree tree,fl_Tree_Item item,int docallback){+    return (static_cast<Fl_Tree*>(tree))->open((static_cast<Fl_Tree_Item*>(item)),docallback);+  }+  FL_EXPORT_C(int,Fl_Tree_open_with_path)(fl_Tree tree,const char *path){+    return (static_cast<Fl_Tree*>(tree))->open(path);+  }+  FL_EXPORT_C(int,Fl_Tree_open_with_path_docallback)(fl_Tree tree,const char* path,int docallback){+    return (static_cast<Fl_Tree*>(tree))->open(path,docallback);+  }+  FL_EXPORT_C(void,Fl_Tree_open_toggle)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->open_toggle((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(void,Fl_Tree_open_toggle_with_docallback)(fl_Tree tree,fl_Tree_Item item,int docallback){+    return (static_cast<Fl_Tree*>(tree))->open_toggle((static_cast<Fl_Tree_Item*>(item)),docallback);+  }+  FL_EXPORT_C(int,Fl_Tree_close_with_item)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->close((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(int,Fl_Tree_close_with_item_docallback)(fl_Tree tree,fl_Tree_Item item,int docallback){+    return (static_cast<Fl_Tree*>(tree))->close((static_cast<Fl_Tree_Item*>(item)),docallback);+  }+  FL_EXPORT_C(int,Fl_Tree_close_with_path)(fl_Tree tree,const char *path){+    return (static_cast<Fl_Tree*>(tree))->close(path);+  }+  FL_EXPORT_C(int,Fl_Tree_close_with_path_docallback)(fl_Tree tree,const char* path,int docallback){+    return (static_cast<Fl_Tree*>(tree))->close(path,docallback);+  }+  FL_EXPORT_C(int,Fl_Tree_is_open_with_item)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->is_open((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(int,Fl_Tree_is_open_with_path)(fl_Tree tree,const char *path){+    return (static_cast<Fl_Tree*>(tree))->is_open(path);+  }+  FL_EXPORT_C(int,Fl_Tree_is_close_with_item)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->is_close((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(int,Fl_Tree_is_close_with_path)(fl_Tree tree,const char *path){+    return (static_cast<Fl_Tree*>(tree))->is_close(path);+  }+  FL_EXPORT_C(int,Fl_Tree_select_with_item)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->select((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(int,Fl_Tree_select_with_item_docallback)(fl_Tree tree,fl_Tree_Item item,int docallback){+    return (static_cast<Fl_Tree*>(tree))->select((static_cast<Fl_Tree_Item*>(item)),docallback);+  }+  FL_EXPORT_C(int,Fl_Tree_select_with_path)(fl_Tree tree,const char *path){+    return (static_cast<Fl_Tree*>(tree))->select(path);+  }+  FL_EXPORT_C(int,Fl_Tree_select_with_path_docallback)(fl_Tree tree,const char* path,int docallback){+    return (static_cast<Fl_Tree*>(tree))->select(path,docallback);+  }+  FL_EXPORT_C(void,Fl_Tree_select_toggle)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->select_toggle((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(void,Fl_Tree_select_toggle_with_docallback)(fl_Tree tree,fl_Tree_Item item,int docallback){+    return (static_cast<Fl_Tree*>(tree))->select_toggle((static_cast<Fl_Tree_Item*>(item)),docallback);+  }+  FL_EXPORT_C(int,Fl_Tree_deselect_with_item)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->deselect((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(int,Fl_Tree_deselect_with_item_docallback)(fl_Tree tree,fl_Tree_Item item,int docallback){+    return (static_cast<Fl_Tree*>(tree))->deselect((static_cast<Fl_Tree_Item*>(item)),docallback);+  }+  FL_EXPORT_C(int,Fl_Tree_deselect_with_path)(fl_Tree tree,const char *path){+    return (static_cast<Fl_Tree*>(tree))->deselect(path);+  }+  FL_EXPORT_C(int,Fl_Tree_deselect_with_path_docallback)(fl_Tree tree,const char* path,int docallback){+    return (static_cast<Fl_Tree*>(tree))->deselect(path,docallback);+  }+  FL_EXPORT_C(int,Fl_Tree_deselect_all_with_item)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->deselect_all((static_cast<Fl_Tree_Item*>(item)),1);+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_insert)(fl_Tree tree,fl_Tree_Item item, const char *name, int pos){+    return (static_cast<Fl_Tree*>(tree))->insert((static_cast<Fl_Tree_Item*>(item)), name, pos);+  }+  FL_EXPORT_C(int,Fl_Tree_deselect_all_with_docallback)(fl_Tree tree,int docallback){+    return (static_cast<Fl_Tree*>(tree))->deselect_all(0,docallback);+  }+  FL_EXPORT_C(int,Fl_Tree_deselect_all_with_item_docallback)(fl_Tree tree,fl_Tree_Item item,int docallback){+    return (static_cast<Fl_Tree*>(tree))->deselect_all((static_cast<Fl_Tree_Item*>(item)),docallback);+  }+  FL_EXPORT_C(void,Fl_Tree_select_only)(fl_Tree tree,fl_Tree_Item item){+     (static_cast<Fl_Tree*>(tree))->select_only((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(void,Fl_Tree_select_only_with_docallback)(fl_Tree tree,fl_Tree_Item item,int docallback){+     (static_cast<Fl_Tree*>(tree))->select_only((static_cast<Fl_Tree_Item*>(item)),docallback);+  }+  FL_EXPORT_C(void,Fl_Tree_select_all)(fl_Tree tree,fl_Tree_Item item){+     (static_cast<Fl_Tree*>(tree))->select_all((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(void,Fl_Tree_select_all_with_docallback)(fl_Tree tree,fl_Tree_Item item,int docallback){+     (static_cast<Fl_Tree*>(tree))->select_all((static_cast<Fl_Tree_Item*>(item)),docallback);+  }+  FL_EXPORT_C(void,Fl_Tree_set_item_focus)(fl_Tree tree,fl_Tree_Item item){+     (static_cast<Fl_Tree*>(tree))->set_item_focus((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_get_item_focus)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->get_item_focus();+  }+  FL_EXPORT_C(int,Fl_Tree_is_selected_with_item)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->is_selected((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(int,Fl_Tree_is_selected_with_path)(fl_Tree tree,const char *path){+    return (static_cast<Fl_Tree*>(tree))->is_selected(path);+  }+  FL_EXPORT_C(Fl_Font,Fl_Tree_item_labelfont)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Tree_set_item_labelfont)(fl_Tree tree,Fl_Font val){+    return (static_cast<Fl_Tree*>(tree))->item_labelfont(val);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Tree_item_labelsize)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Tree_set_item_labelsize)(fl_Tree tree,Fl_Fontsize val){+    return (static_cast<Fl_Tree*>(tree))->item_labelsize(val);+  }++  FL_EXPORT_C(Fl_Color,Fl_Tree_item_labelfgcolor)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->item_labelfgcolor();+  }+  FL_EXPORT_C(void,Fl_Tree_set_item_labelfgcolor)(fl_Tree tree,Fl_Color val){+    return (static_cast<Fl_Tree*>(tree))->item_labelfgcolor(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tree_item_labelbgcolor)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->item_labelbgcolor();+  }+  FL_EXPORT_C(void,Fl_Tree_set_item_labelbgcolor)(fl_Tree tree,Fl_Color val){+    return (static_cast<Fl_Tree*>(tree))->item_labelbgcolor(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tree_connectorcolor)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->connectorcolor();+  }+  FL_EXPORT_C(void,Fl_Tree_set_connectorcolor)(fl_Tree tree,Fl_Color val){+    return (static_cast<Fl_Tree*>(tree))->connectorcolor(val);+  }+  FL_EXPORT_C(int,Fl_Tree_marginleft)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->marginleft();+  }+  FL_EXPORT_C(void,Fl_Tree_set_marginleft)(fl_Tree tree,int val){+    return (static_cast<Fl_Tree*>(tree))->marginleft(val);+  }+  FL_EXPORT_C(int,Fl_Tree_margintop)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->margintop();+  }+  FL_EXPORT_C(void,Fl_Tree_set_margintop)(fl_Tree tree,int val){+    return (static_cast<Fl_Tree*>(tree))->margintop(val);+  }+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(int,Fl_Tree_marginbottom)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->marginbottom();+  }+  FL_EXPORT_C(void,Fl_Tree_set_marginbottom)(fl_Tree tree,int val){+    (static_cast<Fl_Tree*>(tree))->marginbottom(val);+  }+#endif /*FLTK_ABI_VERSION*/+  FL_EXPORT_C(int,Fl_Tree_linespacing)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->linespacing();+  }+  FL_EXPORT_C(void,Fl_Tree_set_linespacing)(fl_Tree tree,int val){+    return (static_cast<Fl_Tree*>(tree))->linespacing(val);+  }+  FL_EXPORT_C(int,Fl_Tree_openchild_marginbottom)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->openchild_marginbottom();+  }+  FL_EXPORT_C(void,Fl_Tree_set_openchild_marginbottom)(fl_Tree tree,int val){+    return (static_cast<Fl_Tree*>(tree))->openchild_marginbottom(val);+  }+  FL_EXPORT_C(int,Fl_Tree_usericonmarginleft)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->usericonmarginleft();+  }+  FL_EXPORT_C(void,Fl_Tree_set_usericonmarginleft)(fl_Tree tree,int val){+    return (static_cast<Fl_Tree*>(tree))->usericonmarginleft(val);+  }+  FL_EXPORT_C(int,Fl_Tree_labelmarginleft)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->labelmarginleft();+  }+  FL_EXPORT_C(void,Fl_Tree_set_labelmarginleft)(fl_Tree tree,int val){+    return (static_cast<Fl_Tree*>(tree))->labelmarginleft(val);+  }+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(int,Fl_Tree_widgetmarginleft)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->widgetmarginleft();+  }+  FL_EXPORT_C(void,Fl_Tree_set_widgetmarginleft)(fl_Tree tree,int val){+    return (static_cast<Fl_Tree*>(tree))->widgetmarginleft(val);+  }+#endif /*FLTK_ABI_VERSION*/+  FL_EXPORT_C(int,Fl_Tree_connectorwidth)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->connectorwidth();+  }+  FL_EXPORT_C(void,Fl_Tree_set_connectorwidth)(fl_Tree tree,int val){+    return (static_cast<Fl_Tree*>(tree))->connectorwidth(val);+  }+  FL_EXPORT_C(fl_Image,Fl_Tree_usericon)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->usericon();+  }+  FL_EXPORT_C(void,Fl_Tree_set_usericon)(fl_Tree tree,fl_Image val){+    return (static_cast<Fl_Tree*>(tree))->usericon((static_cast<Fl_Image*>(val)));+  }+  FL_EXPORT_C(fl_Image,Fl_Tree_openicon)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->openicon();+  }+  FL_EXPORT_C(void,Fl_Tree_set_openicon)(fl_Tree tree,fl_Image val){+    return (static_cast<Fl_Tree*>(tree))->openicon((static_cast<Fl_Image*>(val)));+  }+  FL_EXPORT_C(fl_Image,Fl_Tree_closeicon)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->closeicon();+  }+  FL_EXPORT_C(void,Fl_Tree_set_closeicon)(fl_Tree tree,fl_Image val){+    (static_cast<Fl_Tree*>(tree))->closeicon((static_cast<Fl_Image*>(val)));+  }+  FL_EXPORT_C(int,Fl_Tree_showcollapse)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->showcollapse();+  }+  FL_EXPORT_C(void,Fl_Tree_set_showcollapse)(fl_Tree tree,int val){+    (static_cast<Fl_Tree*>(tree))->showcollapse(val);+  }+  FL_EXPORT_C(int,Fl_Tree_showroot)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->showroot();+  }+  FL_EXPORT_C(void,Fl_Tree_set_showroot)(fl_Tree tree,int val){+    (static_cast<Fl_Tree*>(tree))->showroot(val);+  }+  FL_EXPORT_C(Fl_Tree_Connector,Fl_Tree_connectorstyle)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->connectorstyle();+  }+  FL_EXPORT_C(void,Fl_Tree_set_connectorstyle)(fl_Tree tree,Fl_Tree_Connector val){+    (static_cast<Fl_Tree*>(tree))->connectorstyle(val);+  }+  FL_EXPORT_C(Fl_Tree_Sort,Fl_Tree_sortorder)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->sortorder();+  }+  FL_EXPORT_C(void,Fl_Tree_set_sortorder)(fl_Tree tree,Fl_Tree_Sort val){+    (static_cast<Fl_Tree*>(tree))->sortorder(val);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Tree_selectbox)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->selectbox();+  }+  FL_EXPORT_C(void,Fl_Tree_set_selectbox)(fl_Tree tree,Fl_Boxtype val){+    (static_cast<Fl_Tree*>(tree))->selectbox(val);+  }+  FL_EXPORT_C(Fl_Tree_Select,Fl_Tree_selectmode)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->selectmode();+  }+  FL_EXPORT_C(void,Fl_Tree_set_selectmode)(fl_Tree tree,Fl_Tree_Select val){+    (static_cast<Fl_Tree*>(tree))->selectmode(val);+  }+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(Fl_Tree_Item_Reselect_Mode,Fl_Tree_item_reselect_mode)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->item_reselect_mode();+  }+  FL_EXPORT_C(void,Fl_Tree_set_item_reselect_mode)(fl_Tree tree,Fl_Tree_Item_Reselect_Mode mode){+    (static_cast<Fl_Tree*>(tree))->item_reselect_mode(mode);+  }+  FL_EXPORT_C(Fl_Tree_Item_Draw_Mode,Fl_Tree_item_draw_mode)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->item_draw_mode();+  }+  FL_EXPORT_C(void,Fl_Tree_set_item_draw_mode)(fl_Tree tree,Fl_Tree_Item_Draw_Mode mode){+    (static_cast<Fl_Tree*>(tree))->item_draw_mode(mode);+  }+  FL_EXPORT_C(void,Fl_Tree_set_item_draw_mode_with_int)(fl_Tree tree,int mode){+    (static_cast<Fl_Tree*>(tree))->item_draw_mode(mode);+  }+#endif /*FLTK_ABI_VERSION*/+  FL_EXPORT_C(int,Fl_Tree_displayed)(fl_Tree tree,fl_Tree_Item item){+    return (static_cast<Fl_Tree*>(tree))->displayed((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(void,Fl_Tree_show_item_with_yoff)(fl_Tree tree,fl_Tree_Item item,int yoff){+    (static_cast<Fl_Tree*>(tree))->show_item((static_cast<Fl_Tree_Item*>(item)),yoff);+  }+  FL_EXPORT_C(void,Fl_Tree_show_item)(fl_Tree tree,fl_Tree_Item item){+    (static_cast<Fl_Tree*>(tree))->show_item((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(void,Fl_Tree_show_item_top)(fl_Tree tree,fl_Tree_Item item){+     (static_cast<Fl_Tree*>(tree))->show_item_top((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(void,Fl_Tree_show_item_middle)(fl_Tree tree,fl_Tree_Item item){+    (static_cast<Fl_Tree*>(tree))->show_item_middle((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(void,Fl_Tree_show_item_bottom)(fl_Tree tree,fl_Tree_Item item){+    (static_cast<Fl_Tree*>(tree))->show_item_bottom((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(void,Fl_Tree_display)(fl_Tree tree,fl_Tree_Item item){+    (static_cast<Fl_Tree*>(tree))->display((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(int,Fl_Tree_vposition)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->vposition();+  }+  FL_EXPORT_C(void,Fl_Tree_set_vposition)(fl_Tree tree,int pos){+    (static_cast<Fl_Tree*>(tree))->vposition(pos);+  }+  FL_EXPORT_C(void,Fl_Tree_load)(fl_Tree tree,fl_Preferences preferences){+    (static_cast<Fl_Tree*>(tree))->load(*(static_cast<Fl_Preferences*>(preferences)));+  }+  FL_EXPORT_C(int, Fl_Tree_is_scrollbar)(fl_Tree tree,fl_Widget w){+    return (static_cast<Fl_Tree*>(tree))->is_scrollbar((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Tree_scrollbar_size)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->scrollbar_size();+  }+  FL_EXPORT_C(void,Fl_Tree_set_scrollbar_size)(fl_Tree tree,int size){+    (static_cast<Fl_Tree*>(tree))->scrollbar_size(size);+  }+  FL_EXPORT_C(int,Fl_Tree_is_vscroll_visible)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->is_vscroll_visible();+  }+  FL_EXPORT_C(void,Fl_Tree_set_callback_item)(fl_Tree tree,fl_Tree_Item item){+    (static_cast<Fl_Tree*>(tree))->callback_item((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_callback_item)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->callback_item();+  }+  FL_EXPORT_C(void,Fl_Tree_set_callback_reason)(fl_Tree tree,Fl_Tree_Reason reason){+    (static_cast<Fl_Tree*>(tree))->callback_reason(reason);+  }+  FL_EXPORT_C(Fl_Tree_Reason,Fl_Tree_callback_reason)(fl_Tree tree){+    return (static_cast<Fl_Tree*>(tree))->callback_reason();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_TreeC.h view
@@ -0,0 +1,256 @@+#ifndef __FL_TREE_C__+#define __FL_TREE_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Tree.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Tree_handle)(fl_Tree self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Tree_parent)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_parent)(fl_Tree tree, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Tree_type)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_type)(fl_Tree tree, uchar t);++  FL_EXPORT_C(int,          Fl_Tree_x)(fl_Tree tree);+  FL_EXPORT_C(int,          Fl_Tree_y)(fl_Tree tree);+  FL_EXPORT_C(int,          Fl_Tree_w)(fl_Tree tree);+  FL_EXPORT_C(int,          Fl_Tree_h)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_align)(fl_Tree tree, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Tree_align)(fl_Tree tree);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Tree_box)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_box)(fl_Tree tree, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Tree_color)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_color)(fl_Tree tree, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Tree_set_color_with_bg_sel)(fl_Tree tree,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Tree_selection_color)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_selection_color)(fl_Tree tree, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Tree_label)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_copy_label)(fl_Tree tree, const char* new_label);+  FL_EXPORT_C(void,         Fl_Tree_set_label)(fl_Tree tree, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Tree_labeltype)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_labeltype)(fl_Tree tree, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Tree_labelcolor)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_labelcolor)(fl_Tree tree, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Tree_item_labelfont)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_item_labelfont)(fl_Tree tree, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Tree_item_labelsize)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_item_labelsize)(fl_Tree tree, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Tree_image)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_image)(fl_Tree tree, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Tree_deimage)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_deimage)(fl_Tree tree, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Tree_tooltip)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_copy_tooltip)(fl_Tree tree, const char* text);+  FL_EXPORT_C(void,         Fl_Tree_set_tooltip)(fl_Tree tree, const char* text);+  FL_EXPORT_C(void,         Fl_Tree_set_callback_with_user_data)(fl_Tree tree, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Tree_set_callback)(fl_Tree tree, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Tree_user_data)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_user_data)(fl_Tree tree, void* v);+  FL_EXPORT_C(long,         Fl_Tree_argument)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_argument)(fl_Tree tree, long v);+  FL_EXPORT_C(Fl_When,      Fl_Tree_when)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_when)(fl_Tree tree, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Tree_visible)(fl_Tree tree);+  FL_EXPORT_C(int,          Fl_Tree_visible_r)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_visible)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_clear_visible)(fl_Tree tree);+  FL_EXPORT_C(unsigned int, Fl_Tree_active)(fl_Tree tree);+  FL_EXPORT_C(int,          Fl_Tree_active_r)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_activate)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_deactivate)(fl_Tree tree);+  FL_EXPORT_C(unsigned int, Fl_Tree_output)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_output)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_clear_output)(fl_Tree tree);+  FL_EXPORT_C(unsigned int, Fl_Tree_takesevents)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_changed)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_clear_changed)(fl_Tree tree);+  FL_EXPORT_C(int,          Fl_Tree_take_focus)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_visible_focus)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_clear_visible_focus)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_modify_visible_focus)(fl_Tree tree, int v);+  FL_EXPORT_C(unsigned int, Fl_Tree_visible_focus)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_do_callback)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_do_callback_with_widget_and_user_data)(fl_Tree tree, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Tree_do_callback_with_widget_and_default_user_data)(fl_Tree tree, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Tree_contains)(fl_Tree tree, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Tree_inside)(fl_Tree tree, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Tree_redraw)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_redraw_label)(fl_Tree tree);+  FL_EXPORT_C(uchar,        Fl_Tree_damage)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_clear_damage_with_bitmask)(fl_Tree tree, uchar c);+  FL_EXPORT_C(void,         Fl_Tree_clear_damage)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_damage_with_text)(fl_Tree tree, uchar c);+  FL_EXPORT_C(void,         Fl_Tree_damage_inside_widget)(fl_Tree tree, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Tree_draw_label_with_xywh_alignment)(fl_Tree tree, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Tree_measure_label)(fl_Tree tree, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Tree_window)(fl_Tree tree);+  FL_EXPORT_C(fl_Window,    Fl_Tree_top_window)(fl_Tree tree);+  FL_EXPORT_C(fl_Window ,   Fl_Tree_top_window_offset)(fl_Tree tree, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Tree_as_group)(fl_Tree tree);+  FL_EXPORT_C(fl_Gl_Window, Fl_Tree_as_gl_window)(fl_Tree tree);++  /* Inherited from Fl_Group */+  FL_EXPORT_C(void,         Fl_Tree_begin)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_end)(fl_Tree tree);+  FL_EXPORT_C(int,          Fl_Tree_find)(fl_Tree tree, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Tree_clear)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_resizable_by_reference)(fl_Tree tree,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Tree_set_resizable)(fl_Tree tree,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Tree_resizable)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_add_resizable)(fl_Tree tree,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Tree_init_sizes)(fl_Tree tree);+  FL_EXPORT_C(int,          Fl_Tree_children)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_set_clip_children)(fl_Tree tree,int c);+  FL_EXPORT_C(unsigned int, Fl_Tree_clip_children)(fl_Tree tree);+  FL_EXPORT_C(void,         Fl_Tree_focus)(fl_Tree tree,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Tree__ddfdesign_kludge)(fl_Tree tree);+  FL_EXPORT_C(fl_Widget*,   Fl_Tree_array)(fl_Tree self);+  FL_EXPORT_C(fl_Widget,    Fl_Tree_child)(fl_Tree self, int n);+  FL_EXPORT_C(void,         Fl_Tree_forms_end)(fl_Tree self);++  /* Fl_Tree specific */+  FL_EXPORT_C(fl_Tree,    Fl_Tree_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Tree   , Fl_Tree_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,Fl_Tree_Destroy)(fl_Tree tree);+  FL_EXPORT_C(int, Fl_Tree_handle)(fl_Tree tree,int e);+  FL_EXPORT_C(void, Fl_Tree_draw)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_show_self)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_root_label)(fl_Tree tree,const char *new_label);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_root)(fl_Tree tree);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_add)(fl_Tree tree,const char *path);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_add_with_item_name)(fl_Tree tree,fl_Tree_Item item, const char *name);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_insert_above)(fl_Tree tree,fl_Tree_Item above, const char *name);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_insert)(fl_Tree tree,fl_Tree_Item item, const char *name, int pos);+  FL_EXPORT_C(int, Fl_Tree_remove)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(void, Fl_Tree_clear)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_clear_children)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_find_item)(fl_Tree tree,const char *path);+  FL_EXPORT_C(int, Fl_Tree_item_pathname)(fl_Tree tree,char *pathname, int pathnamelen, const fl_Tree_Item item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_item_clicked)(fl_Tree tree);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_first)(fl_Tree tree);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_first_visible)(fl_Tree tree);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_next)(fl_Tree tree);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_next_with_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_prev)(fl_Tree tree);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_prev_with_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_last)(fl_Tree tree);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_last_visible)(fl_Tree tree);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_first_selected_item)(fl_Tree tree);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_next_selected_item)(fl_Tree tree);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_next_selected_item_with_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(int, Fl_Tree_open_with_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(int, Fl_Tree_open_with_item_docallback)(fl_Tree tree,fl_Tree_Item item, int docallback);+  FL_EXPORT_C(int, Fl_Tree_open_with_path)(fl_Tree tree,const char *path);+  FL_EXPORT_C(int, Fl_Tree_open_with_path_docallback)(fl_Tree tree,const char* path, int docallback);+  FL_EXPORT_C(void, Fl_Tree_open_toggle)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(void, Fl_Tree_open_toggle_with_docallback)(fl_Tree tree,fl_Tree_Item item, int docallback);+  FL_EXPORT_C(int, Fl_Tree_close_with_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(int, Fl_Tree_close_with_item_docallback)(fl_Tree tree,fl_Tree_Item item, int docallback);+  FL_EXPORT_C(int, Fl_Tree_close_with_path)(fl_Tree tree,const char *path);+  FL_EXPORT_C(int, Fl_Tree_close_with_path_docallback)(fl_Tree tree,const char* path, int docallback);+  FL_EXPORT_C(int, Fl_Tree_is_open_with_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(int, Fl_Tree_is_open_with_path)(fl_Tree tree,const char *path);+  FL_EXPORT_C(int, Fl_Tree_is_close_with_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(int, Fl_Tree_is_close_with_path)(fl_Tree tree,const char *path);+  FL_EXPORT_C(int, Fl_Tree_select_with_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(int, Fl_Tree_select_with_item_docallback)(fl_Tree tree,fl_Tree_Item item, int docallback);+  FL_EXPORT_C(int, Fl_Tree_select_with_path)(fl_Tree tree,const char *path);+  FL_EXPORT_C(int, Fl_Tree_select_with_path_docallback)(fl_Tree tree,const char* path, int docallback);+  FL_EXPORT_C(void, Fl_Tree_select_toggle)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(void, Fl_Tree_select_toggle_with_docallback)(fl_Tree tree,fl_Tree_Item item, int docallback);+  FL_EXPORT_C(int, Fl_Tree_deselect_with_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(int, Fl_Tree_deselect_with_item_docallback)(fl_Tree tree,fl_Tree_Item item, int docallback);+  FL_EXPORT_C(int, Fl_Tree_deselect_with_path)(fl_Tree tree,const char *path);+  FL_EXPORT_C(int, Fl_Tree_deselect_with_path_docallback)(fl_Tree tree,const char* path, int docallback);+  FL_EXPORT_C(int, Fl_Tree_deselect_all_with_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(int, Fl_Tree_deselect_all_with_docallback)(fl_Tree tree,int docallback);+  FL_EXPORT_C(int, Fl_Tree_deselect_all_with_item_docallback)(fl_Tree tree,fl_Tree_Item item, int docallback);+  FL_EXPORT_C(void, Fl_Tree_select_only)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(void, Fl_Tree_select_only_with_docallback)(fl_Tree tree,fl_Tree_Item item, int docallback);+  FL_EXPORT_C(void, Fl_Tree_select_all)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(void, Fl_Tree_select_all_with_docallback)(fl_Tree tree,fl_Tree_Item item, int docallback);+  FL_EXPORT_C(void, Fl_Tree_set_item_focus)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_get_item_focus)(fl_Tree tree);+  FL_EXPORT_C(int, Fl_Tree_is_selected_with_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(int, Fl_Tree_is_selected_with_path)(fl_Tree tree,const char *path);+  FL_EXPORT_C(Fl_Color   , Fl_Tree_item_labelfgcolor)(fl_Tree tree);+  FL_EXPORT_C(void       , Fl_Tree_set_item_labelfgcolor)(fl_Tree tree,Fl_Color val);+  FL_EXPORT_C(Fl_Color   , Fl_Tree_item_labelbgcolor)(fl_Tree tree);+  FL_EXPORT_C(void       , Fl_Tree_set_item_labelbgcolor)(fl_Tree tree,Fl_Color val);+  FL_EXPORT_C(Fl_Color, Fl_Tree_connectorcolor)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_connectorcolor)(fl_Tree tree,Fl_Color val);+  FL_EXPORT_C(int, Fl_Tree_marginleft)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_marginleft)(fl_Tree tree,int val);+  FL_EXPORT_C(int, Fl_Tree_margintop)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_margintop)(fl_Tree tree,int val);+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(int, Fl_Tree_marginbottom)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_marginbottom)(fl_Tree tree,int val);+#endif /*FLTK_ABI_VERSION*/+  FL_EXPORT_C(int, Fl_Tree_linespacing)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_linespacing)(fl_Tree tree,int val);+  FL_EXPORT_C(int, Fl_Tree_openchild_marginbottom)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_openchild_marginbottom)(fl_Tree tree,int val);+  FL_EXPORT_C(int, Fl_Tree_usericonmarginleft)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_usericonmarginleft)(fl_Tree tree,int val);+  FL_EXPORT_C(int, Fl_Tree_labelmarginleft)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_labelmarginleft)(fl_Tree tree,int val);+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(int, Fl_Tree_widgetmarginleft)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_widgetmarginleft)(fl_Tree tree,int val);+#endif /*FLTK_ABI_VERSION*/+  FL_EXPORT_C(int, Fl_Tree_connectorwidth)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_connectorwidth)(fl_Tree tree,int val);+  FL_EXPORT_C(fl_Image, Fl_Tree_usericon)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_usericon)(fl_Tree tree,fl_Image val);+  FL_EXPORT_C(fl_Image, Fl_Tree_openicon)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_openicon)(fl_Tree tree,fl_Image val);+  FL_EXPORT_C(fl_Image, Fl_Tree_closeicon)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_closeicon)(fl_Tree tree,fl_Image val);+  FL_EXPORT_C(int, Fl_Tree_showcollapse)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_showcollapse)(fl_Tree tree,int val);+  FL_EXPORT_C(int, Fl_Tree_showroot)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_showroot)(fl_Tree tree,int val);+  FL_EXPORT_C(Fl_Tree_Connector, Fl_Tree_connectorstyle)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_connectorstyle)(fl_Tree tree,Fl_Tree_Connector val);+  FL_EXPORT_C(Fl_Tree_Sort, Fl_Tree_sortorder)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_sortorder)(fl_Tree tree,Fl_Tree_Sort val);+  FL_EXPORT_C(Fl_Boxtype, Fl_Tree_selectbox)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_selectbox)(fl_Tree tree,Fl_Boxtype val);+  FL_EXPORT_C(Fl_Tree_Select, Fl_Tree_selectmode)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_selectmode)(fl_Tree tree,Fl_Tree_Select val);+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(Fl_Tree_Item_Reselect_Mode, Fl_Tree_item_reselect_mode)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_item_reselect_mode)(fl_Tree tree,Fl_Tree_Item_Reselect_Mode mode);+  FL_EXPORT_C(Fl_Tree_Item_Draw_Mode, Fl_Tree_item_draw_mode)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_item_draw_mode)(fl_Tree tree,Fl_Tree_Item_Draw_Mode mode);+  FL_EXPORT_C(void, Fl_Tree_set_item_draw_mode_with_int)(fl_Tree tree,int mode);+#endif /*FLTK_ABI_VERSION*/+  FL_EXPORT_C(int, Fl_Tree_displayed)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(void, Fl_Tree_show_item_with_yoff)(fl_Tree tree,fl_Tree_Item item, int yoff);+  FL_EXPORT_C(void, Fl_Tree_show_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(void, Fl_Tree_show_item_top)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(void, Fl_Tree_show_item_middle)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(void, Fl_Tree_show_item_bottom)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(void, Fl_Tree_display)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(int , Fl_Tree_vposition)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_vposition)(fl_Tree tree,int pos);++  FL_EXPORT_C(int, Fl_Tree_is_scrollbar)(fl_Tree tree,fl_Widget w);+  FL_EXPORT_C(int, Fl_Tree_scrollbar_size)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_scrollbar_size)(fl_Tree tree,int size);+  FL_EXPORT_C(int, Fl_Tree_is_vscroll_visible)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_callback_item)(fl_Tree tree,fl_Tree_Item item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_callback_item)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_set_callback_reason)(fl_Tree tree,Fl_Tree_Reason reason);+  FL_EXPORT_C(Fl_Tree_Reason, Fl_Tree_callback_reason)(fl_Tree tree);+  FL_EXPORT_C(void, Fl_Tree_load)(fl_Tree tree,fl_Preferences preferences);+#ifdef __cplusplus+}+#endif+#endif /* __FL_TREE_C__ */
+ c-src/Fl_Tree_ItemC.cpp view
@@ -0,0 +1,312 @@+#include "Fl_Tree_ItemC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(void,Fl_Tree_Item_Destroy)(fl_Tree_Item tree_item){+    delete (static_cast<Fl_Tree_Item*>(tree_item));+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_Item_New_WithItem)(fl_Tree_Item copy_item){+    Fl_Tree_Item* tree_item = new Fl_Tree_Item((static_cast<Fl_Tree_Item*>(copy_item)));+    return (fl_Tree_Item)tree_item;+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_Item_New_WithPrefs)(fl_Tree_Prefs tree_prefs){+    Fl_Tree_Item* tree_item = new Fl_Tree_Item(*(static_cast<Fl_Tree_Prefs*>(tree_prefs)));+    return (fl_Tree_Item)tree_item;+  }++  FL_EXPORT_C(int,Fl_Tree_Item_x)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->x();+  }+  FL_EXPORT_C(int,Fl_Tree_Item_y)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->y();+  }+  FL_EXPORT_C(int,Fl_Tree_Item_w)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->w();+  }+  FL_EXPORT_C(int,Fl_Tree_Item_h)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->h();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_draw)(fl_Tree_Item tree_item,int X,int *Y,int W,fl_Widget tree,fl_Tree_Item itemfocus,fl_Tree_Prefs prefs){+    (static_cast<Fl_Tree_Item*>(tree_item))->draw(X,*Y,W,(static_cast<Fl_Widget*>(tree)),(static_cast<Fl_Tree_Item*>(itemfocus)),(*(static_cast<Fl_Tree_Prefs*>(prefs))));+  }+  FL_EXPORT_C(void,Fl_Tree_Item_draw_with_lastchild)(fl_Tree_Item tree_item,int X,int *Y,int W,fl_Widget tree,fl_Tree_Item itemfocus,fl_Tree_Prefs prefs){+    (static_cast<Fl_Tree_Item*>(tree_item))->draw(X,*Y,W,(static_cast<Fl_Widget*>(tree)),(static_cast<Fl_Tree_Item*>(itemfocus)),(*(static_cast<Fl_Tree_Prefs*>(prefs))));+  }+  FL_EXPORT_C(void,Fl_Tree_Item_show_self_with_indent)(fl_Tree_Item tree_item,char* indent){+    (static_cast<Fl_Tree_Item*>(tree_item))->show_self(indent);+  }+  FL_EXPORT_C(void,Fl_Tree_Item_show_self)(fl_Tree_Item tree_item){+    (static_cast<Fl_Tree_Item*>(tree_item))->show_self();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_set_label)(fl_Tree_Item tree_item,char* val){+    (static_cast<Fl_Tree_Item*>(tree_item))->label(val);+  }+  FL_EXPORT_C(const char*,Fl_Tree_Item_label)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->label();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_set_user_data)(fl_Tree_Item tree_item,void* data){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Tree_Item*>(tree_item))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(data);+      (static_cast<Fl_Tree_Item*>(tree_item))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Tree_Item*>(tree_item))->user_data(data);+    }+  }+  FL_EXPORT_C(void*,Fl_Tree_Item_user_data)(fl_Tree_Item tree_item){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Tree_Item*>(tree_item))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Tree_Item*>(tree_item))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Tree_Item_set_labelfont)(fl_Tree_Item tree_item,Fl_Font val){+    (static_cast<Fl_Tree_Item*>(tree_item))->labelfont(val);+  }+  FL_EXPORT_C(Fl_Font,Fl_Tree_Item_labelfont)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_set_labelsize)(fl_Tree_Item tree_item,Fl_Fontsize val){+    (static_cast<Fl_Tree_Item*>(tree_item))->labelsize(val);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Tree_Item_labelsize)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_set_labelfgcolor)(fl_Tree_Item tree_item,Fl_Color val){+    (static_cast<Fl_Tree_Item*>(tree_item))->labelfgcolor(val);+  }+  FL_EXPORT_C(void,Fl_Tree_Item_set_labelcolor)(fl_Tree_Item tree_item,Fl_Color val){+    (static_cast<Fl_Tree_Item*>(tree_item))->labelcolor(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tree_Item_labelcolor)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->labelcolor();+  }+  FL_EXPORT_C(Fl_Color,Fl_Tree_Item_labelfgcolor)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->labelfgcolor();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_set_labelbgcolor)(fl_Tree_Item tree_item,Fl_Color val){+    (static_cast<Fl_Tree_Item*>(tree_item))->labelbgcolor(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tree_Item_labelbgcolor)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->labelbgcolor();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_set_widget)(fl_Tree_Item tree_item,fl_Widget val){+    (static_cast<Fl_Tree_Item*>(tree_item))->widget((static_cast<Fl_Widget*>(val)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Tree_Item_widget)(fl_Tree_Item tree_item){+    return (fl_Widget)(static_cast<Fl_Tree_Item*>(tree_item))->widget();+  }+  FL_EXPORT_C(int,Fl_Tree_Item_children)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->children();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_Item_child_by_index)(fl_Tree_Item tree_item,int index){+    return (fl_Tree_Item)(static_cast<Fl_Tree_Item*>(tree_item))->child(index);+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_Item_child_by_t)(fl_Tree_Item tree_item,int t){+    return (fl_Tree_Item)(static_cast<Fl_Tree_Item*>(tree_item))->child(t);+  }+  FL_EXPORT_C(int,Fl_Tree_Item_has_children)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->has_children();+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_add_with)(fl_Tree_Item tree_item,  const fl_Tree_Prefs prefs,  const char* new_label, fl_Tree_Item new_item) {+    Fl_Tree_Prefs* casted = static_cast<Fl_Tree_Prefs*>(prefs);+    return (static_cast<Fl_Tree_Item*>(tree_item))->add((static_cast<Fl_Tree_Prefs&>(*casted)), new_label, (static_cast<Fl_Tree_Item*>(new_item)));+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_add_with_at)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs, fl_Tree_Item new_item, char** arr) {+    Fl_Tree_Prefs* casted = static_cast<Fl_Tree_Prefs*>(prefs);+    return (fl_Tree_Item)(static_cast<Fl_Tree_Item*>(tree_item))->add((static_cast<Fl_Tree_Prefs&>(*casted)), arr, (static_cast<Fl_Tree_Item*>(new_item)));+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_add)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs, const char* new_label) {+    Fl_Tree_Prefs* casted = static_cast<Fl_Tree_Prefs*>(prefs);+    return (fl_Tree_Item)(static_cast<Fl_Tree_Item*>(tree_item))->add((static_cast<Fl_Tree_Prefs&>(*casted)), new_label);+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_add_at)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs, char** arr) {+    Fl_Tree_Prefs* casted = static_cast<Fl_Tree_Prefs*>(prefs);+    return (static_cast<Fl_Tree_Item*>(tree_item))->add((static_cast<Fl_Tree_Prefs&>(*casted)), arr);+  }+  FL_EXPORT_C(int,Fl_Tree_Item_find_child)(fl_Tree_Item tree_item,char* name){+    return (static_cast<Fl_Tree_Item*>(tree_item))->find_child(name);+  }+  FL_EXPORT_C(int,Fl_Tree_Item_find_child_by_item)(fl_Tree_Item tree_item,fl_Tree_Item item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->find_child((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(int,Fl_Tree_Item_remove_child_by_item)(fl_Tree_Item tree_item,fl_Tree_Item item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->remove_child((static_cast<Fl_Tree_Item*>(item)));+  }+  FL_EXPORT_C(int,Fl_Tree_Item_remove_child)(fl_Tree_Item tree_item,char* new_label){+    return (static_cast<Fl_Tree_Item*>(tree_item))->remove_child(new_label);+  }+  FL_EXPORT_C(void,Fl_Tree_Item_clear_children)(fl_Tree_Item tree_item){+    (static_cast<Fl_Tree_Item*>(tree_item))->clear_children();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_swap_children)(fl_Tree_Item tree_item,int ax,int bx){+    (static_cast<Fl_Tree_Item*>(tree_item))->swap_children(ax,bx);+  }+  FL_EXPORT_C(int,Fl_Tree_Item_swap_children_by_tree_item)(fl_Tree_Item tree_item,fl_Tree_Item a,fl_Tree_Item b){+    return (static_cast<Fl_Tree_Item*>(tree_item))->swap_children((static_cast<Fl_Tree_Item*>(a)),(static_cast<Fl_Tree_Item*>(b)));+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_find_child_item_by_children)(fl_Tree_Item tree_item, char** arr) {+    return (static_cast<Fl_Tree_Item*>(tree_item))->find_child_item(arr);+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_find_child_item_by_name)(fl_Tree_Item tree_item, const char* name) {+    return (static_cast<Fl_Tree_Item*>(tree_item))->find_child_item(name);+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_find_item)(fl_Tree_Item tree_item, char** arr) {+    return (static_cast<Fl_Tree_Item*>(tree_item))->find_item(arr);+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_deparent    )(fl_Tree_Item tree_item, int index){+    return (static_cast<Fl_Tree_Item*>(tree_item))->deparent(index);+  }+  FL_EXPORT_C(int         , Fl_Tree_Item_reparent    )(fl_Tree_Item tree_item, fl_Tree_Item new_item, int index){+    return (static_cast<Fl_Tree_Item*>(tree_item))->reparent((static_cast<Fl_Tree_Item*>(new_item)), index);+  }+  FL_EXPORT_C(int         , Fl_Tree_Item_move        )(fl_Tree_Item tree_item, int to, int from) {+    return (static_cast<Fl_Tree_Item*>(tree_item))->move(to, from);+  }+  FL_EXPORT_C(int         , Fl_Tree_Item_move_item   )(fl_Tree_Item tree_item, fl_Tree_Item child_item, int op, int pos){+    return (static_cast<Fl_Tree_Item*>(tree_item))->move((static_cast<Fl_Tree_Item*>(child_item)),op, pos);+  }+  FL_EXPORT_C(int         , Fl_Tree_Item_move_above  )(fl_Tree_Item tree_item, fl_Tree_Item child_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->move_above((static_cast<Fl_Tree_Item*>(child_item)));+  }+  FL_EXPORT_C(int         , Fl_Tree_Item_move_below  )(fl_Tree_Item tree_item, fl_Tree_Item child_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->move_below((static_cast<Fl_Tree_Item*>(child_item)));+  }+  FL_EXPORT_C(int         , Fl_Tree_Item_move_into   )(fl_Tree_Item tree_item, fl_Tree_Item child_item, int pos){+    return (static_cast<Fl_Tree_Item*>(tree_item))->move_into((static_cast<Fl_Tree_Item*>(child_item)), pos);+  }+  FL_EXPORT_C(int,Fl_Tree_Item_depth)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->depth();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_Item_parent)(fl_Tree_Item tree_item){+    return (fl_Group) (fl_Tree_Item)(static_cast<Fl_Tree_Item*>(tree_item))->parent();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_Item_prev_displayed)(fl_Tree_Item tree_item,fl_Tree_Prefs prefs){+    return (fl_Tree_Item)(static_cast<Fl_Tree_Item*>(tree_item))->prev_displayed(*(static_cast<Fl_Tree_Prefs*>(prefs)));+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_Item_next_displayed)(fl_Tree_Item tree_item,fl_Tree_Prefs prefs){+    return (fl_Tree_Item)(static_cast<Fl_Tree_Item*>(tree_item))->next_displayed(*(static_cast<Fl_Tree_Prefs*>(prefs)));+  }+  FL_EXPORT_C(void,Fl_Tree_Item_update_prev_next)(fl_Tree_Item tree_item,int index){+    return (static_cast<Fl_Tree_Item*>(tree_item))->update_prev_next(index);+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_Item_prev_sibling)(fl_Tree_Item tree_item){+    return (fl_Tree_Item)(static_cast<Fl_Tree_Item*>(tree_item))->prev_sibling();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_Item_next_sibling)(fl_Tree_Item tree_item){+    return (fl_Tree_Item)(static_cast<Fl_Tree_Item*>(tree_item))->next_sibling();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_Item_next)(fl_Tree_Item tree_item){+    return (fl_Tree_Item)(static_cast<Fl_Tree_Item*>(tree_item))->next();+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_Item_prev)(fl_Tree_Item tree_item){+    return (fl_Tree_Item)(static_cast<Fl_Tree_Item*>(tree_item))->prev();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_open_toggle)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->open_toggle();+  }+  FL_EXPORT_C(int,Fl_Tree_Item_is_close)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->is_close();+  }+  FL_EXPORT_C(int,Fl_Tree_Item_is_open)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->is_open();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_close)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->close();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_open)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->open();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_set_parent)(fl_Tree_Item tree_item,fl_Tree_Item val){+    return (static_cast<Fl_Tree_Item*>(tree_item))->parent((static_cast<Fl_Tree_Item*>(val)));+  }+  FL_EXPORT_C(int,Fl_Tree_Item_is_root)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->is_root();+  }+  FL_EXPORT_C(int,Fl_Tree_Item_event_on_label)(fl_Tree_Item tree_item,fl_Tree_Prefs prefs){+    return (static_cast<Fl_Tree_Item*>(tree_item))->event_on_label(*(static_cast<Fl_Tree_Prefs*>(prefs)));+  }+  FL_EXPORT_C(int,Fl_Tree_Item_event_on_collapse_icon)(fl_Tree_Item tree_item,fl_Tree_Prefs prefs){+    return (static_cast<Fl_Tree_Item*>(tree_item))->event_on_collapse_icon(*(static_cast<Fl_Tree_Prefs*>(prefs)));+  }+  FL_EXPORT_C(fl_Tree_Item,Fl_Tree_Item_find_clicked)(fl_Tree_Item tree_item,fl_Tree_Prefs prefs){+    return (fl_Tree_Item)(static_cast<Fl_Tree_Item*>(tree_item))->find_clicked(*(static_cast<Fl_Tree_Prefs*>(prefs)));+  }+  FL_EXPORT_C(fl_Image,Fl_Tree_Item_usericon)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->usericon();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_set_usericon)(fl_Tree_Item tree_item,fl_Image val){+    return (static_cast<Fl_Tree_Item*>(tree_item))->usericon((static_cast<Fl_Image*>(val)));+  }+  FL_EXPORT_C(int,Fl_Tree_Item_visible_r)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->visible_r();+  }+  FL_EXPORT_C(int,Fl_Tree_Item_is_visible)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->is_visible();+  }+  FL_EXPORT_C(int,Fl_Tree_Item_visible)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->visible();+  }+  FL_EXPORT_C(char,Fl_Tree_Item_is_active)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->is_active();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_activate_with_val)(fl_Tree_Item tree_item,int val){+    return (static_cast<Fl_Tree_Item*>(tree_item))->activate(val);+  }+  FL_EXPORT_C(void,Fl_Tree_Item_activate)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->activate();+  }+  FL_EXPORT_C(char,Fl_Tree_Item_is_selected)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->is_selected();+  }+  FL_EXPORT_C(int,Fl_Tree_Item_deselect_all)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->deselect_all();+  }+  FL_EXPORT_C(void, Fl_Tree_Item_deselect)(fl_Tree_Item tree_item) {+    return (static_cast<Fl_Tree_Item*>(tree_item))->deselect();+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_insert_above)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs,  char *new_label) {+    Fl_Tree_Prefs* casted = static_cast<Fl_Tree_Prefs*>(prefs);+    return (static_cast<Fl_Tree_Item*>(tree_item))->insert_above((static_cast<Fl_Tree_Prefs&>(*casted)), new_label);+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_insert)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs,  char* new_label) {+    Fl_Tree_Prefs* casted = static_cast<Fl_Tree_Prefs*>(prefs);+    return (static_cast<Fl_Tree_Item*>(tree_item))->insert((static_cast<Fl_Tree_Prefs&>(*casted)), new_label);+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_insert_with_pos)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs,  char *new_label, int pos){+    Fl_Tree_Prefs* casted = static_cast<Fl_Tree_Prefs*>(prefs);+    return (static_cast<Fl_Tree_Item*>(tree_item))->insert((static_cast<Fl_Tree_Prefs&>(*casted)), new_label, pos);+  }+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_find_child_item)(fl_Tree_Item tree_item, char** arr) {+    return (static_cast<Fl_Tree_Item*>(tree_item))->find_child_item(arr);+  }+  FL_EXPORT_C(int,Fl_Tree_Item_select_all)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->select_all();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_select_toggle)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->select_toggle();+  }+  FL_EXPORT_C(void,Fl_Tree_Item_select_with_val)(fl_Tree_Item tree_item,int val){+    return (static_cast<Fl_Tree_Item*>(tree_item))->select(val);+  }+  FL_EXPORT_C(void,Fl_Tree_Item_select)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->select();+  }+  FL_EXPORT_C(int, Fl_Tree_Item_label_x)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->label_x();+  }+  FL_EXPORT_C(int, Fl_Tree_Item_label_y)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->label_y();+  }+  FL_EXPORT_C(int, Fl_Tree_Item_label_w)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->label_w();+  }+  FL_EXPORT_C(int, Fl_Tree_Item_label_h)(fl_Tree_Item tree_item){+    return (static_cast<Fl_Tree_Item*>(tree_item))->label_h();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Tree_ItemC.h view
@@ -0,0 +1,111 @@+#ifndef __FL_TREE_ITEM_C__+#define __FL_TREE_ITEM_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Tree_Item.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_New_WithPrefs)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_New_WithItem)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_Destroy)(fl_Tree_Item tree_item);++  FL_EXPORT_C(int, Fl_Tree_Item_x)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_y)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_w)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_h)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_draw)(fl_Tree_Item tree_item, int X, int *Y, int W, fl_Widget tree, fl_Tree_Item itemfocus,  fl_Tree_Prefs prefs);+  FL_EXPORT_C(void, Fl_Tree_Item_draw_with_lastchild)(fl_Tree_Item tree_item, int X, int *Y, int W, fl_Widget tree, fl_Tree_Item itemfocus,  fl_Tree_Prefs prefs);+  FL_EXPORT_C(void, Fl_Tree_Item_show_self_with_indent)(fl_Tree_Item tree_item,  char* indent);+  FL_EXPORT_C(void, Fl_Tree_Item_show_self)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_set_label)(fl_Tree_Item tree_item,  char* val);+  FL_EXPORT_C(const char*, Fl_Tree_Item_label)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_set_user_data)(fl_Tree_Item tree_item,  void* data );+  FL_EXPORT_C(void*, Fl_Tree_Item_user_data)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_set_labelfont)(fl_Tree_Item tree_item, Fl_Font val);+  FL_EXPORT_C(Fl_Font, Fl_Tree_Item_labelfont)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_set_labelsize)(fl_Tree_Item tree_item, Fl_Fontsize val);+  FL_EXPORT_C(Fl_Fontsize, Fl_Tree_Item_labelsize)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_set_labelcolor)(fl_Tree_Item tree_item, Fl_Color val);+  FL_EXPORT_C(Fl_Color, Fl_Tree_Item_labelcolor)(fl_Tree_Item tree_item);+  FL_EXPORT_C(Fl_Color, Fl_Tree_Item_labelfgcolor)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_set_labelfgcolor)(fl_Tree_Item tree_item, Fl_Color val);+  FL_EXPORT_C(void, Fl_Tree_Item_set_labelbgcolor)(fl_Tree_Item tree_item, Fl_Color val);+  FL_EXPORT_C(Fl_Color, Fl_Tree_Item_labelbgcolor)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_set_widget)(fl_Tree_Item tree_item, fl_Widget val);+  FL_EXPORT_C(fl_Widget, Fl_Tree_Item_widget)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_children)(fl_Tree_Item tree_item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_child_by_index)(fl_Tree_Item tree_item, int index);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_child_by_t)(fl_Tree_Item tree_item, int t);+  FL_EXPORT_C(int, Fl_Tree_Item_has_children)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_find_child)(fl_Tree_Item tree_item,  char* name);+  FL_EXPORT_C(int, Fl_Tree_Item_find_child_by_item)(fl_Tree_Item tree_item, fl_Tree_Item item);+  FL_EXPORT_C(int, Fl_Tree_Item_remove_child_by_item)(fl_Tree_Item tree_item, fl_Tree_Item item);+  FL_EXPORT_C(int, Fl_Tree_Item_remove_child)(fl_Tree_Item tree_item,  char* new_label);+  FL_EXPORT_C(void, Fl_Tree_Item_clear_children)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_swap_children)(fl_Tree_Item tree_item, int ax, int bx);+  FL_EXPORT_C(int, Fl_Tree_Item_swap_children_by_tree_item)(fl_Tree_Item tree_item, fl_Tree_Item a, fl_Tree_Item b);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_find_child_item_by_children)(fl_Tree_Item tree_item, char** arr);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_find_child_item_by_name)(fl_Tree_Item tree_item, const char* name);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_find_child_item)(fl_Tree_Item tree_item, char** arr);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_find_item)(fl_Tree_Item tree_item, char** arr);++  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_add_with)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs,  const char* new_label, fl_Tree_Item new_item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_add_with_at)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs, fl_Tree_Item new_item, char** arr);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_add)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs, const char* new_label);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_add_at)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs, char** arr);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_insert)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs,  char* new_label);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_insert_with_pos)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs,  char *new_label, int pos);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_insert_above)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs,  char *new_label);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_deparent    )(fl_Tree_Item tree_item, int index);+  FL_EXPORT_C(int         , Fl_Tree_Item_reparent    )(fl_Tree_Item tree_item, fl_Tree_Item new_item, int index);+  FL_EXPORT_C(int         , Fl_Tree_Item_move        )(fl_Tree_Item tree_item, int to, int from);+  FL_EXPORT_C(int         , Fl_Tree_Item_move_item   )(fl_Tree_Item tree_item, fl_Tree_Item child_item, int op, int pos);+  FL_EXPORT_C(int         , Fl_Tree_Item_move_above  )(fl_Tree_Item tree_item, fl_Tree_Item child_item);+  FL_EXPORT_C(int         , Fl_Tree_Item_move_below  )(fl_Tree_Item tree_item, fl_Tree_Item child_item);+  FL_EXPORT_C(int         , Fl_Tree_Item_move_into   )(fl_Tree_Item tree_item, fl_Tree_Item child_item, int pos);+  FL_EXPORT_C(int, Fl_Tree_Item_depth)(fl_Tree_Item tree_item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_prev)(fl_Tree_Item tree_item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_next)(fl_Tree_Item tree_item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_next_sibling)(fl_Tree_Item tree_item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_prev_sibling)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_update_prev_next)(fl_Tree_Item tree_item, int index);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_next_displayed)(fl_Tree_Item tree_item, fl_Tree_Prefs prefs);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_prev_displayed)(fl_Tree_Item tree_item, fl_Tree_Prefs prefs);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_parent)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_set_parent)(fl_Tree_Item tree_item, fl_Tree_Item val);+  FL_EXPORT_C(void, Fl_Tree_Item_open)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_close)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_is_open)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_is_close)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_open_toggle)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_select)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_select_with_val)(fl_Tree_Item tree_item, int val);+  FL_EXPORT_C(void, Fl_Tree_Item_select_toggle)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_select_all)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_deselect)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_deselect_all)(fl_Tree_Item tree_item);+  FL_EXPORT_C(char, Fl_Tree_Item_is_selected)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_activate)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_activate_with_val)(fl_Tree_Item tree_item, int val);+  FL_EXPORT_C(char, Fl_Tree_Item_is_active)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_visible)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_is_visible)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_visible_r)(fl_Tree_Item tree_item);+  FL_EXPORT_C(void, Fl_Tree_Item_set_usericon)(fl_Tree_Item tree_item, fl_Image val);+  FL_EXPORT_C(fl_Image, Fl_Tree_Item_usericon)(fl_Tree_Item tree_item);+  FL_EXPORT_C(fl_Tree_Item, Fl_Tree_Item_find_clicked)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs);+  FL_EXPORT_C(int, Fl_Tree_Item_event_on_collapse_icon)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs);+  FL_EXPORT_C(int, Fl_Tree_Item_event_on_label)(fl_Tree_Item tree_item,  fl_Tree_Prefs prefs);+  FL_EXPORT_C(int, Fl_Tree_Item_is_root)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_label_x)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_label_y)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_label_w)(fl_Tree_Item tree_item);+  FL_EXPORT_C(int, Fl_Tree_Item_label_h)(fl_Tree_Item tree_item);+#ifdef __cplusplus+}+#endif+#endif /* __FL_TREE_ITEM_C__ */
+ c-src/Fl_Tree_PrefsC.cpp view
@@ -0,0 +1,198 @@+#include "Fl_Tree_PrefsC.h"++#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(fl_Tree_Prefs, Fl_Tree_Prefs_New)(){+    Fl_Tree_Prefs* prefs = new Fl_Tree_Prefs();+    return (fl_Tree_Prefs)prefs;+  }+  FL_EXPORT_C(void, Fl_Tree_Prefs_Destroy)(fl_Tree_Prefs tree_prefs){+    delete (static_cast<Fl_Tree_Prefs*>(tree_prefs));+  }+  FL_EXPORT_C(Fl_Font,Fl_Tree_Prefs_item_labelfont)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->item_labelfont();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_item_labelfont)(fl_Tree_Prefs tree_prefs,Fl_Font val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->item_labelfont(val);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Tree_Prefs_item_labelsize)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->item_labelsize();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_item_labelsize)(fl_Tree_Prefs tree_prefs,Fl_Fontsize val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->item_labelsize(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tree_Prefs_item_labelfgcolor)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->item_labelfgcolor();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_item_labelfgcolor)(fl_Tree_Prefs tree_prefs,Fl_Color val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->item_labelfgcolor(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tree_Prefs_item_labelbgcolor)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->item_labelbgcolor();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_item_labelbgcolor)(fl_Tree_Prefs tree_prefs,Fl_Color val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->item_labelbgcolor(val);+  }+  FL_EXPORT_C(Fl_Font,Fl_Tree_Prefs_labelfont)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_labelfont)(fl_Tree_Prefs tree_prefs,Fl_Font val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->labelfont(val);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Tree_Prefs_labelsize)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_labelsize)(fl_Tree_Prefs tree_prefs,Fl_Fontsize val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->labelsize(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tree_Prefs_labelfgcolor)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->labelfgcolor();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_labelfgcolor)(fl_Tree_Prefs tree_prefs,Fl_Color val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->labelfgcolor(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tree_Prefs_labelbgcolor)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->labelbgcolor();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_labelbgcolor)(fl_Tree_Prefs tree_prefs,Fl_Color val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->labelbgcolor(val);+  }+  FL_EXPORT_C(int,Fl_Tree_Prefs_marginleft)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->marginleft();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_marginleft)(fl_Tree_Prefs tree_prefs,int val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->marginleft(val);+  }+  FL_EXPORT_C(int,Fl_Tree_Prefs_margintop)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->margintop();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_margintop)(fl_Tree_Prefs tree_prefs,int val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->margintop(val);+  }+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(int,Fl_Tree_Prefs_marginbottom)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->marginbottom();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_marginbottom)(fl_Tree_Prefs tree_prefs,int val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->marginbottom(val);+  }+#endif /*FLTK_ABI_VERSION*/+  FL_EXPORT_C(int,Fl_Tree_Prefs_openchild_marginbottom)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->openchild_marginbottom();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_openchild_marginbottom)(fl_Tree_Prefs tree_prefs,int val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->openchild_marginbottom(val);+  }+  FL_EXPORT_C(int,Fl_Tree_Prefs_usericonmarginleft)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->usericonmarginleft();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_usericonmarginleft)(fl_Tree_Prefs tree_prefs,int val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->usericonmarginleft(val);+  }+  FL_EXPORT_C(int,Fl_Tree_Prefs_labelmarginleft)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->labelmarginleft();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_labelmarginleft)(fl_Tree_Prefs tree_prefs,int val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->labelmarginleft(val);+  }+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(int,Fl_Tree_Prefs_widgetmarginleft)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->widgetmarginleft();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_widgetmarginleft)(fl_Tree_Prefs tree_prefs,int val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->widgetmarginleft(val);+  }+#endif+  FL_EXPORT_C(int,Fl_Tree_Prefs_linespacing)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->linespacing();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_linespacing)(fl_Tree_Prefs tree_prefs,int val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->linespacing(val);+  }+  FL_EXPORT_C(Fl_Color,Fl_Tree_Prefs_connectorcolor)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->connectorcolor();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_connectorcolor)(fl_Tree_Prefs tree_prefs,Fl_Color val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->connectorcolor(val);+  }+  FL_EXPORT_C(Fl_Tree_Connector,Fl_Tree_Prefs_connectorstyle)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->connectorstyle();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_connectorstyle_with_tree_connector)(fl_Tree_Prefs tree_prefs,Fl_Tree_Connector val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->connectorstyle(val);+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_connectorstyle_with_val)(fl_Tree_Prefs tree_prefs,int val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->connectorstyle(val);+  }+  FL_EXPORT_C(int,Fl_Tree_Prefs_connectorwidth)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->connectorwidth();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_connectorwidth)(fl_Tree_Prefs tree_prefs,int val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->connectorwidth(val);+  }+  FL_EXPORT_C(fl_Image,Fl_Tree_Prefs_openicon)(fl_Tree_Prefs tree_prefs){+    return (fl_Image)(static_cast<Fl_Tree_Prefs*>(tree_prefs))->openicon();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_openicon)(fl_Tree_Prefs tree_prefs,fl_Image val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->openicon((static_cast<Fl_Image*>(val)));+  }+  FL_EXPORT_C(fl_Image,Fl_Tree_Prefs_closeicon)(fl_Tree_Prefs tree_prefs){+    return (fl_Image)(static_cast<Fl_Tree_Prefs*>(tree_prefs))->closeicon();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_closeicon)(fl_Tree_Prefs tree_prefs,fl_Image val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->closeicon((static_cast<Fl_Image*>(val)));+  }+  FL_EXPORT_C(fl_Image,Fl_Tree_Prefs_usericon)(fl_Tree_Prefs tree_prefs){+    return (fl_Image)(static_cast<Fl_Tree_Prefs*>(tree_prefs))->usericon();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_usericon)(fl_Tree_Prefs tree_prefs,fl_Image val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->usericon((static_cast<Fl_Image*>(val)));+  }+  FL_EXPORT_C(char,Fl_Tree_Prefs_showcollapse)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->showcollapse();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_showcollapse)(fl_Tree_Prefs tree_prefs,int val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->showcollapse(val);+  }+  FL_EXPORT_C(Fl_Tree_Sort,Fl_Tree_Prefs_sortorder)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->sortorder();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_sortorder)(fl_Tree_Prefs tree_prefs,Fl_Tree_Sort val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->sortorder(val);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Tree_Prefs_selectbox)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->selectbox();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_selectbox)(fl_Tree_Prefs tree_prefs,Fl_Boxtype val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->selectbox(val);+  }+  FL_EXPORT_C(int,Fl_Tree_Prefs_showroot)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->showroot();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_showroot)(fl_Tree_Prefs tree_prefs,int val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->showroot(val);+  }+  FL_EXPORT_C(Fl_Tree_Select,Fl_Tree_Prefs_selectmode)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->selectmode();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_selectmode)(fl_Tree_Prefs tree_prefs,Fl_Tree_Select val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->selectmode(val);+  }+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(Fl_Tree_Item_Reselect_Mode,Fl_Tree_Prefs_item_reselect_mode)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->item_reselect_mode();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_item_reselect_mode)(fl_Tree_Prefs tree_prefs,Fl_Tree_Item_Reselect_Mode mode){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->item_reselect_mode(mode);+  }+  FL_EXPORT_C(Fl_Tree_Item_Draw_Mode,Fl_Tree_Prefs_item_draw_mode)(fl_Tree_Prefs tree_prefs){+    return (static_cast<Fl_Tree_Prefs*>(tree_prefs))->item_draw_mode();+  }+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_item_draw_mode)(fl_Tree_Prefs tree_prefs,Fl_Tree_Item_Draw_Mode val){+    (static_cast<Fl_Tree_Prefs*>(tree_prefs))->item_draw_mode(val);+  }+#endif+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Tree_PrefsC.h view
@@ -0,0 +1,87 @@+#ifndef __FL_TREE_PREFS_C__+#define __FL_TREE_PREFS_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Tree_Prefs.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_Tree_Prefs, Fl_Tree_Prefs_New)();+  FL_EXPORT_C(void, Fl_Tree_Prefs_Destroy)(fl_Tree_Prefs prefs);+  FL_EXPORT_C(Fl_Font, Fl_Tree_Prefs_item_labelfont)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_item_labelfont)(fl_Tree_Prefs tree_prefs, Fl_Font val);+  FL_EXPORT_C(Fl_Fontsize, Fl_Tree_Prefs_item_labelsize)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_item_labelsize)(fl_Tree_Prefs tree_prefs, Fl_Fontsize val);+  FL_EXPORT_C(Fl_Color, Fl_Tree_Prefs_item_labelfgcolor)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_item_labelfgcolor)(fl_Tree_Prefs tree_prefs, Fl_Color val);+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(Fl_Color, Fl_Tree_Prefs_item_labelbgcolor)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_item_labelbgcolor)(fl_Tree_Prefs tree_prefs, Fl_Color val);+#else /*FLTK_ABI_VERSION*/+  FL_EXPORT_C(Fl_Color, Fl_Tree_Prefs_item_labelbgcolor)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_item_labelbgcolor)(fl_Tree_Prefs tree_prefs, Fl_Color val);+#endif /*FLTK_ABI_VERSION*/+  FL_EXPORT_C(Fl_Font, Fl_Tree_Prefs_labelfont)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_labelfont)(fl_Tree_Prefs tree_prefs, Fl_Font val);+  FL_EXPORT_C(Fl_Fontsize, Fl_Tree_Prefs_labelsize)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_labelsize)(fl_Tree_Prefs tree_prefs, Fl_Fontsize val);+  FL_EXPORT_C(Fl_Color, Fl_Tree_Prefs_labelfgcolor)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_labelfgcolor)(fl_Tree_Prefs tree_prefs, Fl_Color val);+  FL_EXPORT_C(Fl_Color, Fl_Tree_Prefs_labelbgcolor)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_labelbgcolor)(fl_Tree_Prefs tree_prefs, Fl_Color val);+  FL_EXPORT_C(int, Fl_Tree_Prefs_marginleft)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_marginleft)(fl_Tree_Prefs tree_prefs, int val);+  FL_EXPORT_C(int, Fl_Tree_Prefs_margintop)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_margintop)(fl_Tree_Prefs tree_prefs, int val);+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(int, Fl_Tree_Prefs_marginbottom)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_marginbottom)(fl_Tree_Prefs tree_prefs, int val);+#endif /*FLTK_ABI_VERSION*/+  FL_EXPORT_C(int, Fl_Tree_Prefs_openchild_marginbottom)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_openchild_marginbottom)(fl_Tree_Prefs tree_prefs, int val);+  FL_EXPORT_C(int, Fl_Tree_Prefs_usericonmarginleft)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_usericonmarginleft)(fl_Tree_Prefs tree_prefs, int val);+  FL_EXPORT_C(int, Fl_Tree_Prefs_labelmarginleft)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void,Fl_Tree_Prefs_set_labelmarginleft)(fl_Tree_Prefs tree_prefs, int val);+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(int, Fl_Tree_Prefs_widgetmarginleft)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_widgetmarginleft)(fl_Tree_Prefs tree_prefs, int val);+#endif /*FLTK_ABI_VERSION*/+  FL_EXPORT_C(int, Fl_Tree_Prefs_linespacing)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_linespacing)(fl_Tree_Prefs tree_prefs, int val);+  FL_EXPORT_C(Fl_Color, Fl_Tree_Prefs_connectorcolor)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_connectorcolor)(fl_Tree_Prefs tree_prefs, Fl_Color val);+  FL_EXPORT_C(Fl_Tree_Connector, Fl_Tree_Prefs_connectorstyle)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_connectorstyle_with_tree_connector)(fl_Tree_Prefs tree_prefs, Fl_Tree_Connector val);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_connectorstyle_with_val)(fl_Tree_Prefs tree_prefs, int val);+  FL_EXPORT_C(int, Fl_Tree_Prefs_connectorwidth)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_connectorwidth)(fl_Tree_Prefs tree_prefs, int val);+  FL_EXPORT_C(fl_Image, Fl_Tree_Prefs_openicon)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_openicon)(fl_Tree_Prefs tree_prefs, fl_Image val);+  FL_EXPORT_C(fl_Image, Fl_Tree_Prefs_closeicon)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_closeicon)(fl_Tree_Prefs tree_prefs, fl_Image val);+  FL_EXPORT_C(fl_Image, Fl_Tree_Prefs_usericon)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_usericon)(fl_Tree_Prefs tree_prefs, fl_Image val);+  FL_EXPORT_C(char, Fl_Tree_Prefs_showcollapse)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_showcollapse)(fl_Tree_Prefs tree_prefs, int val);+  FL_EXPORT_C(Fl_Tree_Sort, Fl_Tree_Prefs_sortorder)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_sortorder)(fl_Tree_Prefs tree_prefs, Fl_Tree_Sort val);+  FL_EXPORT_C(Fl_Boxtype, Fl_Tree_Prefs_selectbox)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_selectbox)(fl_Tree_Prefs tree_prefs, Fl_Boxtype val);+  FL_EXPORT_C(int, Fl_Tree_Prefs_showroot)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_showroot)(fl_Tree_Prefs tree_prefs, int val);+  FL_EXPORT_C(Fl_Tree_Select, Fl_Tree_Prefs_selectmode)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_selectmode)(fl_Tree_Prefs tree_prefs, Fl_Tree_Select val);+#if FLTK_ABI_VERSION >= 10302+  FL_EXPORT_C(Fl_Tree_Item_Reselect_Mode, Fl_Tree_Prefs_item_reselect_mode)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_item_reselect_mode)(fl_Tree_Prefs tree_prefs, Fl_Tree_Item_Reselect_Mode mode);+  FL_EXPORT_C(Fl_Tree_Item_Draw_Mode, Fl_Tree_Prefs_item_draw_mode)(fl_Tree_Prefs tree_prefs);+  FL_EXPORT_C(void, Fl_Tree_Prefs_set_item_draw_mode)(fl_Tree_Prefs tree_prefs, Fl_Tree_Item_Draw_Mode val);+#endif /*FLTK_ABI_VERSION*/+#ifdef __cplusplus+}+#endif+#endif /* __FL_TREE_PREFS_C__ */
+ c-src/Fl_Types.h view
@@ -0,0 +1,649 @@+#ifndef __FL_TYPES_H+#define __FL_TYPES_H+#include "FL/fl_types.h"+#include "Fl_EnumerationsC.h"++#if defined(WIN32) && !defined(__CYGWIN__)+# if defined(_WIN64)+#  define FL_SOCKET unsigned __int64+# else+#  define FL_SOCKET int+# endif+#else+# define FL_SOCKET int+#endif+#ifdef _WIN64+#ifdef __GNUC__+#include <stdint.h>+#else+#include <stddef.h>  // M$VC+#endif+typedef intptr_t fl_intptr_t;+typedef uintptr_t fl_uintptr_t;+#else+typedef long fl_intptr_t;+typedef unsigned long fl_uintptr_t;+#endif+#ifdef __cplusplus+class DerivedText_Editor;+EXPORT {+#endif+// values for type(), lowest bit indicate horizontal:+#define FL_VERT_SLIDER		0+#define FL_HOR_SLIDER		1+#define FL_VERT_FILL_SLIDER	2+#define FL_HOR_FILL_SLIDER	3+#define FL_VERT_NICE_SLIDER	4+#define FL_HOR_NICE_SLIDER	5++#define FL_NORMAL_BROWSER	0	/**< type() of Fl_Browser */+#define FL_SELECT_BROWSER	1	/**< type() of FL_Select_Browser */+#define FL_HOLD_BROWSER		2	/**< type() of Fl_Hold_Browser */+#define FL_MULTI_BROWSER	3	/**< type() of Fl_Multi_Browser */++#define FL_NORMAL_TIMER 0+#define FL_VALUE_TIMER  1+#define FL_HIDDEN_TIMER 2  ++#define FL_SORT_ASCENDING	0	/**< sort browser items in ascending alphabetic order. */+#define FL_SORT_DESCENDING	1	/**< sort in descending order */+#ifndef INTERNAL_LINKAGE+  enum { FL_FILE_BROWSER_FILES, FL_FILE_BROWSER_DIRECTORIES };+  enum+  {+    FL_FILE_ICON_ANY,+    FL_FILE_ICON_PLAIN,+    FL_FILE_ICON_FIFO,+    FL_FILE_ICON_DEVICE,+    FL_FILE_ICON_LINK,+    FL_FILE_ICON_DIRECTORY+  };+  enum+  {+    FL_FILE_ICON_END,+    FL_FILE_ICON_COLOR,+    FL_FILE_ICON_LINE,+    FL_FILE_ICON_CLOSEDLINE,+    FL_FILE_ICON_POLYGON,+    FL_FILE_ICON_OUTLINEPOLYGON,+    FL_FILE_ICON_VERTEX+  };+  enum {+    FL_FILE_CHOOSER_SINGLE = 0,+    FL_FILE_CHOOSER_MULTI = 1,+    FL_FILE_CHOOSER_CREATE = 2,+    FL_FILE_CHOOSER_DIRECTORY = 4+  };++#define FL_RESERVED_TYPE 100+#define FL_NORMAL_BUTTON	0+#define FL_TOGGLE_BUTTON	1+#define FL_RADIO_BUTTON		(FL_RESERVED_TYPE+2)+#define FL_HIDDEN_BUTTON	3+  typedef enum {+    FL_TREE_REASON_NONE=0,+    FL_TREE_REASON_SELECTED,+    FL_TREE_REASON_DESELECTED,+#if FLTK_ABI_VERSION >= 10302+    FL_TREE_REASON_RESELECTED,+#endif /*FLTK_ABI_VERSION*/+    FL_TREE_REASON_OPENED,+    FL_TREE_REASON_CLOSED+  } Fl_Tree_Reason;+  enum {+    FL_MENU_INACTIVE = 1,+    FL_MENU_TOGGLE= 2,+    FL_MENU_VALUE = 4,+    FL_MENU_RADIO = 8,+    FL_MENU_INVISIBLE = 0x10,+    FL_SUBMENU_POINTER = 0x20,+    FL_SUBMENU = 0x40,+    FL_MENU_DIVIDER = 0x80,+    FL_MENU_HORIZONTAL = 0x100+  };+  enum {+    HORIZONTAL = 1,+    VERTICAL = 2,+    BOTH = 3,+    ALWAYS_ON = 4,+    HORIZONTAL_ALWAYS = 5,+    VERTICAL_ALWAYS = 6,+    BOTH_ALWAYS = 7+  };+  enum {+    NORMAL_CURSOR,+    CARET_CURSOR,+    DIM_CURSOR,+    BLOCK_CURSOR,+    HEAVY_CURSOR,+    SIMPLE_CURSOR+  };+  enum {+    CURSOR_POS,+    CHARACTER_POS+  };+  enum {+    DRAG_NONE = -2,+    DRAG_START_DND = -1,+    DRAG_CHAR = 0,+    DRAG_WORD = 1,+    DRAG_LINE = 2+  };+  enum {+    WRAP_NONE,+    WRAP_AT_COLUMN,+    WRAP_AT_PIXEL,+    WRAP_AT_BOUNDS+  };+  enum Page_Format {+    A0 = 0,+    A1,+    A2,+    A3,+    A4,+    A5,+    A6,+    A7,+    A8,+    A9,+    B0,+    B1,+    B2,+    B3,+    B4,+    B5,+    B6,+    B7,+    B8,+    B9,+    B10,+    C5E,+    DLE,+    EXECUTIVE,+    FOLIO,+    LEDGER,+    LEGAL,+    LETTER,+    TABLOID,+    ENVELOPE,+    MEDIA = 0x1000+  };+  enum Page_Layout {+    PORTRAIT = 0,+    LANDSCAPE = 0x100,+    REVERSED = 0x200,+    ORIENTATION = 0x300+  };+  typedef struct page_format {+    int width;+    int height;+    const char *name;+  } page_format;+#include <config.h>+#  ifdef __APPLE__+#    include <OpenGL/gl.h>+#  else+#    include <GL/gl.h>+#  endif+  typedef void (*GLUTproc)();+  void (*glut_idle_function)();+  void (*glut_menustate_function)(int);+  void (*glut_menustatus_function)(int,int,int);+#  define GLUT_RGB	FL_RGB+#  define GLUT_RGBA	FL_RGB+#  define GLUT_INDEX	FL_INDEX+#  define GLUT_SINGLE	FL_SINGLE+#  define GLUT_DOUBLE	FL_DOUBLE+#  define GLUT_ACCUM	FL_ACCUM+#  define GLUT_ALPHA	FL_ALPHA+#  define GLUT_DEPTH	FL_DEPTH+#  define GLUT_STENCIL	FL_STENCIL+#  define GLUT_MULTISAMPLE FL_MULTISAMPLE+#  define GLUT_STEREO	FL_STEREO+#  define GLUT_CURSOR_RIGHT_ARROW		((Fl_Cursor)2)+#  define GLUT_CURSOR_LEFT_ARROW		((Fl_Cursor)67)+#  define GLUT_CURSOR_INFO			FL_CURSOR_HAND+#  define GLUT_CURSOR_DESTROY			((Fl_Cursor)45)+#  define GLUT_CURSOR_HELP			FL_CURSOR_HELP+#  define GLUT_CURSOR_CYCLE			((Fl_Cursor)26)+#  define GLUT_CURSOR_SPRAY			((Fl_Cursor)63)+#  define GLUT_CURSOR_WAIT			FL_CURSOR_WAIT+#  define GLUT_CURSOR_TEXT			FL_CURSOR_INSERT+#  define GLUT_CURSOR_CROSSHAIR			FL_CURSOR_CROSS+#  define GLUT_CURSOR_UP_DOWN			FL_CURSOR_NS+#  define GLUT_CURSOR_LEFT_RIGHT		FL_CURSOR_WE+#  define GLUT_CURSOR_TOP_SIDE			FL_CURSOR_N+#  define GLUT_CURSOR_BOTTOM_SIDE		FL_CURSOR_S+#  define GLUT_CURSOR_LEFT_SIDE			FL_CURSOR_W+#  define GLUT_CURSOR_RIGHT_SIDE		FL_CURSOR_E+#  define GLUT_CURSOR_TOP_LEFT_CORNER		FL_CURSOR_NW+#  define GLUT_CURSOR_TOP_RIGHT_CORNER		FL_CURSOR_NE+#  define GLUT_CURSOR_BOTTOM_RIGHT_CORNER	FL_CURSOR_SE+#  define GLUT_CURSOR_BOTTOM_LEFT_CORNER	FL_CURSOR_SW+#  define GLUT_CURSOR_INHERIT			FL_CURSOR_DEFAULT+#  define GLUT_CURSOR_NONE			FL_CURSOR_NONE+#  define GLUT_CURSOR_FULL_CROSSHAIR		FL_CURSOR_CROSS++  enum {GLUT_NORMAL, GLUT_OVERLAY};+#  define GLUT_LEFT_BUTTON		0+#  define GLUT_MIDDLE_BUTTON		1+#  define GLUT_RIGHT_BUTTON		2+#  define GLUT_DOWN			0+#  define GLUT_UP			1+  enum {GLUT_NOT_VISIBLE, GLUT_VISIBLE};+  enum {GLUT_MENU_NOT_IN_USE, GLUT_MENU_IN_USE};+  enum {GLUT_LEFT, GLUT_ENTERED};+#  define GLUT_KEY_F1			1+#  define GLUT_KEY_F2			2+#  define GLUT_KEY_F3			3+#  define GLUT_KEY_F4			4+#  define GLUT_KEY_F5			5+#  define GLUT_KEY_F6			6+#  define GLUT_KEY_F7			7+#  define GLUT_KEY_F8			8+#  define GLUT_KEY_F9			9+#  define GLUT_KEY_F10			10+#  define GLUT_KEY_F11			11+#  define GLUT_KEY_F12			12+  // WARNING: Different values than GLUT uses:+#  define GLUT_KEY_LEFT			FL_Left+#  define GLUT_KEY_UP			FL_Up+#  define GLUT_KEY_RIGHT		FL_Right+#  define GLUT_KEY_DOWN			FL_Down+#  define GLUT_KEY_PAGE_UP		FL_Page_Up+#  define GLUT_KEY_PAGE_DOWN		FL_Page_Down+#  define GLUT_KEY_HOME			FL_Home+#  define GLUT_KEY_END			FL_End+#  define GLUT_KEY_INSERT		FL_Insert+  enum {+    GLUT_RETURN_ZERO = 0,+    GLUT_WINDOW_X,+    GLUT_WINDOW_Y,+    GLUT_WINDOW_WIDTH,+    GLUT_WINDOW_HEIGHT,+    GLUT_WINDOW_PARENT,+    GLUT_SCREEN_WIDTH,+    GLUT_SCREEN_HEIGHT,+    GLUT_MENU_NUM_ITEMS,+    GLUT_DISPLAY_MODE_POSSIBLE,+    GLUT_INIT_WINDOW_X,+    GLUT_INIT_WINDOW_Y,+    GLUT_INIT_WINDOW_WIDTH,+    GLUT_INIT_WINDOW_HEIGHT,+    GLUT_INIT_DISPLAY_MODE,+    GLUT_WINDOW_BUFFER_SIZE,+    GLUT_VERSION+  };+#  define GLUT_WINDOW_STENCIL_SIZE	GL_STENCIL_BITS+#  define GLUT_WINDOW_DEPTH_SIZE	GL_DEPTH_BITS+#  define GLUT_WINDOW_RED_SIZE		GL_RED_BITS+#  define GLUT_WINDOW_GREEN_SIZE	GL_GREEN_BITS+#  define GLUT_WINDOW_BLUE_SIZE		GL_BLUE_BITS+#  define GLUT_WINDOW_ALPHA_SIZE	GL_ALPHA_BITS+#  define GLUT_WINDOW_ACCUM_RED_SIZE	GL_ACCUM_RED_BITS+#  define GLUT_WINDOW_ACCUM_GREEN_SIZE	GL_ACCUM_GREEN_BITS+#  define GLUT_WINDOW_ACCUM_BLUE_SIZE	GL_ACCUM_BLUE_BITS+#  define GLUT_WINDOW_ACCUM_ALPHA_SIZE	GL_ACCUM_ALPHA_BITS+#  define GLUT_WINDOW_DOUBLEBUFFER	GL_DOUBLEBUFFER+#  define GLUT_WINDOW_RGBA		GL_RGBA+#  define GLUT_WINDOW_COLORMAP_SIZE	GL_INDEX_BITS+#  ifdef GL_SAMPLES_SGIS+#    define GLUT_WINDOW_NUM_SAMPLES	GL_SAMPLES_SGIS+#  else+#    define GLUT_WINDOW_NUM_SAMPLES	GLUT_RETURN_ZERO+#  endif+#  define GLUT_WINDOW_STEREO		GL_STEREO+#  define GLUT_HAS_KEYBOARD		600+#  define GLUT_HAS_MOUSE		601+#  define GLUT_HAS_SPACEBALL		602+#  define GLUT_HAS_DIAL_AND_BUTTON_BOX	603+#  define GLUT_HAS_TABLET		604+#  define GLUT_NUM_MOUSE_BUTTONS	605+#  define GLUT_NUM_SPACEBALL_BUTTONS	606+#  define GLUT_NUM_BUTTON_BOX_BUTTONS	607+#  define GLUT_NUM_DIALS		608+#  define GLUT_NUM_TABLET_BUTTONS	609++#  define GLUT_ACTIVE_SHIFT               FL_SHIFT+#  define GLUT_ACTIVE_CTRL                FL_CTRL+#  define GLUT_ACTIVE_ALT                 FL_ALT+#  define GLUT_OVERLAY_POSSIBLE		800+#  define GLUT_TRANSPARENT_INDEX		803+#  define GLUT_NORMAL_DAMAGED		804+#  define GLUT_OVERLAY_DAMAGED		805+  typedef struct Fl_Glut_Bitmap_Font {Fl_Font font; Fl_Fontsize size;} Fl_Glut_Bitmap_Font;+  struct Fl_Glut_Bitmap_Font+    glutBitmap9By15, glutBitmap8By13, glutBitmapTimesRoman10,+    glutBitmapTimesRoman24, glutBitmapHelvetica10, glutBitmapHelvetica12,+    glutBitmapHelvetica18;+#  define GLUT_BITMAP_9_BY_15             (&glutBitmap9By15)+#  define GLUT_BITMAP_8_BY_13             (&glutBitmap8By13)+#  define GLUT_BITMAP_TIMES_ROMAN_10      (&glutBitmapTimesRoman10)+#  define GLUT_BITMAP_TIMES_ROMAN_24      (&glutBitmapTimesRoman24)+#  define GLUT_BITMAP_HELVETICA_10        (&glutBitmapHelvetica10)+#  define GLUT_BITMAP_HELVETICA_12        (&glutBitmapHelvetica12)+#  define GLUT_BITMAP_HELVETICA_18        (&glutBitmapHelvetica18)+  typedef struct Fl_Glut_StrokeVertex {+    GLfloat X, Y;+  } Fl_Glut_StrokeVertex;+  typedef struct Fl_Glut_StrokeStrip {+    int Number;+    const Fl_Glut_StrokeVertex* Vertices;+  } Fl_Glut_StrokeStrip;+  typedef struct Fl_Glut_StrokeChar {+    GLfloat Right;+    int Number;+    const Fl_Glut_StrokeStrip* Strips;+  } Fl_Glut_StrokeChar;+  typedef struct Fl_Glut_StrokeFont {+    char* Name;				// The source font name+    int Quantity;				// Number of chars in font+    GLfloat Height;			// Height of the characters+    const Fl_Glut_StrokeChar** Characters;// The characters mapping+  } Fl_Glut_StrokeFont;+  Fl_Glut_StrokeFont glutStrokeRoman;+  Fl_Glut_StrokeFont glutStrokeMonoRoman;+#  define GLUT_STROKE_ROMAN		(&glutStrokeRoman)+#  define GLUT_STROKE_MONO_ROMAN	(&glutStrokeMonoRoman)+  typedef ulong Fl_Bitmask;+  typedef unsigned int Fl_Char;+#endif /* INTERNAL_LINKAGE */+  typedef void* ID;+  typedef void* fl_Window;+  typedef void* fl_Group;+  typedef void* fl_Label;+  typedef void* fl_Adjuster;+  typedef void* fl_Bitmap;+  typedef void* fl_BMP_Image;+  typedef void* fl_Box;+  typedef void* fl_Browser_;+  typedef void* fl_Browser;+  typedef void* fl_Button;+  typedef void* fl_Cairo;+  typedef void* fl_Cairo_Window;+  typedef void* fl_Chart;+  typedef void* fl_Check_Browser;+  typedef void* fl_Check_Button;+  typedef void* fl_Choice;+  typedef void* fl_Clock;+  typedef void* fl_Color_Chooser;+  typedef void* fl_Copy_Surface;+  typedef void* fl_Counter;+  typedef void* fl_Simple_Counter;+  typedef void* fl_Device;+  typedef void* fl_Dial;+  typedef void* fl_Double_Window;+  typedef void* fl_Export;+  typedef void* fl_File_Browser;+  typedef void* fl_File_Chooser;+  typedef void* fl_File_Icon;+  typedef void* fl_File_Input;+  typedef void* fl_Fill_Dial;+  typedef void* fl_Fill_Slider;+  typedef void* fl_Float_Input;+  typedef void* fl_Font_Descriptor;+  typedef void* fl_FormsBitmap;+  typedef void* fl_FormsPixmap;+  typedef void* fl_Free;+  typedef void* fl_GIF_Image;+  typedef void* fl_Gl_Window;+  typedef void* fl_Glut_Window;+  typedef void* fl_Graphics_Driver;+  typedef void* fl_Surface_Device;+  typedef void* fl_Display_Device;+  typedef void* fl_Device_Plugin;+  typedef void* fl_Help_Dialog;+  typedef void* fl_Help_View;+  typedef void* fl_Hold_Browser;+  typedef void* fl_Hor_Fill_Slider;+  typedef void* fl_Hor_Nice_Slider;+  typedef void* fl_Hor_Slider;+  typedef void* fl_Hor_Value_Slider;+  typedef void* fl_Image;+  typedef void* fl_Image_Surface;+  typedef void* fl_Input_Choice;+  typedef void* fl_Input_;+  typedef void* fl_Input;+  typedef void* fl_Int_Input;+  typedef void* fl_JPEG_Image;+  typedef void* fl_Light_Button;+  typedef void* fl_Line_Dial;+  typedef void* fl_Menu_Button;+  typedef void* fl_Menu_;+  typedef void* fl_Menu;+  typedef void* fl_Menu_Item;+  typedef void* fl_Menu_Window;+  typedef void* fl_Multi_Browser;+  typedef void* fl_Multi_Label;+  typedef void* fl_Multiline_Input;+  typedef void* fl_Multiline_Output;+  typedef void* fl_Native_File_Chooser;+  typedef void* fl_Nice_Slider;+  typedef void* fl_Object;+  typedef void* fl_Output;+  typedef void* fl_Overlay_Window;+  typedef void* fl_Pack;+  typedef void* fl_Paged_Device;+  typedef void* fl_Pixmap;+  typedef void* fl_Plugin;+  typedef void* fl_PNG_Image;+  typedef void* fl_PNM_Image;+  typedef void* fl_Positioner;+  typedef void* fl_PostScript;+  typedef void* fl_Preferences;+  typedef void* fl_Printer;+  typedef void* fl_Progress;+  typedef void* fl_Radio_Button;+  typedef void* fl_Radio_Light_Button;+  typedef void* fl_Radio_Round_Button;+  typedef void* fl_Repeat_Button;+  typedef void* fl_Return_Button;+  typedef void* fl_RGB_Image;+  typedef void* fl_Roller;+  typedef void* fl_Round_Button;+  typedef void* fl_Round_Clock;+  typedef void* fl_Scrollbar;+  typedef void* fl_Scroll;+  typedef void* fl_Secret_Input;+  typedef void* fl_Select_Browser;+  typedef void* fl_Shared_Image;+  typedef void* fl_show_input;+  typedef void* fl_Simple_Counter;+  typedef void* fl_Single_Window;+  typedef void* fl_Slider;+  typedef void* fl_Spinner;+  typedef void* fl_Sys_Menu_Bar;+  typedef void* fl_Table;+  typedef void* fl_Table_Row;+  typedef void* fl_Tabs;+  typedef void* fl_Text_Buffer;+  typedef void* fl_Text_Display;+  typedef void* fl_Text_Editor;+  typedef void* fl_Text_Selection;+  typedef void* fl_Tiled_Image;+  typedef void* fl_Tile;+  typedef void* fl_Timer;+  typedef void* fl_Toggle_Button;+  typedef void* fl_Toggle_Light_Button;+  typedef void* fl_Toggle_Round_Button;+  typedef void* fl_Tooltip;+  typedef void* fl_Tree;+  typedef void* fl_Tree_Item_Array;+  typedef void* fl_Tree_Item;+  typedef void* fl_Tree_Prefs;+  typedef void* fl_Valuator;+  typedef void* fl_Value_Input;+  typedef void* fl_Value_Output;+  typedef void* fl_Value_Slider;+  typedef void* fl_Widget;+  typedef void* fl_Wizard;+  typedef void* fl_XBM_Image;+  typedef void* fl_XPM_Image;+  typedef void* fl_Region;+  typedef void (fl_Callback )(fl_Widget, void*);+  typedef void (fl_Text_Buffer_Callback)(fl_Text_Buffer);+  typedef void (*Unfinished_Style_Cb)(int, void *);+  typedef void (fl_File_Chooser_Callback)(fl_File_Chooser,void*);+  typedef fl_Image (fl_Shared_Image_Handler)(const char *name, uchar *header,int headerlen);+  typedef struct Style_Table_Entry {+    Fl_Color    color;+    Fl_Font     font;+    Fl_Fontsize size;+    unsigned    attr;+  }Style_Table_Entry;+  /** Key function binding callback type */+  typedef int (fl_Key_Func)(int key, fl_Text_Editor Editor);+  /** Simple linked list associating a key/state to a function */+  typedef struct Key_BindingC {+    int           key;+    int           state;+    fl_Key_Func*  function;+    struct Key_BindingC* next;+  } Key_BindingC;++  typedef enum {+    SELECT_NONEC,+    SELECT_SINGLEC,+    SELECT_MULTIC+  }TableRowSelectModeC;+  typedef enum {+    CONTEXT_NONEC       = 0,+    CONTEXT_STARTPAGEC  = 0x01,+    CONTEXT_ENDPAGEC    = 0x02,+    CONTEXT_ROW_HEADERC = 0x04,+    CONTEXT_COL_HEADERC = 0x08,+    CONTEXT_CELLC       = 0x10,+    CONTEXT_TABLEC      = 0x20,+    CONTEXT_RC_RESIZEC  = 0x40+  }TableContextC ;+  typedef struct {+    int maxw;+    int maxh;+    int dw;+    int dh;+    int aspect;+  }fl_Window_size_range_args;+  typedef enum { TOP, BOTTOM, MIDDLE } Fl_Line_Position;+  typedef struct {+    int R;+    int C;+    int X;+    int Y;+  }fl_Window_draw_cell_default_args;+  typedef struct {+    /* From Fl_Widget */+    void 	 (*draw        )(fl_Table table);+    int          (*handle      )(fl_Table table,int event);+    void         (*resize      )(fl_Table table,int x, int y, int w, int h);+    void         (*show        )(fl_Table table);+    void         (*hide        )(fl_Table table);+    fl_Window    (*as_window   )(fl_Table table);+    fl_Gl_Window (*as_gl_window)(fl_Table table);+    /* From Fl_Group */+    fl_Group     (*as_group    )(fl_Table table);+    /* From Fl_Table */+    void         (*draw_cell   )(fl_Table table,TableContextC context,int R, int C, int X, int Y, int W, int H);+    void         (*clear       )(fl_Table table);+    void         (*set_rows    )(fl_Table table, int val);+    void         (*set_cols    )(fl_Table table, int val);+    /* Clean up */+    void         (*destroy_data)(fl_Table table);+  } fl_Table_Virtual_Funcs;+  typedef struct {+    void 	 (*draw        )(fl_Widget widget);+    int          (*handle      )(fl_Widget widget,int event);+    void         (*resize      )(fl_Widget widget,int x, int y, int w, int h);+    void         (*show        )(fl_Widget widget);+    void         (*hide        )(fl_Widget widget);+    fl_Window    (*as_window   )(fl_Widget widget);+    fl_Gl_Window (*as_gl_window)(fl_Widget widget);+    fl_Group     (*as_group    )(fl_Widget widget);+    /* Clean up */+    void         (*destroy_data)(fl_Widget widget);+  } fl_Widget_Virtual_Funcs;++  typedef struct {+    /* From Fl_Widget */+    void 	 (*draw        )(fl_Group group);+    int          (*handle      )(fl_Group group,int event);+    void         (*resize      )(fl_Group group,int x, int y, int w, int h);+    void         (*show        )(fl_Group group);+    void         (*hide        )(fl_Group group);+    fl_Window    (*as_window   )(fl_Group group);+    fl_Gl_Window (*as_gl_window)(fl_Group group);+    /* From Fl_Group */+    fl_Group     (*as_group    )(fl_Group group);+    /* Clean up */+    void         (*destroy_data)(fl_Group group);+  } fl_Group_Virtual_Funcs;+  typedef struct {+    /* From Fl_Widget */+    void 	 (*draw        )(fl_Window window);+    int          (*handle      )(fl_Window window,int event);+    void         (*resize      )(fl_Window window,int x, int y, int w, int h);+    void         (*show        )(fl_Window window);+    void         (*hide        )(fl_Window window);+    fl_Window    (*as_window   )(fl_Window window);+    fl_Gl_Window (*as_gl_window)(fl_Window window);+    /* From Fl_Group */+    fl_Window     (*as_group   )(fl_Window window);+    /* Fl_Browser Specific */+    void         (*flush       )(fl_Window window);+    /* Clean up */+    void         (*destroy_data)(fl_Window window);+  } fl_Window_Virtual_Funcs;++  typedef struct {+    /* From Fl_Widget */+    void 	 (*draw          )(fl_Browser browser);+    int          (*handle        )(fl_Browser browser,int event);+    void         (*resize        )(fl_Browser browser,int x, int y, int w, int h);+    fl_Window    (*as_window     )(fl_Browser browser);+    fl_Gl_Window (*as_gl_window  )(fl_Browser browser);+    /* From Fl_Group */+    fl_Group     (*as_group      )(fl_Browser browser);+    /* Fl_Browser Specific */+    void         (*show          )(fl_Browser browser);+    void         (*show_with_line)(fl_Browser browser, int line);+    void         (*hide          )(fl_Browser browser);+    void         (*hide_with_line)(fl_Browser browser, int line);+    /* Clean up */+    void         (*destroy_data)(fl_Browser browser);+  } fl_Browser_Virtual_Funcs;++  typedef struct {+    void      (*color_average)(fl_Image image, Fl_Color c, float i);+    fl_Image  (*copy         )(fl_Image image, int W, int H);+    void      (*desaturate   )(fl_Image image);+    void      (*draw         )(fl_Image image, int X, int Y, int W, int H, int cx, int cy);+    void      (*uncache      )(fl_Image image);+    void      (*destroy_data )(fl_Image image);+  } fl_Image_Virtual_Funcs;+  typedef struct {+    void 	 (*draw        )(fl_Valuator valuator);+    int          (*handle      )(fl_Valuator valuator,int event);+    void         (*resize      )(fl_Valuator valuator,int x, int y, int w, int h);+    void         (*show        )(fl_Valuator valuator);+    void         (*hide        )(fl_Valuator valuator);+    fl_Window    (*as_window   )(fl_Valuator valuator);+    fl_Gl_Window (*as_gl_window)(fl_Valuator valuator);+    fl_Group     (*as_group    )(fl_Valuator valuator);+    /* Clean up */+    void         (*destroy_data)(fl_Valuator valuator);+    /* Fl_Valuator specific */+    int          (*format      )(fl_Valuator valuator, char* format);+  } fl_Valuator_Virtual_Funcs;+  typedef fl_Table_Virtual_Funcs fl_Table_Row_Virtual_Funcs;+  typedef fl_Widget_Virtual_Funcs fl_Button_Virtual_Funcs;+  typedef fl_Widget_Virtual_Funcs fl_Int_Input_Virtual_Funcs;+  typedef fl_Browser_Virtual_Funcs fl_Multi_Browser_Virtual_Funcs;+  typedef fl_Widget_Virtual_Funcs fl_Menu__Virtual_Funcs;+  typedef fl_Widget_Virtual_Funcs fl_Menu_Bar_Virtual_Funcs;+  typedef fl_Widget_Virtual_Funcs fl_Box_Virtual_Funcs;+  typedef fl_Window_Virtual_Funcs fl_Gl_Window_Virtual_Funcs;+  typedef fl_Window_Virtual_Funcs fl_Double_Window_Virtual_Funcs;+  typedef fl_Window_Virtual_Funcs fl_Single_Window_Virtual_Funcs;+#ifdef __cplusplus+}+#endif+#endif /* #ifndef __FL_TYPES_H */
+ c-src/Fl_ValuatorC.cpp view
@@ -0,0 +1,524 @@+#include "Fl_ValuatorC.h"+#ifdef __cplusplus+Fl_DerivedValuator::Fl_DerivedValuator(int X, int Y, int W, int H, const char *l, fl_Valuator_Virtual_Funcs* funcs) : Fl_Valuator(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = 0;+ }+Fl_DerivedValuator::Fl_DerivedValuator(int X, int Y, int W, int H, fl_Valuator_Virtual_Funcs* funcs):Fl_Valuator(X,Y,W,H,0){+    overriddenFuncs = funcs;+    other_data = 0;+  }+Fl_DerivedValuator::~Fl_DerivedValuator(){+  destroy_data();+  free(overriddenFuncs);+}+void* Fl_DerivedValuator::get_other_data(){+  return this->other_data;+}+void Fl_DerivedValuator::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedValuator::destroy_data(){+  if (this->overriddenFuncs->destroy_data != NULL){+    this->overriddenFuncs->destroy_data((fl_Box) this);+  }+}+void Fl_DerivedValuator::draw_box(){+  Fl_Valuator::draw_box();+}+void Fl_DerivedValuator::draw_box(Fl_Boxtype t, Fl_Color c){+  Fl_Valuator::draw_box(t,c);+}+void Fl_DerivedValuator::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+  Fl_Valuator::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedValuator::draw_backdrop(){+  Fl_Valuator::draw_backdrop();+}+void Fl_DerivedValuator::draw_focus(){+  Fl_Valuator::draw_focus();+}+void Fl_DerivedValuator::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+  Fl_Valuator::draw_focus(t,x,y,w,h);+}+void Fl_DerivedValuator::draw_label(){+  Fl_Valuator::draw_label();+}+void Fl_DerivedValuator::draw_label(int x,int y,int w,int h,Fl_Align alignment){+  Fl_Valuator::draw_label(x,y,w,h,alignment);+}+int Fl_DerivedValuator::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Box) this,event);+  }+  else {+    i = Fl_Valuator::handle(event);+  }+  return i;+}+void Fl_DerivedValuator::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Box) this,x,y,w,h);+  }+  else {+    Fl_Valuator::resize(x,y,w,h);+  }+}+void Fl_DerivedValuator::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Box) this);+  }+  else {+    Fl_Valuator::show();+  }+}+void Fl_DerivedValuator::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Box) this);+  }+  else {+    Fl_Valuator::hide();+  }+}+void Fl_DerivedValuator::draw(){+  if (this->overriddenFuncs->draw != NULL) {+    this->overriddenFuncs->draw((fl_Box) this);+  }+}+Fl_Window* Fl_DerivedValuator::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Box) this)));+  }+  else {+    win = Fl_Valuator::as_window();+  }+  return win;+}+Fl_Gl_Window* Fl_DerivedValuator::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Box) this)));+  }+  else {+    win = Fl_Valuator::as_gl_window();+  }+  return win;+}+int Fl_DerivedValuator::format(char* format){+  int result;+  if (this->overriddenFuncs->format != NULL) {+    result = ((this->overriddenFuncs->format((fl_Valuator) this, format)));+  }+  else {+    result = Fl_Valuator::format(format);+  }+  return result;+}+EXPORT {+#endif+  FL_EXPORT_C(fl_Valuator_Virtual_Funcs*, Fl_Valuator_default_virtual_funcs)(){+    fl_Valuator_Virtual_Funcs* ptr = (fl_Valuator_Virtual_Funcs*)malloc(sizeof(fl_Valuator_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->hide = NULL;+    ptr->as_window = NULL;+    ptr->as_gl_window = NULL;+    ptr->destroy_data = NULL;+    ptr->format = NULL;+    return ptr;+  }+  FL_EXPORT_C(int,Fl_Valuator_handle_super)(fl_Valuator valuator,int event){+    return (static_cast<Fl_DerivedValuator*>(valuator))->Fl_Valuator::handle(event);+  }+  FL_EXPORT_C(int,Fl_Valuator_handle )(fl_Valuator valuator, int event){+    return (static_cast<Fl_DerivedValuator*>(valuator))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Valuator_resize_super )(fl_Valuator valuator,int x, int y, int w, int h){+    (static_cast<Fl_DerivedValuator*>(valuator))->Fl_Valuator::resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Valuator_resize )(fl_Valuator valuator,int x, int y, int w, int h){+    (static_cast<Fl_DerivedValuator*>(valuator))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Valuator_show_super)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->Fl_Valuator::show();+  }+  FL_EXPORT_C(void,Fl_Valuator_show )(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->show();+  }+  FL_EXPORT_C(void,Fl_Valuator_hide_super)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->Fl_Valuator::hide();+  }+  FL_EXPORT_C(void,Fl_Valuator_hide )(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Valuator_as_window_super)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->Fl_Valuator::as_window();+  }+  FL_EXPORT_C(fl_Window,Fl_Valuator_as_window )(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->as_window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Valuator_window)(fl_Valuator widget){+    return (fl_Window) (static_cast<Fl_DerivedValuator*>(widget))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Valuator_top_window)(fl_Valuator widget){+    return (fl_Window) (static_cast<Fl_DerivedValuator*>(widget))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Valuator_top_window_offset)(fl_Valuator widget, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedValuator*>(widget))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Valuator_as_gl_window_super)(fl_Valuator valuator){+    return (fl_Gl_Window) (static_cast<Fl_DerivedValuator*>(valuator))->Fl_Valuator::as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Valuator_as_gl_window )(fl_Valuator valuator){+    return (fl_Gl_Window) (static_cast<Fl_DerivedValuator*>(valuator))->as_gl_window();+  };+  FL_EXPORT_C(fl_Group,Fl_Valuator_parent)(fl_Valuator valuator){+    return (fl_Group) (static_cast<Fl_DerivedValuator*>(valuator))->parent();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_parent)(fl_Valuator valuator,fl_Group grp){+    (static_cast<Fl_DerivedValuator*>(valuator))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Valuator_type)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->type();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_type)(fl_Valuator valuator,uchar t){+    (static_cast<Fl_DerivedValuator*>(valuator))->type(t);+  }++FL_EXPORT_C(void, Fl_Valuator_draw_box)(fl_Valuator Valuator){+ (static_cast<Fl_DerivedValuator*>(Valuator))->draw_box();+}+FL_EXPORT_C(void, Fl_Valuator_draw_box_with_tc)(fl_Valuator Valuator,Fl_Boxtype t, Fl_Color c){+ (static_cast<Fl_DerivedValuator*>(Valuator))->draw_box(t,c);+}+FL_EXPORT_C(void, Fl_Valuator_draw_box_with_txywhc)(fl_Valuator Valuator,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+ (static_cast<Fl_DerivedValuator*>(Valuator))->draw_box(t,x,y,w,h,c);+}+FL_EXPORT_C(void, Fl_Valuator_draw_backdrop)(fl_Valuator Valuator){+ (static_cast<Fl_DerivedValuator*>(Valuator))->draw_backdrop();+}+FL_EXPORT_C(void, Fl_Valuator_draw_focus)(fl_Valuator Valuator){+ (static_cast<Fl_DerivedValuator*>(Valuator))->draw_focus();+}+FL_EXPORT_C(void, Fl_Valuator_draw_focus_with_txywh)(fl_Valuator Valuator,Fl_Boxtype t, int x,int y,int w,int h){+ (static_cast<Fl_DerivedValuator*>(Valuator))->draw_focus(t,x,y,w,h);+}+FL_EXPORT_C(void, Fl_Valuator_draw_label)(fl_Valuator Valuator){+ (static_cast<Fl_DerivedValuator*>(Valuator))->draw_label();+}+  FL_EXPORT_C(int,Fl_Valuator_x)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->x();+  }+  FL_EXPORT_C(int,Fl_Valuator_y)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->y();+  }+  FL_EXPORT_C(int,Fl_Valuator_w)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->w();+  }+  FL_EXPORT_C(int,Fl_Valuator_h)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->h();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_align)(fl_Valuator valuator, Fl_Align alignment){+    (static_cast<Fl_DerivedValuator*>(valuator))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Valuator_align)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Valuator_box)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->box();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_box)(fl_Valuator valuator,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedValuator*>(valuator))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Valuator_color)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->color();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_color)(fl_Valuator valuator,Fl_Color bg){+    (static_cast<Fl_DerivedValuator*>(valuator))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Valuator_set_color_with_bg_sel)(fl_Valuator valuator,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedValuator*>(valuator))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Valuator_selection_color)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_selection_color)(fl_Valuator valuator,Fl_Color a){+    (static_cast<Fl_DerivedValuator*>(valuator))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Valuator_label)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->label();+  }+  FL_EXPORT_C(void,Fl_Valuator_copy_label)(fl_Valuator valuator,const char* new_label){+    (static_cast<Fl_DerivedValuator*>(valuator))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Valuator_set_label)(fl_Valuator valuator,const char* text){+    (static_cast<Fl_DerivedValuator*>(valuator))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Valuator_labeltype)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_labeltype)(fl_Valuator valuator,Fl_Labeltype a){+    (static_cast<Fl_DerivedValuator*>(valuator))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Valuator_set_labelcolor)(fl_Valuator valuator,Fl_Color c){+    (static_cast<Fl_DerivedValuator*>(valuator))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Valuator_labelcolor)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Valuator_labelfont)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_labelfont)(fl_Valuator valuator,Fl_Font c){+    (static_cast<Fl_DerivedValuator*>(valuator))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Valuator_labelsize)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_labelsize)(fl_Valuator valuator,Fl_Fontsize pix){+    (static_cast<Fl_DerivedValuator*>(valuator))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Valuator_image)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->image();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_image)(fl_Valuator valuator,fl_Image pix){+    (static_cast<Fl_DerivedValuator*>(valuator))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Valuator_deimage)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->deimage();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_deimage)(fl_Valuator valuator,fl_Image pix){+    (static_cast<Fl_DerivedValuator*>(valuator))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Valuator_tooltip)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Valuator_copy_tooltip)(fl_Valuator valuator,const char* text){+    (static_cast<Fl_DerivedValuator*>(valuator))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Valuator_set_tooltip)(fl_Valuator valuator,const char* text){+    (static_cast<Fl_DerivedValuator*>(valuator))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Valuator_set_callback_with_user_data)(fl_Valuator valuator,fl_Callback cb,void* p){+    Fl_Valuator* castedBox = (static_cast<Fl_DerivedValuator*>(valuator));+    new C_to_Fl_Callback(castedBox, cb, p);+  }+  FL_EXPORT_C(void,Fl_Valuator_set_callback)(fl_Valuator valuator,fl_Callback cb){+    Fl_Valuator* castedBox = (static_cast<Fl_DerivedValuator*>(valuator));+    new C_to_Fl_Callback(castedBox, cb);+  }+  FL_EXPORT_C(void*,Fl_Valuator_user_data)(fl_Valuator valuator){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedValuator*>(valuator))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedValuator*>(valuator))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Valuator_set_user_data)(fl_Valuator valuator,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Valuator*>(valuator))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Valuator*>(valuator))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Valuator*>(valuator))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Valuator_argument)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->argument();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_argument)(fl_Valuator valuator,long v){+    (static_cast<Fl_DerivedValuator*>(valuator))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Valuator_when)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->when();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_when)(fl_Valuator valuator,uchar i){+    (static_cast<Fl_DerivedValuator*>(valuator))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Valuator_visible)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->visible();+  }+  FL_EXPORT_C(int,Fl_Valuator_visible_r)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_visible)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->visible();+  }+  FL_EXPORT_C(void,Fl_Valuator_clear_visible)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Valuator_active)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->active();+  }+  FL_EXPORT_C(int,Fl_Valuator_active_r)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->active_r();+  }+  FL_EXPORT_C(void,Fl_Valuator_activate)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->activate();+  }+  FL_EXPORT_C(void,Fl_Valuator_deactivate)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Valuator_output)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->output();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_output)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->output();+  }+  FL_EXPORT_C(void,Fl_Valuator_clear_output)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Valuator_takesevents)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_changed)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->changed();+  }+  FL_EXPORT_C(void,Fl_Valuator_clear_changed)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Valuator_take_focus)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_visible_focus)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Valuator_clear_visible_focus)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Valuator_modify_visible_focus)(fl_Valuator valuator,int v){+    (static_cast<Fl_DerivedValuator*>(valuator))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Valuator_visible_focus)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Valuator_do_callback)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Valuator_do_callback_with_widget_and_user_data)(fl_Valuator valuator,fl_Widget w,long arg){+    (static_cast<Fl_DerivedValuator*>(valuator))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Valuator_do_callback_with_widget_and_default_user_data)(fl_Valuator valuator,fl_Widget w){+    (static_cast<Fl_DerivedValuator*>(valuator))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Valuator_contains)(fl_Valuator valuator,fl_Widget w){+    return (static_cast<Fl_DerivedValuator*>(valuator))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Valuator_inside)(fl_Valuator valuator,fl_Widget w){+    return (static_cast<Fl_DerivedValuator*>(valuator))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Valuator_redraw)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->redraw();+  }+  FL_EXPORT_C(void,Fl_Valuator_redraw_label)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Valuator_damage)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->damage();+  }+  FL_EXPORT_C(void,Fl_Valuator_clear_damage_with_bitmask)(fl_Valuator valuator,uchar c){+    (static_cast<Fl_DerivedValuator*>(valuator))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Valuator_clear_damage)(fl_Valuator valuator){+    (static_cast<Fl_DerivedValuator*>(valuator))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Valuator_damage_with_text)(fl_Valuator valuator,uchar c){+    (static_cast<Fl_DerivedValuator*>(valuator))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Valuator_damage_inside_widget)(fl_Valuator valuator,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedValuator*>(valuator))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Valuator_draw_label_with_xywh_alignment)(fl_Valuator valuator,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedValuator*>(valuator))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Valuator_measure_label)(fl_Valuator valuator,int* ww,int* hh){+    (static_cast<Fl_DerivedValuator*>(valuator))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(void*, Fl_Valuator_other_data)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->get_other_data();+  }+  FL_EXPORT_C(void, Fl_Valuator_set_other_data)(fl_Valuator valuator, void* v){+    (static_cast<Fl_DerivedValuator*>(valuator))->set_other_data(v);+  }+  FL_EXPORT_C(fl_Valuator, Fl_Valuator_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    fl_Valuator_Virtual_Funcs* funcs = Fl_Valuator_default_virtual_funcs();+    Fl_DerivedValuator* valuator = new Fl_DerivedValuator(x,y,w,h,label,funcs);+    return (static_cast<fl_Valuator>(valuator));+  }+  FL_EXPORT_C(fl_Valuator,    Fl_OverriddenValuator_New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Valuator_Virtual_Funcs* funcs){+    Fl_DerivedValuator* valuator = new Fl_DerivedValuator(x,y,w,h,label,funcs);+    return (static_cast<fl_Valuator>(valuator));+  }+  FL_EXPORT_C(fl_Valuator, Fl_Valuator_New)(int x, int y, int w, int h) {+    fl_Valuator_Virtual_Funcs* funcs = Fl_Valuator_default_virtual_funcs();+    Fl_DerivedValuator* valuator = new Fl_DerivedValuator(x,y,w,h,0,funcs);+    return (fl_Valuator)valuator;+  }+  FL_EXPORT_C(fl_Valuator   , Fl_OverriddenValuator_New)(int x, int y, int w, int h, fl_Valuator_Virtual_Funcs* funcs){+    Fl_DerivedValuator* valuator = new Fl_DerivedValuator(x,y,w,h,0,funcs);+    return (fl_Valuator)valuator;+  }+  FL_EXPORT_C(void,      Fl_Valuator_Destroy)(fl_Valuator valuator){+    delete (static_cast<Fl_DerivedValuator*>(valuator));+  }+  FL_EXPORT_C(void,Fl_Valuator_bounds)(fl_Valuator valuator,double a,double b){+    (static_cast<Fl_DerivedValuator*>(valuator))->bounds(a,b);+  }+  FL_EXPORT_C(double,Fl_Valuator_minimum)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->minimum();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_minimum)(fl_Valuator valuator,double a){+    (static_cast<Fl_DerivedValuator*>(valuator))->minimum(a);+  }+  FL_EXPORT_C(double,Fl_Valuator_maximum)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->maximum();+  }+  FL_EXPORT_C(void,Fl_Valuator_set_maximum)(fl_Valuator valuator,double a){+    (static_cast<Fl_DerivedValuator*>(valuator))->maximum(a);+  }+  FL_EXPORT_C(void,Fl_Valuator_precision)(fl_Valuator valuator,int precision){+    (static_cast<Fl_DerivedValuator*>(valuator))->precision(precision);+  }+  FL_EXPORT_C(void,Fl_Valuator_range)(fl_Valuator valuator,double a,double b){+    (static_cast<Fl_DerivedValuator*>(valuator))->range(a,b);+  }+  FL_EXPORT_C(void,Fl_Valuator_set_step)(fl_Valuator valuator,int a){+    (static_cast<Fl_DerivedValuator*>(valuator))->step(a);+  }+  FL_EXPORT_C(void,Fl_Valuator_set_step_with_a_b)(fl_Valuator valuator,double a,int b){+    (static_cast<Fl_DerivedValuator*>(valuator))->step(a,b);+  }+  FL_EXPORT_C(void,Fl_Valuator_step_with_s)(fl_Valuator valuator,double s){+    (static_cast<Fl_DerivedValuator*>(valuator))->step(s);+  }+  FL_EXPORT_C(double,Fl_Valuator_step)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->step();+  }+  FL_EXPORT_C(double,Fl_Valuator_value)(fl_Valuator valuator){+    return (static_cast<Fl_DerivedValuator*>(valuator))->value();+  }+  FL_EXPORT_C(int,Fl_Valuator_set_value)(fl_Valuator valuator,double v){+    return (static_cast<Fl_DerivedValuator*>(valuator))->value(v);+  }+  FL_EXPORT_C(int,Fl_Valuator_format)(fl_Valuator valuator,char* format){+    return (static_cast<Fl_DerivedValuator*>(valuator))->format(format);+  }+  FL_EXPORT_C(double,Fl_Valuator_round)(fl_Valuator valuator,double v){+    return (static_cast<Fl_DerivedValuator*>(valuator))->round(v);+  }+  FL_EXPORT_C(double,Fl_Valuator_clamp)(fl_Valuator valuator,double v){+    return (static_cast<Fl_DerivedValuator*>(valuator))->clamp(v);+  }+  FL_EXPORT_C(double,Fl_Valuator_increment)(fl_Valuator valuator,double v,int n){+    return (static_cast<Fl_DerivedValuator*>(valuator))->increment(v,n);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_ValuatorC.h view
@@ -0,0 +1,164 @@+#ifndef __FL_VALUATOR_C__+#define __FL_VALUATOR_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Valuator is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Valuator.H"+#include "Fl_CallbackC.h"+EXPORT {+  class Fl_DerivedValuator : public Fl_Valuator {+    fl_Valuator_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void destroy_data();+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    virtual int handle(int event);+    void resize_super(int x, int y, int w, int h);+    virtual void resize(int x, int y, int w, int h);+    virtual void show();+    virtual void hide();+    virtual Fl_Window* as_window();+    virtual Fl_Gl_Window* as_gl_window();+    virtual int format(char* format);+    Fl_DerivedValuator(int X, int Y, int W, int H, const char *l, fl_Valuator_Virtual_Funcs* funcs);+    Fl_DerivedValuator(int X, int Y, int W, int H, fl_Valuator_Virtual_Funcs* funcs);+    ~Fl_DerivedValuator();+  };+#endif+  FL_EXPORT_C(int,Fl_Valuator_handle)(fl_Widget self, int event);+  FL_EXPORT_C(int,Fl_Valuator_handle_super)(fl_Widget self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Valuator_parent)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_parent)(fl_Valuator valuator, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Valuator_type)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_type)(fl_Valuator valuator, uchar t);++FL_EXPORT_C(void, Fl_Valuator_draw_box)(fl_Valuator Valuator);+FL_EXPORT_C(void, Fl_Valuator_draw_box_with_tc)(fl_Valuator Valuator,Fl_Boxtype t, Fl_Color c);+FL_EXPORT_C(void, Fl_Valuator_draw_box_with_txywhc)(fl_Valuator Valuator,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+FL_EXPORT_C(void, Fl_Valuator_draw_backdrop)(fl_Valuator Valuator);+FL_EXPORT_C(void, Fl_Valuator_draw_focus)(fl_Valuator Valuator);+FL_EXPORT_C(void, Fl_Valuator_draw_focus_with_txywh)(fl_Valuator Valuator,Fl_Boxtype t, int x,int y,int w,int h);+FL_EXPORT_C(void, Fl_Valuator_draw_label)(fl_Valuator Valuator);+  FL_EXPORT_C(int,          Fl_Valuator_x)(fl_Valuator valuator);+  FL_EXPORT_C(int,          Fl_Valuator_y)(fl_Valuator valuator);+  FL_EXPORT_C(int,          Fl_Valuator_w)(fl_Valuator valuator);+  FL_EXPORT_C(int,          Fl_Valuator_h)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_align)(fl_Valuator valuator, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Valuator_align)(fl_Valuator valuator);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Valuator_box)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_box)(fl_Valuator valuator, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Valuator_color)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_color)(fl_Valuator valuator, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Valuator_set_color_with_bg_sel)(fl_Valuator valuator,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Valuator_selection_color)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_selection_color)(fl_Valuator valuator, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Valuator_label)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_copy_label)(fl_Valuator valuator, const char* new_label);+  FL_EXPORT_C(void,         Fl_Valuator_set_label)(fl_Valuator valuator, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Valuator_labeltype)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_labeltype)(fl_Valuator valuator, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Valuator_labelcolor)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_labelcolor)(fl_Valuator valuator, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Valuator_labelfont)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_labelfont)(fl_Valuator valuator, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Valuator_labelsize)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_labelsize)(fl_Valuator valuator, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Valuator_image)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_image)(fl_Valuator valuator, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Valuator_deimage)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_deimage)(fl_Valuator valuator, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Valuator_tooltip)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_copy_tooltip)(fl_Valuator valuator, const char* text);+  FL_EXPORT_C(void,         Fl_Valuator_set_tooltip)(fl_Valuator valuator, const char* text);+  FL_EXPORT_C(void,         Fl_Valuator_set_callback_with_user_data)(fl_Valuator valuator, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Valuator_set_callback)(fl_Valuator valuator, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Valuator_other_data)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_other_data)(fl_Valuator valuator, void* v);+  FL_EXPORT_C(void*,        Fl_Valuator_user_data)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_user_data)(fl_Valuator valuator, void* v);+  FL_EXPORT_C(long,         Fl_Valuator_argument)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_argument)(fl_Valuator valuator, long v);+  FL_EXPORT_C(Fl_When,      Fl_Valuator_when)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_when)(fl_Valuator valuator, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Valuator_visible)(fl_Valuator valuator);+  FL_EXPORT_C(int,          Fl_Valuator_visible_r)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_show_super)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_show)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_hide_super)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_hide)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_visible)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_clear_visible)(fl_Valuator valuator);+  FL_EXPORT_C(unsigned int, Fl_Valuator_active)(fl_Valuator valuator);+  FL_EXPORT_C(int,          Fl_Valuator_active_r)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_activate)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_deactivate)(fl_Valuator valuator);+  FL_EXPORT_C(unsigned int, Fl_Valuator_output)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_output)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_clear_output)(fl_Valuator valuator);+  FL_EXPORT_C(unsigned int, Fl_Valuator_takesevents)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_changed)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_clear_changed)(fl_Valuator valuator);+  FL_EXPORT_C(int,          Fl_Valuator_take_focus)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_set_visible_focus)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_clear_visible_focus)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_modify_visible_focus)(fl_Valuator valuator, int v);+  FL_EXPORT_C(unsigned int, Fl_Valuator_visible_focus)(fl_Valuator valuator);+  FL_EXPORT_C(int,          Fl_Valuator_contains)(fl_Valuator valuator, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Valuator_inside)(fl_Valuator valuator, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Valuator_redraw)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_redraw_label)(fl_Valuator valuator);+  FL_EXPORT_C(uchar,        Fl_Valuator_damage)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_clear_damage_with_bitmask)(fl_Valuator valuator, uchar c);+  FL_EXPORT_C(void,         Fl_Valuator_clear_damage)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_damage_with_text)(fl_Valuator valuator, uchar c);+  FL_EXPORT_C(void,         Fl_Valuator_damage_inside_widget)(fl_Valuator valuator, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Valuator_draw_label_with_xywh_alignment)(fl_Valuator valuator, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Valuator_measure_label)(fl_Valuator valuator, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Valuator_window)(fl_Valuator valuator);+  FL_EXPORT_C(fl_Window,    Fl_Valuator_top_window)(fl_Valuator valuator);+  FL_EXPORT_C(fl_Window ,   Fl_Valuator_top_window_offset)(fl_Valuator valuator, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Gl_Window, Fl_Valuator_as_gl_window_super)(fl_Valuator valuator);+  FL_EXPORT_C(fl_Gl_Window, Fl_Valuator_as_gl_window)(fl_Valuator valuator);+  FL_EXPORT_C(void,         Fl_Valuator_resize_super)(fl_Table table,int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Valuator_resize)(fl_Table table,int X, int Y, int W, int H);++  FL_EXPORT_C(fl_Valuator_Virtual_Funcs*, Fl_Valuator_default_virtual_funcs)();+  FL_EXPORT_C(fl_Valuator,    Fl_Valuator_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Valuator,    Fl_OverriddenValuator_New_WithLabel)(int x, int y, int w, int h, const char* label, fl_Valuator_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Valuator   , Fl_Valuator_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Valuator   , Fl_OverriddenValuator_New)(int x, int y, int w, int h, fl_Valuator_Virtual_Funcs* funcs);+  FL_EXPORT_C(void,      Fl_Valuator_Destroy)(fl_Valuator valuator);++  FL_EXPORT_C(void, Fl_Valuator_bounds)(fl_Valuator valuator, double a, double b);+  FL_EXPORT_C(double, Fl_Valuator_minimum)(fl_Valuator valuator);+  FL_EXPORT_C(void, Fl_Valuator_set_minimum)(fl_Valuator valuator, double a);+  FL_EXPORT_C(double, Fl_Valuator_maximum)(fl_Valuator valuator);+  FL_EXPORT_C(void, Fl_Valuator_set_maximum)(fl_Valuator valuator, double a);+  FL_EXPORT_C(void, Fl_Valuator_range)(fl_Valuator valuator, double a, double b);+  FL_EXPORT_C(void, Fl_Valuator_set_step)(fl_Valuator valuator, int a);+  FL_EXPORT_C(void, Fl_Valuator_set_step_with_a_b)(fl_Valuator valuator, double a, int b);+  FL_EXPORT_C(void, Fl_Valuator_step_with_s)(fl_Valuator valuator, double s);+  FL_EXPORT_C(double, Fl_Valuator_step)(fl_Valuator valuator);+  FL_EXPORT_C(void, Fl_Valuator_precision)(fl_Valuator valuator, int precision);+  FL_EXPORT_C(double, Fl_Valuator_value)(fl_Valuator valuator);+  FL_EXPORT_C(int, Fl_Valuator_set_value)(fl_Valuator valuator, double v);+  FL_EXPORT_C(int, Fl_Valuator_format)(fl_Valuator valuator, char* format);+  FL_EXPORT_C(double, Fl_Valuator_round)(fl_Valuator valuator, double v);+  FL_EXPORT_C(double, Fl_Valuator_clamp)(fl_Valuator valuator, double v);+  FL_EXPORT_C(double, Fl_Valuator_increment)(fl_Valuator valuator, double v, int n);+#ifdef __cplusplus+}+#endif+#endif /* __FL_VALUATOR_C__ */
+ c-src/Fl_Value_InputC.cpp view
@@ -0,0 +1,363 @@+#include "Fl_Value_InputC.h"++#ifdef __cplusplus+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Value_Input_handle)(fl_Value_Input self, int event){+    return (static_cast<Fl_Value_Input*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Value_Input_parent)(fl_Value_Input value_input){+    return (fl_Group) (static_cast<Fl_Value_Input*>(value_input))->parent();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_parent)(fl_Value_Input value_input,fl_Group grp){+    (static_cast<Fl_Value_Input*>(value_input))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Value_Input_type)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->type();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_type)(fl_Value_Input value_input,uchar t){+    (static_cast<Fl_Value_Input*>(value_input))->type(t);+  }++  FL_EXPORT_C(int,Fl_Value_Input_x)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->x();+  }+  FL_EXPORT_C(int,Fl_Value_Input_y)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->y();+  }+  FL_EXPORT_C(int,Fl_Value_Input_w)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->w();+  }+  FL_EXPORT_C(int,Fl_Value_Input_h)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->h();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_align)(fl_Value_Input value_input, Fl_Align alignment){+    (static_cast<Fl_Value_Input*>(value_input))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Value_Input_align)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Value_Input_box)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->box();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_box)(fl_Value_Input value_input,Fl_Boxtype new_box){+    (static_cast<Fl_Value_Input*>(value_input))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Value_Input_color)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->color();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_color)(fl_Value_Input value_input,Fl_Color bg){+    (static_cast<Fl_Value_Input*>(value_input))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_color_with_bg_sel)(fl_Value_Input value_input,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Value_Input*>(value_input))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Value_Input_selection_color)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_selection_color)(fl_Value_Input value_input,Fl_Color a){+    (static_cast<Fl_Value_Input*>(value_input))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Value_Input_label)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->label();+  }+  FL_EXPORT_C(void,Fl_Value_Input_copy_label)(fl_Value_Input value_input,const char* new_label){+    (static_cast<Fl_Value_Input*>(value_input))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_label)(fl_Value_Input value_input,const char* text){+    (static_cast<Fl_Value_Input*>(value_input))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Value_Input_labeltype)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_labeltype)(fl_Value_Input value_input,Fl_Labeltype a){+    (static_cast<Fl_Value_Input*>(value_input))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_labelcolor)(fl_Value_Input value_input,Fl_Color c){+    (static_cast<Fl_Value_Input*>(value_input))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Value_Input_labelcolor)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Value_Input_labelfont)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_labelfont)(fl_Value_Input value_input,Fl_Font c){+    (static_cast<Fl_Value_Input*>(value_input))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Value_Input_labelsize)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_labelsize)(fl_Value_Input value_input,Fl_Fontsize pix){+    (static_cast<Fl_Value_Input*>(value_input))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Value_Input_image)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->image();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_image)(fl_Value_Input value_input,fl_Image pix){+    (static_cast<Fl_Value_Input*>(value_input))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Value_Input_deimage)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->deimage();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_deimage)(fl_Value_Input value_input,fl_Image pix){+    (static_cast<Fl_Value_Input*>(value_input))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Value_Input_tooltip)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Value_Input_copy_tooltip)(fl_Value_Input value_input,const char* text){+    (static_cast<Fl_Value_Input*>(value_input))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_tooltip)(fl_Value_Input value_input,const char* text){+    (static_cast<Fl_Value_Input*>(value_input))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_callback_with_user_data)(fl_Value_Input value_input,fl_Callback* cb,void* p){+    Fl_Value_Input* castedButton = (static_cast<Fl_Value_Input*>(value_input));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_callback)(fl_Value_Input value_input,fl_Callback* cb){+    Fl_Value_Input* castedButton = (static_cast<Fl_Value_Input*>(value_input));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Value_Input_user_data)(fl_Value_Input value_input){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Value_Input*>(value_input))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Value_Input*>(value_input))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_user_data)(fl_Value_Input value_input,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Value_Input*>(value_input))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Value_Input*>(value_input))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Value_Input*>(value_input))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Value_Input_argument)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->argument();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_argument)(fl_Value_Input value_input,long v){+    (static_cast<Fl_Value_Input*>(value_input))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Value_Input_when)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->when();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_when)(fl_Value_Input value_input,uchar i){+    (static_cast<Fl_Value_Input*>(value_input))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Input_visible)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->visible();+  }+  FL_EXPORT_C(int,Fl_Value_Input_visible_r)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_visible)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->visible();+  }+  FL_EXPORT_C(void,Fl_Value_Input_clear_visible)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Input_active)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->active();+  }+  FL_EXPORT_C(int,Fl_Value_Input_active_r)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->active_r();+  }+  FL_EXPORT_C(void,Fl_Value_Input_activate)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->activate();+  }+  FL_EXPORT_C(void,Fl_Value_Input_deactivate)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Input_output)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->output();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_output)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->output();+  }+  FL_EXPORT_C(void,Fl_Value_Input_clear_output)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Input_takesevents)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_changed)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->changed();+  }+  FL_EXPORT_C(void,Fl_Value_Input_clear_changed)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Value_Input_take_focus)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_visible_focus)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Value_Input_clear_visible_focus)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Value_Input_modify_visible_focus)(fl_Value_Input value_input,int v){+    (static_cast<Fl_Value_Input*>(value_input))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Input_visible_focus)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Value_Input_do_callback)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Value_Input_do_callback_with_widget_and_user_data)(fl_Value_Input value_input,fl_Widget w,long arg){+    (static_cast<Fl_Value_Input*>(value_input))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Value_Input_do_callback_with_widget_and_default_user_data)(fl_Value_Input value_input,fl_Widget w){+    (static_cast<Fl_Value_Input*>(value_input))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Value_Input_contains)(fl_Value_Input value_input,fl_Widget w){+    return (static_cast<Fl_Value_Input*>(value_input))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Value_Input_inside)(fl_Value_Input value_input,fl_Widget w){+    return (static_cast<Fl_Value_Input*>(value_input))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Value_Input_redraw)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->redraw();+  }+  FL_EXPORT_C(void,Fl_Value_Input_redraw_label)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Value_Input_damage)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->damage();+  }+  FL_EXPORT_C(void,Fl_Value_Input_clear_damage_with_bitmask)(fl_Value_Input value_input,uchar c){+    (static_cast<Fl_Value_Input*>(value_input))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Value_Input_clear_damage)(fl_Value_Input value_input){+    (static_cast<Fl_Value_Input*>(value_input))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Value_Input_damage_with_text)(fl_Value_Input value_input,uchar c){+    (static_cast<Fl_Value_Input*>(value_input))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Value_Input_damage_inside_widget)(fl_Value_Input value_input,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Value_Input*>(value_input))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Value_Input_draw_label_with_xywh_alignment)(fl_Value_Input value_input,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Value_Input*>(value_input))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Value_Input_measure_label)(fl_Value_Input value_input,int* ww,int* hh){+    (static_cast<Fl_Value_Input*>(value_input))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Value_Input_window)(fl_Value_Input value_input){+    return (fl_Window) (static_cast<Fl_Value_Input*>(value_input))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Value_Input_top_window)(fl_Value_Input value_input){+    return (fl_Window) (static_cast<Fl_Value_Input*>(value_input))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Value_Input_top_window_offset)(fl_Value_Input value_input, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Value_Input*>(value_input))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Value_Input_as_group)(fl_Value_Input value_input){+    return (fl_Group) (static_cast<Fl_Value_Input*>(value_input))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Value_Input_as_gl_window)(fl_Value_Input value_input){+    return (fl_Gl_Window) (static_cast<Fl_Value_Input*>(value_input))->as_gl_window();+  }+  /* Inherited from Fl_Valuator */++  FL_EXPORT_C(void,Fl_Value_Input_bounds)(fl_Value_Input value_input,double a,double b){+    (static_cast<Fl_Value_Input*>(value_input))->bounds(a,b);+  }+  FL_EXPORT_C(double,Fl_Value_Input_minimum)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->minimum();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_minimum)(fl_Value_Input value_input,double a){+    (static_cast<Fl_Value_Input*>(value_input))->minimum(a);+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_maximum)(fl_Value_Input value_input,double a){+    (static_cast<Fl_Value_Input*>(value_input))->maximum(a);+  }+  FL_EXPORT_C(void,Fl_Value_Input_range)(fl_Value_Input value_input,double a,double b){+    (static_cast<Fl_Value_Input*>(value_input))->range(a,b);+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_step_with_a)(fl_Value_Input value_input,int a){+    (static_cast<Fl_Value_Input*>(value_input))->step(a);+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_step_with_a_b)(fl_Value_Input value_input,double a,int b){+    (static_cast<Fl_Value_Input*>(value_input))->step(a,b);+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_step_with_s)(fl_Value_Input value_input,double s){+    (static_cast<Fl_Value_Input*>(value_input))->step(s);+  }+  FL_EXPORT_C(double,Fl_Value_Input_step)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->step();+  }+  FL_EXPORT_C(void,Fl_Value_Input_precision)(fl_Value_Input value_input, int p){+    (static_cast<Fl_Value_Input*>(value_input))->precision(p);+  }+  FL_EXPORT_C(double,Fl_Value_Input_value)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->value();+  }+  FL_EXPORT_C(int,Fl_Value_Input_set_value)(fl_Value_Input value_input,double v){+    return (static_cast<Fl_Value_Input*>(value_input))->value(v);+  }+  FL_EXPORT_C(double,Fl_Value_Input_round)(fl_Value_Input value_input,double v){+    return (static_cast<Fl_Value_Input*>(value_input))->round(v);+  }+  FL_EXPORT_C(double,Fl_Value_Input_clamp)(fl_Value_Input value_input,double v){+    return (static_cast<Fl_Value_Input*>(value_input))->clamp(v);+  }+  FL_EXPORT_C(double,Fl_Value_Input_increment)(fl_Value_Input value_input,double v,int n){+    return (static_cast<Fl_Value_Input*>(value_input))->increment(v,n);+  }+  FL_EXPORT_C(fl_Value_Input,  Fl_Value_Input_New_WithLabel)(int x, int y, int w, int h, const char* label){+    Fl_Value_Input* value_input = new Fl_Value_Input(x,y,w,h,label);+    return (static_cast<fl_Value_Input>(value_input));+  }+  FL_EXPORT_C(fl_Value_Input, Fl_Value_Input_New)(int x, int y, int w, int h){+    Fl_Value_Input* value_input = new Fl_Value_Input(x,y,w,h,0);+    return (static_cast<fl_Value_Input>(value_input));+  }+  FL_EXPORT_C(void,Fl_Value_Input_Destroy)(fl_Value_Input value_input){+    delete (static_cast<Fl_Value_Input*>(value_input));+  }+  FL_EXPORT_C(char,Fl_Value_Input_soft)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->soft();+  }+  FL_EXPORT_C(void,Fl_Value_Input_resize)(fl_Value_Input value_input,int X,int Y,int W,int H){+    (static_cast<Fl_Value_Input*>(value_input))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_soft)(fl_Value_Input value_input,char s){+    (static_cast<Fl_Value_Input*>(value_input))->soft(s);+  }+  FL_EXPORT_C(int,Fl_Value_Input_shortcut)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->shortcut();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_shortcut)(fl_Value_Input value_input,int v){+    (static_cast<Fl_Value_Input*>(value_input))->shortcut(v);+  }+  FL_EXPORT_C(Fl_Font,Fl_Value_Input_textfont)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->textfont();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_textfont)(fl_Value_Input value_input,int v){+    (static_cast<Fl_Value_Input*>(value_input))->textfont(v);+  }+  FL_EXPORT_C(int,Fl_Value_Input_textsize)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->textsize();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_textsize)(fl_Value_Input value_input,int v){+    (static_cast<Fl_Value_Input*>(value_input))->textsize(v);+  }+  FL_EXPORT_C(Fl_Color,Fl_Value_Input_textcolor)(fl_Value_Input value_input){+    return (static_cast<Fl_Value_Input*>(value_input))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Value_Input_set_textcolor)(fl_Value_Input value_input,int v){+    (static_cast<Fl_Value_Input*>(value_input))->textcolor(v);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Value_InputC.h view
@@ -0,0 +1,133 @@+#ifndef __FL_VALUE_INPUT_C__+#define __FL_VALUE_INPUT_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Value_Input.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Value_Input_handle)(fl_Value_Input self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Value_Input_parent)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_parent)(fl_Value_Input value_input, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Value_Input_type)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_type)(fl_Value_Input value_input, uchar t);++  FL_EXPORT_C(int,          Fl_Value_Input_x)(fl_Value_Input value_input);+  FL_EXPORT_C(int,          Fl_Value_Input_y)(fl_Value_Input value_input);+  FL_EXPORT_C(int,          Fl_Value_Input_w)(fl_Value_Input value_input);+  FL_EXPORT_C(int,          Fl_Value_Input_h)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_align)(fl_Value_Input value_input, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Value_Input_align)(fl_Value_Input value_input);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Value_Input_box)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_box)(fl_Value_Input value_input, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Value_Input_color)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_color)(fl_Value_Input value_input, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Value_Input_set_color_with_bg_sel)(fl_Value_Input value_input,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Value_Input_selection_color)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_selection_color)(fl_Value_Input value_input, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Value_Input_label)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_copy_label)(fl_Value_Input value_input, const char* new_label);+  FL_EXPORT_C(void,         Fl_Value_Input_set_label)(fl_Value_Input value_input, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Value_Input_labeltype)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_labeltype)(fl_Value_Input value_input, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Value_Input_labelcolor)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_labelcolor)(fl_Value_Input value_input, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Value_Input_labelfont)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_labelfont)(fl_Value_Input value_input, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Value_Input_labelsize)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_labelsize)(fl_Value_Input value_input, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Value_Input_image)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_image)(fl_Value_Input value_input, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Value_Input_deimage)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_deimage)(fl_Value_Input value_input, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Value_Input_tooltip)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_copy_tooltip)(fl_Value_Input value_input, const char* text);+  FL_EXPORT_C(void,         Fl_Value_Input_set_tooltip)(fl_Value_Input value_input, const char* text);+  FL_EXPORT_C(void,         Fl_Value_Input_set_callback_with_user_data)(fl_Value_Input value_input, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Value_Input_set_callback)(fl_Value_Input value_input, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Value_Input_user_data)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_user_data)(fl_Value_Input value_input, void* v);+  FL_EXPORT_C(long,         Fl_Value_Input_argument)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_argument)(fl_Value_Input value_input, long v);+  FL_EXPORT_C(Fl_When,      Fl_Value_Input_when)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_when)(fl_Value_Input value_input, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Value_Input_visible)(fl_Value_Input value_input);+  FL_EXPORT_C(int,          Fl_Value_Input_visible_r)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_visible)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_clear_visible)(fl_Value_Input value_input);+  FL_EXPORT_C(unsigned int, Fl_Value_Input_active)(fl_Value_Input value_input);+  FL_EXPORT_C(int,          Fl_Value_Input_active_r)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_activate)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_deactivate)(fl_Value_Input value_input);+  FL_EXPORT_C(unsigned int, Fl_Value_Input_output)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_output)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_clear_output)(fl_Value_Input value_input);+  FL_EXPORT_C(unsigned int, Fl_Value_Input_takesevents)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_changed)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_clear_changed)(fl_Value_Input value_input);+  FL_EXPORT_C(int,          Fl_Value_Input_take_focus)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_set_visible_focus)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_clear_visible_focus)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_modify_visible_focus)(fl_Value_Input value_input, int v);+  FL_EXPORT_C(unsigned int, Fl_Value_Input_visible_focus)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_do_callback)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_do_callback_with_widget_and_user_data)(fl_Value_Input value_input, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Value_Input_do_callback_with_widget_and_default_user_data)(fl_Value_Input value_input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Value_Input_contains)(fl_Value_Input value_input, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Value_Input_inside)(fl_Value_Input value_input, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Value_Input_redraw)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_redraw_label)(fl_Value_Input value_input);+  FL_EXPORT_C(uchar,        Fl_Value_Input_damage)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_clear_damage_with_bitmask)(fl_Value_Input value_input, uchar c);+  FL_EXPORT_C(void,         Fl_Value_Input_clear_damage)(fl_Value_Input value_input);+  FL_EXPORT_C(void,         Fl_Value_Input_damage_with_text)(fl_Value_Input value_input, uchar c);+  FL_EXPORT_C(void,         Fl_Value_Input_damage_inside_widget)(fl_Value_Input value_input, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Value_Input_draw_label_with_xywh_alignment)(fl_Value_Input value_input, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Value_Input_measure_label)(fl_Value_Input value_input, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Value_Input_window)(fl_Value_Input value_input);+  FL_EXPORT_C(fl_Window,    Fl_Value_Input_top_window)(fl_Value_Input value_input);+  FL_EXPORT_C(fl_Window ,   Fl_Value_Input_top_window_offset)(fl_Value_Input value_input, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Value_Input_as_group)(fl_Value_Input value_input);+  FL_EXPORT_C(fl_Gl_Window, Fl_Value_Input_as_gl_window)(fl_Value_Input value_input);+  /* Inherited from Fl_Valuator */++  FL_EXPORT_C(void ,	Fl_Value_Input_bounds)(fl_Value_Input value_input, double a, double b);+  FL_EXPORT_C(double ,	Fl_Value_Input_minimum)(fl_Value_Input value_input);+  FL_EXPORT_C(void ,	Fl_Value_Input_set_minimum)(fl_Value_Input value_input, double a);+  FL_EXPORT_C(double,	Fl_Value_Input_maximum)(fl_Value_Input value_input);+  FL_EXPORT_C(void ,	Fl_Value_Input_set_maximum)(fl_Value_Input value_input, double a);+  FL_EXPORT_C(void ,	Fl_Value_Input_range)(fl_Value_Input value_input, double a, double b);+  FL_EXPORT_C(void ,	Fl_Value_Input_set_step_with_a)(fl_Value_Input value_input, int a);+  FL_EXPORT_C(void ,	Fl_Value_Input_set_step_with_a_b)(fl_Value_Input value_input, double a, int b);+  FL_EXPORT_C(void,	Fl_Value_Input_set_step_with_s)(fl_Value_Input value_input, double s);+  FL_EXPORT_C(double ,	Fl_Value_Input_step)(fl_Value_Input value_input);+  FL_EXPORT_C(void,	Fl_Value_Input_precision)(fl_Value_Input value_input, int p);+  FL_EXPORT_C(double ,	Fl_Value_Input_value)(fl_Value_Input value_input);+  FL_EXPORT_C(int ,	Fl_Value_Input_set_value)(fl_Value_Input value_input, double v);+  FL_EXPORT_C(double ,	Fl_Value_Input_round)(fl_Value_Input value_input, double v);+  FL_EXPORT_C(double ,	Fl_Value_Input_clamp)(fl_Value_Input value_input, double v);+  FL_EXPORT_C(double ,	Fl_Value_Input_increment)(fl_Value_Input value_input, double v, int n);+  /* Fl_Value_Input specific functions */++  FL_EXPORT_C(fl_Value_Input,  Fl_Value_Input_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Value_Input, Fl_Value_Input_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void          , Fl_Value_Input_Destroy)(fl_Value_Input button);++  FL_EXPORT_C(char,	Fl_Value_Input_soft)(fl_Value_Input value_input);+  FL_EXPORT_C(void,	Fl_Value_Input_resize)(fl_Value_Input value_input, int X, int Y, int W, int H);+  FL_EXPORT_C(void ,	Fl_Value_Input_set_soft)(fl_Value_Input value_input, char s);+  FL_EXPORT_C(int ,	Fl_Value_Input_shortcut)(fl_Value_Input value_input);+  FL_EXPORT_C(void,	Fl_Value_Input_set_shortcut)(fl_Value_Input value_input,int v);+  FL_EXPORT_C(Fl_Font,	Fl_Value_Input_textfont)(fl_Value_Input value_input);+  FL_EXPORT_C(void,	Fl_Value_Input_set_textfont)(fl_Value_Input value_input,int v);+  FL_EXPORT_C(int ,	Fl_Value_Input_textsize)(fl_Value_Input value_input);+  FL_EXPORT_C(void,	Fl_Value_Input_set_textsize)(fl_Value_Input value_input,int v);+  FL_EXPORT_C(Fl_Color,	Fl_Value_Input_textcolor)(fl_Value_Input value_input);+  FL_EXPORT_C(void,	Fl_Value_Input_set_textcolor)(fl_Value_Input value_input,int v);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_VALUE_INPUT_C__*/
+ c-src/Fl_Value_OutputC.cpp view
@@ -0,0 +1,357 @@+#include "Fl_Value_OutputC.h"++#ifdef __cplusplus+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(void,Fl_Value_Output_resize)(fl_Value_Output value_output,int X,int Y,int W,int H) {+    (static_cast<Fl_Value_Output*>(value_output)->resize(X,Y,W,H));+  }+  FL_EXPORT_C(int,Fl_Value_Output_handle)(fl_Value_Output self, int event){+    return (static_cast<Fl_Value_Output*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Value_Output_parent)(fl_Value_Output value_output){+    return (fl_Group) (static_cast<Fl_Value_Output*>(value_output))->parent();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_parent)(fl_Value_Output value_output,fl_Group grp){+    (static_cast<Fl_Value_Output*>(value_output))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Value_Output_type)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->type();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_type)(fl_Value_Output value_output,uchar t){+    (static_cast<Fl_Value_Output*>(value_output))->type(t);+  }++  FL_EXPORT_C(int,Fl_Value_Output_x)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->x();+  }+  FL_EXPORT_C(int,Fl_Value_Output_y)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->y();+  }+  FL_EXPORT_C(int,Fl_Value_Output_w)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->w();+  }+  FL_EXPORT_C(int,Fl_Value_Output_h)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->h();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_align)(fl_Value_Output value_output, Fl_Align alignment){+    (static_cast<Fl_Value_Output*>(value_output))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Value_Output_align)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Value_Output_box)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->box();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_box)(fl_Value_Output value_output,Fl_Boxtype new_box){+    (static_cast<Fl_Value_Output*>(value_output))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Value_Output_color)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->color();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_color)(fl_Value_Output value_output,Fl_Color bg){+    (static_cast<Fl_Value_Output*>(value_output))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_color_with_bg_sel)(fl_Value_Output value_output,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Value_Output*>(value_output))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Value_Output_selection_color)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_selection_color)(fl_Value_Output value_output,Fl_Color a){+    (static_cast<Fl_Value_Output*>(value_output))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Value_Output_label)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->label();+  }+  FL_EXPORT_C(void,Fl_Value_Output_copy_label)(fl_Value_Output value_output,const char* new_label){+    (static_cast<Fl_Value_Output*>(value_output))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_label)(fl_Value_Output value_output,const char* text){+    (static_cast<Fl_Value_Output*>(value_output))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Value_Output_labeltype)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_labeltype)(fl_Value_Output value_output,Fl_Labeltype a){+    (static_cast<Fl_Value_Output*>(value_output))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_labelcolor)(fl_Value_Output value_output,Fl_Color c){+    (static_cast<Fl_Value_Output*>(value_output))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Value_Output_labelcolor)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Value_Output_labelfont)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_labelfont)(fl_Value_Output value_output,Fl_Font c){+    (static_cast<Fl_Value_Output*>(value_output))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Value_Output_labelsize)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_labelsize)(fl_Value_Output value_output,Fl_Fontsize pix){+    (static_cast<Fl_Value_Output*>(value_output))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Value_Output_image)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->image();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_image)(fl_Value_Output value_output,fl_Image pix){+    (static_cast<Fl_Value_Output*>(value_output))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Value_Output_deimage)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->deimage();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_deimage)(fl_Value_Output value_output,fl_Image pix){+    (static_cast<Fl_Value_Output*>(value_output))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Value_Output_tooltip)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Value_Output_copy_tooltip)(fl_Value_Output value_output,const char* text){+    (static_cast<Fl_Value_Output*>(value_output))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_tooltip)(fl_Value_Output value_output,const char* text){+    (static_cast<Fl_Value_Output*>(value_output))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_callback_with_user_data)(fl_Value_Output value_output,fl_Callback* cb,void* p){+    Fl_Value_Output* castedButton = (static_cast<Fl_Value_Output*>(value_output));+    new C_to_Fl_Callback(castedButton, cb, p);+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_callback)(fl_Value_Output value_output,fl_Callback* cb){+    Fl_Value_Output* castedButton = (static_cast<Fl_Value_Output*>(value_output));+    new C_to_Fl_Callback(castedButton, cb);+  }+  FL_EXPORT_C(void*,Fl_Value_Output_user_data)(fl_Value_Output value_output){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Value_Output*>(value_output))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Value_Output*>(value_output))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_user_data)(fl_Value_Output value_output,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Value_Output*>(value_output))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Value_Output*>(value_output))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Value_Output*>(value_output))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Value_Output_argument)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->argument();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_argument)(fl_Value_Output value_output,long v){+    (static_cast<Fl_Value_Output*>(value_output))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Value_Output_when)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->when();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_when)(fl_Value_Output value_output,uchar i){+    (static_cast<Fl_Value_Output*>(value_output))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Output_visible)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->visible();+  }+  FL_EXPORT_C(int,Fl_Value_Output_visible_r)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_visible)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->visible();+  }+  FL_EXPORT_C(void,Fl_Value_Output_clear_visible)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Output_active)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->active();+  }+  FL_EXPORT_C(int,Fl_Value_Output_active_r)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->active_r();+  }+  FL_EXPORT_C(void,Fl_Value_Output_activate)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->activate();+  }+  FL_EXPORT_C(void,Fl_Value_Output_deactivate)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Output_output)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->output();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_output)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->output();+  }+  FL_EXPORT_C(void,Fl_Value_Output_clear_output)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Output_takesevents)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_changed)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->changed();+  }+  FL_EXPORT_C(void,Fl_Value_Output_clear_changed)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Value_Output_take_focus)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_visible_focus)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Value_Output_clear_visible_focus)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Value_Output_modify_visible_focus)(fl_Value_Output value_output,int v){+    (static_cast<Fl_Value_Output*>(value_output))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Output_visible_focus)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Value_Output_do_callback)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Value_Output_do_callback_with_widget_and_user_data)(fl_Value_Output value_output,fl_Widget w,long arg){+    (static_cast<Fl_Value_Output*>(value_output))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Value_Output_do_callback_with_widget_and_default_user_data)(fl_Value_Output value_output,fl_Widget w){+    (static_cast<Fl_Value_Output*>(value_output))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Value_Output_contains)(fl_Value_Output value_output,fl_Widget w){+    return (static_cast<Fl_Value_Output*>(value_output))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Value_Output_inside)(fl_Value_Output value_output,fl_Widget w){+    return (static_cast<Fl_Value_Output*>(value_output))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Value_Output_redraw)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->redraw();+  }+  FL_EXPORT_C(void,Fl_Value_Output_redraw_label)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Value_Output_damage)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->damage();+  }+  FL_EXPORT_C(void,Fl_Value_Output_clear_damage_with_bitmask)(fl_Value_Output value_output,uchar c){+    (static_cast<Fl_Value_Output*>(value_output))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Value_Output_clear_damage)(fl_Value_Output value_output){+    (static_cast<Fl_Value_Output*>(value_output))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Value_Output_damage_with_text)(fl_Value_Output value_output,uchar c){+    (static_cast<Fl_Value_Output*>(value_output))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Value_Output_damage_inside_widget)(fl_Value_Output value_output,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Value_Output*>(value_output))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Value_Output_draw_label_with_xywh_alignment)(fl_Value_Output value_output,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Value_Output*>(value_output))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Value_Output_measure_label)(fl_Value_Output value_output,int* ww,int* hh){+    (static_cast<Fl_Value_Output*>(value_output))->measure_label(*ww,*hh);+  }++  FL_EXPORT_C(fl_Window,    Fl_Value_Output_window)(fl_Value_Output value_output){+    return (fl_Window) (static_cast<Fl_Value_Output*>(value_output))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Value_Output_top_window)(fl_Value_Output value_output){+    return (fl_Window) (static_cast<Fl_Value_Output*>(value_output))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Value_Output_top_window_offset)(fl_Value_Output value_output, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Value_Output*>(value_output))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Value_Output_as_group)(fl_Value_Output value_output){+    return (fl_Group) (static_cast<Fl_Value_Output*>(value_output))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Value_Output_as_gl_window)(fl_Value_Output value_output){+    return (fl_Gl_Window) (static_cast<Fl_Value_Output*>(value_output))->as_gl_window();+  }+  /* Inherited from Fl_Valuator */++  FL_EXPORT_C(void,Fl_Value_Output_bounds)(fl_Value_Output value_output,double a,double b){+    (static_cast<Fl_Value_Output*>(value_output))->bounds(a,b);+  }+  FL_EXPORT_C(double,Fl_Value_Output_minimum)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->minimum();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_minimum)(fl_Value_Output value_output,double a){+    (static_cast<Fl_Value_Output*>(value_output))->minimum(a);+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_maximum)(fl_Value_Output value_output,double a){+    (static_cast<Fl_Value_Output*>(value_output))->maximum(a);+  }+  FL_EXPORT_C(void,Fl_Value_Output_range)(fl_Value_Output value_output,double a,double b){+    (static_cast<Fl_Value_Output*>(value_output))->range(a,b);+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_step_with_a)(fl_Value_Output value_output,int a){+    (static_cast<Fl_Value_Output*>(value_output))->step(a);+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_step_with_a_b)(fl_Value_Output value_output,double a,int b){+    (static_cast<Fl_Value_Output*>(value_output))->step(a,b);+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_step_with_s)(fl_Value_Output value_output,double s){+    (static_cast<Fl_Value_Output*>(value_output))->step(s);+  }+  FL_EXPORT_C(double,Fl_Value_Output_step)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->step();+  }+  FL_EXPORT_C(void,Fl_Value_Output_precision)(fl_Value_Output value_output, int p){+    (static_cast<Fl_Value_Output*>(value_output))->precision(p);+  }+  FL_EXPORT_C(double,Fl_Value_Output_value)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->value();+  }+  FL_EXPORT_C(int,Fl_Value_Output_set_value)(fl_Value_Output value_output,double v){+    return (static_cast<Fl_Value_Output*>(value_output))->value(v);+  }+  FL_EXPORT_C(double,Fl_Value_Output_round)(fl_Value_Output value_output,double v){+    return (static_cast<Fl_Value_Output*>(value_output))->round(v);+  }+  FL_EXPORT_C(double,Fl_Value_Output_clamp)(fl_Value_Output value_output,double v){+    return (static_cast<Fl_Value_Output*>(value_output))->clamp(v);+  }+  FL_EXPORT_C(double,Fl_Value_Output_increment)(fl_Value_Output value_output,double v,int n){+    return (static_cast<Fl_Value_Output*>(value_output))->increment(v,n);+  }+  FL_EXPORT_C(fl_Value_Output,  Fl_Value_Output_New_WithLabel)(int x, int y, int w, int h, const char* label){+    Fl_Value_Output* value_output = new Fl_Value_Output(x,y,w,h,label);+    return (static_cast<fl_Value_Output>(value_output));+  }+  FL_EXPORT_C(fl_Value_Output, Fl_Value_Output_New)(int x, int y, int w, int h){+    Fl_Value_Output* value_output = new Fl_Value_Output(x,y,w,h,0);+    return (static_cast<fl_Value_Output>(value_output));+  }+  FL_EXPORT_C(void,Fl_Value_Output_Destroy)(fl_Value_Output value_output){+    delete (static_cast<Fl_Value_Output*>(value_output));+  }+  FL_EXPORT_C(char,Fl_Value_Output_soft)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->soft();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_soft)(fl_Value_Output value_output,char s){+    (static_cast<Fl_Value_Output*>(value_output))->soft(s);+  }+  FL_EXPORT_C(Fl_Font,Fl_Value_Output_textfont)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->textfont();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_textfont)(fl_Value_Output value_output,int v){+    (static_cast<Fl_Value_Output*>(value_output))->textfont(v);+  }+  FL_EXPORT_C(int,Fl_Value_Output_textsize)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->textsize();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_textsize)(fl_Value_Output value_output,int v){+    (static_cast<Fl_Value_Output*>(value_output))->textsize(v);+  }+  FL_EXPORT_C(Fl_Color,Fl_Value_Output_textcolor)(fl_Value_Output value_output){+    return (static_cast<Fl_Value_Output*>(value_output))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Value_Output_set_textcolor)(fl_Value_Output value_output,int v){+    (static_cast<Fl_Value_Output*>(value_output))->textcolor(v);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Value_OutputC.h view
@@ -0,0 +1,131 @@+#ifndef __FL_VALUE_OUTPUT_C__+#define __FL_VALUE_OUTPUT_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Value_Output.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Value_Output_handle)(fl_Value_Output self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Value_Output_parent)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_parent)(fl_Value_Output value_output, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Value_Output_type)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_type)(fl_Value_Output value_output, uchar t);++  FL_EXPORT_C(int,          Fl_Value_Output_x)(fl_Value_Output value_output);+  FL_EXPORT_C(int,          Fl_Value_Output_y)(fl_Value_Output value_output);+  FL_EXPORT_C(int,          Fl_Value_Output_w)(fl_Value_Output value_output);+  FL_EXPORT_C(int,          Fl_Value_Output_h)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_align)(fl_Value_Output value_output, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Value_Output_align)(fl_Value_Output value_output);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Value_Output_box)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_box)(fl_Value_Output value_output, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Value_Output_color)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_color)(fl_Value_Output value_output, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Value_Output_set_color_with_bg_sel)(fl_Value_Output value_output,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Value_Output_selection_color)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_selection_color)(fl_Value_Output value_output, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Value_Output_label)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_copy_label)(fl_Value_Output value_output, const char* new_label);+  FL_EXPORT_C(void,         Fl_Value_Output_set_label)(fl_Value_Output value_output, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Value_Output_labeltype)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_labeltype)(fl_Value_Output value_output, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Value_Output_labelcolor)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_labelcolor)(fl_Value_Output value_output, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Value_Output_labelfont)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_labelfont)(fl_Value_Output value_output, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Value_Output_labelsize)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_labelsize)(fl_Value_Output value_output, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Value_Output_image)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_image)(fl_Value_Output value_output, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Value_Output_deimage)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_deimage)(fl_Value_Output value_output, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Value_Output_tooltip)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_copy_tooltip)(fl_Value_Output value_output, const char* text);+  FL_EXPORT_C(void,         Fl_Value_Output_set_tooltip)(fl_Value_Output value_output, const char* text);+  FL_EXPORT_C(void,         Fl_Value_Output_set_callback_with_user_data)(fl_Value_Output value_output, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Value_Output_set_callback)(fl_Value_Output value_output, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Value_Output_user_data)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_user_data)(fl_Value_Output value_output, void* v);+  FL_EXPORT_C(long,         Fl_Value_Output_argument)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_argument)(fl_Value_Output value_output, long v);+  FL_EXPORT_C(Fl_When,      Fl_Value_Output_when)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_when)(fl_Value_Output value_output, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Value_Output_visible)(fl_Value_Output value_output);+  FL_EXPORT_C(int,          Fl_Value_Output_visible_r)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_visible)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_clear_visible)(fl_Value_Output value_output);+  FL_EXPORT_C(unsigned int, Fl_Value_Output_active)(fl_Value_Output value_output);+  FL_EXPORT_C(int,          Fl_Value_Output_active_r)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_activate)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_deactivate)(fl_Value_Output value_output);+  FL_EXPORT_C(unsigned int, Fl_Value_Output_output)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_output)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_clear_output)(fl_Value_Output value_output);+  FL_EXPORT_C(unsigned int, Fl_Value_Output_takesevents)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_changed)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_clear_changed)(fl_Value_Output value_output);+  FL_EXPORT_C(int,          Fl_Value_Output_take_focus)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_set_visible_focus)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_clear_visible_focus)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_modify_visible_focus)(fl_Value_Output value_output, int v);+  FL_EXPORT_C(unsigned int, Fl_Value_Output_visible_focus)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_do_callback)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_do_callback_with_widget_and_user_data)(fl_Value_Output value_output, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Value_Output_do_callback_with_widget_and_default_user_data)(fl_Value_Output value_output, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Value_Output_contains)(fl_Value_Output value_output, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Value_Output_inside)(fl_Value_Output value_output, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Value_Output_redraw)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_redraw_label)(fl_Value_Output value_output);+  FL_EXPORT_C(uchar,        Fl_Value_Output_damage)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_clear_damage_with_bitmask)(fl_Value_Output value_output, uchar c);+  FL_EXPORT_C(void,         Fl_Value_Output_clear_damage)(fl_Value_Output value_output);+  FL_EXPORT_C(void,         Fl_Value_Output_damage_with_text)(fl_Value_Output value_output, uchar c);+  FL_EXPORT_C(void,         Fl_Value_Output_damage_inside_widget)(fl_Value_Output value_output, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Value_Output_draw_label_with_xywh_alignment)(fl_Value_Output value_output, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Value_Output_measure_label)(fl_Value_Output value_output, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Value_Output_window)(fl_Value_Output value_output);+  FL_EXPORT_C(fl_Window,    Fl_Value_Output_top_window)(fl_Value_Output value_output);+  FL_EXPORT_C(fl_Window ,   Fl_Value_Output_top_window_offset)(fl_Value_Output value_output, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Value_Output_as_group)(fl_Value_Output value_output);+  FL_EXPORT_C(fl_Gl_Window, Fl_Value_Output_as_gl_window)(fl_Value_Output value_output);+  /* Inherited from Fl_Valuator */++  FL_EXPORT_C(void ,	Fl_Value_Output_bounds)(fl_Value_Output value_output, double a, double b);+  FL_EXPORT_C(double ,	Fl_Value_Output_minimum)(fl_Value_Output value_output);+  FL_EXPORT_C(void ,	Fl_Value_Output_set_minimum)(fl_Value_Output value_output, double a);+  FL_EXPORT_C(double,	Fl_Value_Output_maximum)(fl_Value_Output value_output);+  FL_EXPORT_C(void ,	Fl_Value_Output_set_maximum)(fl_Value_Output value_output, double a);+  FL_EXPORT_C(void ,	Fl_Value_Output_range)(fl_Value_Output value_output, double a, double b);+  FL_EXPORT_C(void ,	Fl_Value_Output_set_step_with_a)(fl_Value_Output value_output, int a);+  FL_EXPORT_C(void ,	Fl_Value_Output_set_step_with_a_b)(fl_Value_Output value_output, double a, int b);+  FL_EXPORT_C(void,	Fl_Value_Output_set_step_with_s)(fl_Value_Output value_output, double s);+  FL_EXPORT_C(double ,	Fl_Value_Output_step)(fl_Value_Output value_output);+  FL_EXPORT_C(void,	Fl_Value_Output_precision)(fl_Value_Output value_output, int p);+  FL_EXPORT_C(double ,	Fl_Value_Output_value)(fl_Value_Output value_output);+  FL_EXPORT_C(int ,	Fl_Value_Output_set_value)(fl_Value_Output value_output, double v);+  FL_EXPORT_C(double ,	Fl_Value_Output_round)(fl_Value_Output value_output, double v);+  FL_EXPORT_C(double ,	Fl_Value_Output_clamp)(fl_Value_Output value_output, double v);+  FL_EXPORT_C(double ,	Fl_Value_Output_increment)(fl_Value_Output value_output, double v, int n);+  /* Fl_Value_Output specific functions */++  FL_EXPORT_C(fl_Value_Output,  Fl_Value_Output_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Value_Output, Fl_Value_Output_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void          , Fl_Value_Output_Destroy)(fl_Value_Output button);++  FL_EXPORT_C(void,Fl_Value_Output_resize)(fl_Value_Output value_output,int X,int Y,int W,int H);+  FL_EXPORT_C(char,	Fl_Value_Output_soft)(fl_Value_Output value_output);+  FL_EXPORT_C(void ,	Fl_Value_Output_set_soft)(fl_Value_Output value_output, char s);+  FL_EXPORT_C(Fl_Font,	Fl_Value_Output_textfont)(fl_Value_Output value_output);+  FL_EXPORT_C(void,	Fl_Value_Output_set_textfont)(fl_Value_Output value_output,int v);+  FL_EXPORT_C(int ,	Fl_Value_Output_textsize)(fl_Value_Output value_output);+  FL_EXPORT_C(void,	Fl_Value_Output_set_textsize)(fl_Value_Output value_output,int v);+  FL_EXPORT_C(Fl_Color,	Fl_Value_Output_textcolor)(fl_Value_Output value_output);+  FL_EXPORT_C(void,	Fl_Value_Output_set_textcolor)(fl_Value_Output value_output,int v);+#ifdef __cplusplus+}+#endif+#endif /*#ifndef __FL_VALUE_INPUT_C__*/
+ c-src/Fl_Value_SliderC.cpp view
@@ -0,0 +1,372 @@+#include "Fl_Value_SliderC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Value_Slider_handle )(fl_Value_Slider value_slider, int event){+    return (static_cast<Fl_Value_Slider*>(value_slider))->handle(event);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_resize )(fl_Value_Slider value_slider,int x, int y, int w, int h){+    (static_cast<Fl_Value_Slider*>(value_slider))->resize(x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_show )(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->show();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_hide )(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->hide();+  }+  FL_EXPORT_C(fl_Window,Fl_Value_Slider_as_window )(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->as_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Value_Slider_as_gl_window )(fl_Value_Slider value_slider){+    return (fl_Gl_Window) (static_cast<Fl_Value_Slider*>(value_slider))->as_gl_window();+  };+  FL_EXPORT_C(fl_Group,Fl_Value_Slider_parent)(fl_Value_Slider value_slider){+    return (fl_Group) (static_cast<Fl_Value_Slider*>(value_slider))->parent();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_parent)(fl_Value_Slider value_slider,fl_Group grp){+    (static_cast<Fl_Value_Slider*>(value_slider))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Value_Slider_type)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->type();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_type)(fl_Value_Slider value_slider,uchar t){+    (static_cast<Fl_Value_Slider*>(value_slider))->type(t);+  }++  FL_EXPORT_C(int,Fl_Value_Slider_x)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->x();+  }+  FL_EXPORT_C(int,Fl_Value_Slider_y)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->y();+  }+  FL_EXPORT_C(int,Fl_Value_Slider_w)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->w();+  }+  FL_EXPORT_C(int,Fl_Value_Slider_h)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->h();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_align)(fl_Value_Slider value_slider, Fl_Align alignment){+    (static_cast<Fl_Value_Slider*>(value_slider))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Value_Slider_align)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Value_Slider_box)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->box();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_box)(fl_Value_Slider value_slider,Fl_Boxtype new_box){+    (static_cast<Fl_Value_Slider*>(value_slider))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Value_Slider_color)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->color();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_color)(fl_Value_Slider value_slider,Fl_Color bg){+    (static_cast<Fl_Value_Slider*>(value_slider))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_color_with_bg_sel)(fl_Value_Slider value_slider,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Value_Slider*>(value_slider))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Value_Slider_selection_color)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_selection_color)(fl_Value_Slider value_slider,Fl_Color a){+    (static_cast<Fl_Value_Slider*>(value_slider))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Value_Slider_label)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->label();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_copy_label)(fl_Value_Slider value_slider,const char* new_label){+    (static_cast<Fl_Value_Slider*>(value_slider))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_label)(fl_Value_Slider value_slider,const char* text){+    (static_cast<Fl_Value_Slider*>(value_slider))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Value_Slider_labeltype)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_labeltype)(fl_Value_Slider value_slider,Fl_Labeltype a){+    (static_cast<Fl_Value_Slider*>(value_slider))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_labelcolor)(fl_Value_Slider value_slider,Fl_Color c){+    (static_cast<Fl_Value_Slider*>(value_slider))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Value_Slider_labelcolor)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Value_Slider_labelfont)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_labelfont)(fl_Value_Slider value_slider,Fl_Font c){+    (static_cast<Fl_Value_Slider*>(value_slider))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Value_Slider_labelsize)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_labelsize)(fl_Value_Slider value_slider,Fl_Fontsize pix){+    (static_cast<Fl_Value_Slider*>(value_slider))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Value_Slider_image)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->image();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_image)(fl_Value_Slider value_slider,fl_Image pix){+    (static_cast<Fl_Value_Slider*>(value_slider))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Value_Slider_deimage)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->deimage();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_deimage)(fl_Value_Slider value_slider,fl_Image pix){+    (static_cast<Fl_Value_Slider*>(value_slider))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Value_Slider_tooltip)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_copy_tooltip)(fl_Value_Slider value_slider,const char* text){+    (static_cast<Fl_Value_Slider*>(value_slider))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_tooltip)(fl_Value_Slider value_slider,const char* text){+    (static_cast<Fl_Value_Slider*>(value_slider))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_callback_with_user_data)(fl_Value_Slider value_slider,fl_Callback cb,void* p){+    Fl_Value_Slider* castedBox = (static_cast<Fl_Value_Slider*>(value_slider));+    new C_to_Fl_Callback(castedBox, cb, p);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_callback)(fl_Value_Slider value_slider,fl_Callback cb){+    Fl_Value_Slider* castedBox = (static_cast<Fl_Value_Slider*>(value_slider));+    new C_to_Fl_Callback(castedBox, cb);+  }+  FL_EXPORT_C(void*,Fl_Value_Slider_user_data)(fl_Value_Slider value_slider){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Value_Slider*>(value_slider))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Value_Slider*>(value_slider))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_user_data)(fl_Value_Slider value_slider,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Value_Slider*>(value_slider))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Value_Slider*>(value_slider))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Value_Slider*>(value_slider))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Value_Slider_argument)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->argument();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_argument)(fl_Value_Slider value_slider,long v){+    (static_cast<Fl_Value_Slider*>(value_slider))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Value_Slider_when)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->when();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_when)(fl_Value_Slider value_slider,uchar i){+    (static_cast<Fl_Value_Slider*>(value_slider))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Slider_visible)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->visible();+  }+  FL_EXPORT_C(int,Fl_Value_Slider_visible_r)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_visible)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->visible();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_clear_visible)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Slider_active)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->active();+  }+  FL_EXPORT_C(int,Fl_Value_Slider_active_r)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->active_r();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_activate)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->activate();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_deactivate)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Slider_output)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->output();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_output)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->output();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_clear_output)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Slider_takesevents)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_changed)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->changed();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_clear_changed)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Value_Slider_take_focus)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_visible_focus)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_clear_visible_focus)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_modify_visible_focus)(fl_Value_Slider value_slider,int v){+    (static_cast<Fl_Value_Slider*>(value_slider))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Value_Slider_visible_focus)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_do_callback)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_do_callback_with_widget_and_user_data)(fl_Value_Slider value_slider,fl_Widget w,long arg){+    (static_cast<Fl_Value_Slider*>(value_slider))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_do_callback_with_widget_and_default_user_data)(fl_Value_Slider value_slider,fl_Widget w){+    (static_cast<Fl_Value_Slider*>(value_slider))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Value_Slider_contains)(fl_Value_Slider value_slider,fl_Widget w){+    return (static_cast<Fl_Value_Slider*>(value_slider))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Value_Slider_inside)(fl_Value_Slider value_slider,fl_Widget w){+    return (static_cast<Fl_Value_Slider*>(value_slider))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Value_Slider_redraw)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->redraw();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_redraw_label)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Value_Slider_damage)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->damage();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_clear_damage_with_bitmask)(fl_Value_Slider value_slider,uchar c){+    (static_cast<Fl_Value_Slider*>(value_slider))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_clear_damage)(fl_Value_Slider value_slider){+    (static_cast<Fl_Value_Slider*>(value_slider))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_damage_with_text)(fl_Value_Slider value_slider,uchar c){+    (static_cast<Fl_Value_Slider*>(value_slider))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_damage_inside_widget)(fl_Value_Slider value_slider,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Value_Slider*>(value_slider))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_draw_label_with_xywh_alignment)(fl_Value_Slider value_slider,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Value_Slider*>(value_slider))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_measure_label)(fl_Value_Slider value_slider,int* ww,int* hh){+    (static_cast<Fl_Value_Slider*>(value_slider))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_bounds)(fl_Value_Slider value_slider,double a,double b){+    (static_cast<Fl_Value_Slider*>(value_slider))->bounds(a,b);+  }+  FL_EXPORT_C(double,Fl_Value_Slider_minimum)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->minimum();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_minimum)(fl_Value_Slider value_slider,double a){+    (static_cast<Fl_Value_Slider*>(value_slider))->minimum(a);+  }+  FL_EXPORT_C(double,Fl_Value_Slider_maximum)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->maximum();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_maximum)(fl_Value_Slider value_slider,double a){+    (static_cast<Fl_Value_Slider*>(value_slider))->maximum(a);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_precision)(fl_Value_Slider value_slider,int precision){+    (static_cast<Fl_Value_Slider*>(value_slider))->precision(precision);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_range)(fl_Value_Slider value_slider,double a,double b){+    (static_cast<Fl_Value_Slider*>(value_slider))->range(a,b);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_step)(fl_Value_Slider value_slider,int a){+    (static_cast<Fl_Value_Slider*>(value_slider))->step(a);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_step_with_a_b)(fl_Value_Slider value_slider,double a,int b){+    (static_cast<Fl_Value_Slider*>(value_slider))->step(a,b);+  }+  FL_EXPORT_C(void,Fl_Value_Slider_step_with_s)(fl_Value_Slider value_slider,double s){+    (static_cast<Fl_Value_Slider*>(value_slider))->step(s);+  }+  FL_EXPORT_C(double,Fl_Value_Slider_step)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->step();+  }+  FL_EXPORT_C(double,Fl_Value_Slider_value)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->value();+  }+  FL_EXPORT_C(int,Fl_Value_Slider_set_value)(fl_Value_Slider value_slider,double v){+    return (static_cast<Fl_Value_Slider*>(value_slider))->value(v);+  }+  FL_EXPORT_C(int,Fl_Value_Slider_format)(fl_Value_Slider value_slider,char* format){+    return (static_cast<Fl_Value_Slider*>(value_slider))->format(format);+  }+  FL_EXPORT_C(double,Fl_Value_Slider_round)(fl_Value_Slider value_slider,double v){+    return (static_cast<Fl_Value_Slider*>(value_slider))->round(v);+  }+  FL_EXPORT_C(double,Fl_Value_Slider_clamp)(fl_Value_Slider value_slider,double v){+    return (static_cast<Fl_Value_Slider*>(value_slider))->clamp(v);+  }+  FL_EXPORT_C(double,Fl_Value_Slider_increment)(fl_Value_Slider value_slider,double v,int n){+    return (static_cast<Fl_Value_Slider*>(value_slider))->increment(v,n);+  }+  FL_EXPORT_C(int,Fl_Value_Slider_scrollvalue)(fl_Value_Slider value_slider,int pos,int size,int first,int total){+    return (static_cast<Fl_Value_Slider*>(value_slider))->scrollvalue(pos,size,first,total);+  }+  FL_EXPORT_C(float,Fl_Value_Slider_set_value_slider_size)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->slider_size();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_value_slider_size)(fl_Value_Slider value_slider,double v){+    (static_cast<Fl_Value_Slider*>(value_slider))->slider_size(v);+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Value_Slider_value_slider)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->slider();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_value_slider)(fl_Value_Slider value_slider,Fl_Boxtype c){+    (static_cast<Fl_Value_Slider*>(value_slider))->slider(c);+  }+  FL_EXPORT_C(fl_Value_Slider, Fl_Value_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Value_Slider* value_slider = new Fl_Value_Slider(x,y,w,h,label);+    return (static_cast<fl_Value_Slider>(value_slider));+  }+  FL_EXPORT_C(fl_Value_Slider, Fl_Value_Slider_New)(int x, int y, int w, int h) {+    Fl_Value_Slider* value_slider = new Fl_Value_Slider(x,y,w,h,0);+    return (fl_Value_Slider)value_slider;+  }+  FL_EXPORT_C(fl_Hor_Value_Slider, Fl_Hor_Value_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label) {+    Fl_Hor_Value_Slider* hor_value_slider = new Fl_Hor_Value_Slider(x,y,w,h,label);+    return (static_cast<fl_Hor_Value_Slider>(hor_value_slider));+  }+  FL_EXPORT_C(fl_Hor_Value_Slider, Fl_Hor_Value_Slider_New)(int x, int y, int w, int h) {+    Fl_Hor_Value_Slider* hor_value_slider = new Fl_Hor_Value_Slider(x,y,w,h,0);+    return (fl_Hor_Value_Slider)hor_value_slider;+  }+  FL_EXPORT_C(void,      Fl_Value_Slider_Destroy)(fl_Value_Slider value_slider){+    delete (static_cast<Fl_Value_Slider*>(value_slider));+  }+  FL_EXPORT_C(Fl_Font,Fl_Value_Slider_textfont)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->textfont();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_textfont)(fl_Value_Slider value_slider,Fl_Font s){+    return (static_cast<Fl_Value_Slider*>(value_slider))->textfont(s);+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Value_Slider_textsize)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->textsize();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_textsize)(fl_Value_Slider value_slider,Fl_Fontsize s){+    return (static_cast<Fl_Value_Slider*>(value_slider))->textsize(s);+  }+  FL_EXPORT_C(Fl_Color,Fl_Value_Slider_textcolor)(fl_Value_Slider value_slider){+    return (static_cast<Fl_Value_Slider*>(value_slider))->textcolor();+  }+  FL_EXPORT_C(void,Fl_Value_Slider_set_textcolor)(fl_Value_Slider value_slider,Fl_Color s){+    return (static_cast<Fl_Value_Slider*>(value_slider))->textcolor(s);+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_Value_SliderC.h view
@@ -0,0 +1,140 @@+#ifndef __FL_VALUE_SLIDER_C__+#define __FL_VALUE_SLIDER_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Value_Slider is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/Fl_Value_Slider.H"+#include "FL/Fl_Hor_Value_Slider.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(fl_Group,     Fl_Value_Slider_parent)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_parent)(fl_Value_Slider value_slider, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Value_Slider_type)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_type)(fl_Value_Slider value_slider, uchar t);++  FL_EXPORT_C(int,          Fl_Value_Slider_x)(fl_Value_Slider value_slider);+  FL_EXPORT_C(int,          Fl_Value_Slider_y)(fl_Value_Slider value_slider);+  FL_EXPORT_C(int,          Fl_Value_Slider_w)(fl_Value_Slider value_slider);+  FL_EXPORT_C(int,          Fl_Value_Slider_h)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_align)(fl_Value_Slider value_slider, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Value_Slider_align)(fl_Value_Slider value_slider);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Value_Slider_box)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_box)(fl_Value_Slider value_slider, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Value_Slider_color)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_color)(fl_Value_Slider value_slider, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_color_with_bg_sel)(fl_Value_Slider value_slider,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Value_Slider_selection_color)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_selection_color)(fl_Value_Slider value_slider, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Value_Slider_label)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_copy_label)(fl_Value_Slider value_slider, const char* new_label);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_label)(fl_Value_Slider value_slider, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Value_Slider_labeltype)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_labeltype)(fl_Value_Slider value_slider, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Value_Slider_labelcolor)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_labelcolor)(fl_Value_Slider value_slider, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Value_Slider_labelfont)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_labelfont)(fl_Value_Slider value_slider, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Value_Slider_labelsize)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_labelsize)(fl_Value_Slider value_slider, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Value_Slider_image)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_image)(fl_Value_Slider value_slider, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Value_Slider_deimage)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_deimage)(fl_Value_Slider value_slider, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Value_Slider_tooltip)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_copy_tooltip)(fl_Value_Slider value_slider, const char* text);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_tooltip)(fl_Value_Slider value_slider, const char* text);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_callback_with_user_data)(fl_Value_Slider value_slider, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_callback)(fl_Value_Slider value_slider, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Value_Slider_other_data)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_other_data)(fl_Value_Slider value_slider, void* v);+  FL_EXPORT_C(void*,        Fl_Value_Slider_user_data)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_user_data)(fl_Value_Slider value_slider, void* v);+  FL_EXPORT_C(long,         Fl_Value_Slider_argument)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_argument)(fl_Value_Slider value_slider, long v);+  FL_EXPORT_C(Fl_When,      Fl_Value_Slider_when)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_when)(fl_Value_Slider value_slider, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Value_Slider_visible)(fl_Value_Slider value_slider);+  FL_EXPORT_C(int,          Fl_Value_Slider_visible_r)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_show)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_hide)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_visible)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_clear_visible)(fl_Value_Slider value_slider);+  FL_EXPORT_C(unsigned int, Fl_Value_Slider_active)(fl_Value_Slider value_slider);+  FL_EXPORT_C(int,          Fl_Value_Slider_active_r)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_activate)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_deactivate)(fl_Value_Slider value_slider);+  FL_EXPORT_C(unsigned int, Fl_Value_Slider_output)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_output)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_clear_output)(fl_Value_Slider value_slider);+  FL_EXPORT_C(unsigned int, Fl_Value_Slider_takesevents)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_changed)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_clear_changed)(fl_Value_Slider value_slider);+  FL_EXPORT_C(int,          Fl_Value_Slider_take_focus)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_set_visible_focus)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_clear_visible_focus)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_modify_visible_focus)(fl_Value_Slider value_slider, int v);+  FL_EXPORT_C(unsigned int, Fl_Value_Slider_visible_focus)(fl_Value_Slider value_slider);+  FL_EXPORT_C(int,          Fl_Value_Slider_contains)(fl_Value_Slider value_slider, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Value_Slider_inside)(fl_Value_Slider value_slider, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Value_Slider_redraw)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_redraw_label)(fl_Value_Slider value_slider);+  FL_EXPORT_C(uchar,        Fl_Value_Slider_damage)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_clear_damage_with_bitmask)(fl_Value_Slider value_slider, uchar c);+  FL_EXPORT_C(void,         Fl_Value_Slider_clear_damage)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_damage_with_text)(fl_Value_Slider value_slider, uchar c);+  FL_EXPORT_C(void,         Fl_Value_Slider_damage_inside_widget)(fl_Value_Slider value_slider, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Value_Slider_draw_label_with_xywh_alignment)(fl_Value_Slider value_slider, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Value_Slider_measure_label)(fl_Value_Slider value_slider, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Value_Slider_window)(fl_Value_Slider value_slider);+  FL_EXPORT_C(fl_Window,    Fl_Value_Slider_top_window)(fl_Value_Slider value_slider);+  FL_EXPORT_C(fl_Window ,   Fl_Value_Slider_top_window_offset)(fl_Value_Slider value_slider, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Gl_Window, Fl_Value_Slider_as_gl_window)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void,         Fl_Value_Slider_resize)(fl_Table table,int X, int Y, int W, int H);++  /* Inherited from Fl_Valuator */+  FL_EXPORT_C(void, Fl_Value_Slider_bounds)(fl_Value_Slider value_slider, double a, double b);+  FL_EXPORT_C(double, Fl_Value_Slider_minimum)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void, Fl_Value_Slider_set_minimum)(fl_Value_Slider value_slider, double a);+  FL_EXPORT_C(double, Fl_Value_Slider_maximum)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void, Fl_Value_Slider_set_maximum)(fl_Value_Slider value_slider, double a);+  FL_EXPORT_C(void, Fl_Value_Slider_range)(fl_Value_Slider value_slider, double a, double b);+  FL_EXPORT_C(void, Fl_Value_Slider_set_step)(fl_Value_Slider value_slider, int a);+  FL_EXPORT_C(void, Fl_Value_Slider_set_step_with_a_b)(fl_Value_Slider value_slider, double a, int b);+  FL_EXPORT_C(void, Fl_Value_Slider_step_with_s)(fl_Value_Slider value_slider, double s);+  FL_EXPORT_C(double, Fl_Value_Slider_step)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void, Fl_Value_Slider_precision)(fl_Value_Slider value_slider, int precision);+  FL_EXPORT_C(double, Fl_Value_Slider_value)(fl_Value_Slider value_slider);+  FL_EXPORT_C(int, Fl_Value_Slider_set_value)(fl_Value_Slider value_slider, double v);+  FL_EXPORT_C(int, Fl_Value_Slider_format)(fl_Value_Slider value_slider, char* format);+  FL_EXPORT_C(double, Fl_Value_Slider_round)(fl_Value_Slider value_slider, double v);+  FL_EXPORT_C(double, Fl_Value_Slider_clamp)(fl_Value_Slider value_slider, double v);+  FL_EXPORT_C(double, Fl_Value_Slider_increment)(fl_Value_Slider value_slider, double v, int n);++  /* Inherited from Fl_Slider specific */+  FL_EXPORT_C(int, Fl_Value_Slider_scrollvalue)(fl_Value_Slider value_slider, int pos,int size,int first,int total);+  FL_EXPORT_C(float, Fl_Value_Slider_set_value_slider_size)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void, Fl_Value_Slider_value_slider_size)(fl_Value_Slider value_slider, double v);+  FL_EXPORT_C(Fl_Boxtype, Fl_Value_Slider_value_slider)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void, Fl_Value_Slider_set_value_slider)(fl_Value_Slider value_slider, Fl_Boxtype c);+  ++  /* Fl_Value_Slider specific */+  FL_EXPORT_C(fl_Value_Slider,    Fl_Value_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Value_Slider   , Fl_Value_Slider_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Value_Slider,    Fl_Hor_Value_Slider_New_WithLabel)(int x, int y, int w, int h, const char* label);+  FL_EXPORT_C(fl_Value_Slider   , Fl_Hor_Value_Slider_New)(int x, int y, int w, int h);+  FL_EXPORT_C(void,      Fl_Value_Slider_Destroy)(fl_Value_Slider value_slider);+  FL_EXPORT_C(Fl_Font, Fl_Value_Slider_textfont)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void, Fl_Value_Slider_set_textfont)(fl_Value_Slider value_slider, Fl_Font s);+  FL_EXPORT_C(Fl_Fontsize, Fl_Value_Slider_textsize)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void, Fl_Value_Slider_set_textsize)(fl_Value_Slider value_slider, Fl_Fontsize s);+  FL_EXPORT_C(Fl_Color, Fl_Value_Slider_textcolor)(fl_Value_Slider value_slider);+  FL_EXPORT_C(void, Fl_Value_Slider_set_textcolor)(fl_Value_Slider value_slider, Fl_Color s);+  FL_EXPORT_C(int,Fl_Value_Slider_handle)(fl_Widget self, int event);+#ifdef __cplusplus+}+#endif+#endif /* __FL_SLIDER_C__ */
+ c-src/Fl_WidgetC.cpp view
@@ -0,0 +1,472 @@+#include "Fl_WidgetC.h"+#ifdef __cplusplus+Fl_DerivedWidget::Fl_DerivedWidget(int X, int Y, int W, int H, const char *l, fl_Widget_Virtual_Funcs* funcs) : Fl_Widget(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = (void*)0;+}+Fl_DerivedWidget::Fl_DerivedWidget(int X, int Y, int W, int H, fl_Widget_Virtual_Funcs* funcs):Fl_Widget(X,Y,W,H){+    overriddenFuncs = funcs;+    other_data = (void*)0;+}+Fl_DerivedWidget::~Fl_DerivedWidget(){+  destroy_data();+  free(overriddenFuncs);+}+void* Fl_DerivedWidget::get_other_data(){+  return this->other_data;+}+void Fl_DerivedWidget::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedWidget::destroy_data(){+  if (this->overriddenFuncs->destroy_data != NULL){+    this->overriddenFuncs->destroy_data((fl_Widget) this);+  }+}+void Fl_DerivedWidget::draw(){+  // defined as virtual void draw = 0 in Fl_Widget.H, needs to be provided.+  this->overriddenFuncs->draw((fl_Widget) this);+}+void Fl_DerivedWidget::draw_box(){+  Fl_Widget::draw_box();+}+void Fl_DerivedWidget::draw_box(Fl_Boxtype t, Fl_Color c){+  Fl_Widget::draw_box(t,c);+}+void Fl_DerivedWidget::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+  Fl_Widget::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedWidget::draw_backdrop(){+  Fl_Widget::draw_backdrop();+}+void Fl_DerivedWidget::draw_focus(){+  Fl_Widget::draw_focus();+}+void Fl_DerivedWidget::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+  Fl_Widget::draw_focus(t,x,y,w,h);+}+void Fl_DerivedWidget::draw_label(){+  Fl_Widget::draw_label();+}+void Fl_DerivedWidget::draw_label(int x,int y,int w,int h,Fl_Align alignment){+  Fl_Widget::draw_label(x,y,w,h,alignment);+}+int Fl_DerivedWidget::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Widget) this,event);+  }+  else {+    i = Fl_Widget::handle(event);+  }+  return i;+}+void Fl_DerivedWidget::resize_super(int x, int y, int w, int h){+  Fl_Widget::resize(x,y,w,h);+}+void Fl_DerivedWidget::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Widget) this,x,y,w,h);+  }+  else {+    Fl_Widget::resize(x,y,w,h);+  }+}+void Fl_DerivedWidget::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Widget) this);+  }+  else {+    Fl_Widget::show();+  }+}+void Fl_DerivedWidget::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Widget) this);+  }+  else {+    Fl_Widget::hide();+  }+}+Fl_Group* Fl_DerivedWidget::as_group(){+  Fl_Group* grp;+  if (this->overriddenFuncs->as_group != NULL) {+    grp = (static_cast<Fl_Group*>(this->overriddenFuncs->as_group((fl_Widget) this)));+  }+  else {+    grp = Fl_Widget::as_group();+  }+  return grp;+}+Fl_Window* Fl_DerivedWidget::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Widget) this)));+  }+  else {+    win = Fl_Widget::as_window();+  }+  return win;+}+Fl_Gl_Window* Fl_DerivedWidget::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Widget) this)));+  }+  else {+    win = Fl_Widget::as_gl_window();+  }+  return win;+}+ EXPORT {+#endif+  FL_EXPORT_C(fl_Widget_Virtual_Funcs*, Fl_Widget_default_virtual_funcs)(){+    fl_Widget_Virtual_Funcs* ptr = (fl_Widget_Virtual_Funcs*)malloc(sizeof(fl_Widget_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->hide = NULL;+    ptr->as_window = NULL;+    ptr->as_gl_window = NULL;+    ptr->as_group = NULL;+    ptr->destroy_data = NULL;+    return ptr;+  }+  FL_EXPORT_C(int,Fl_Widget_handle)(fl_Widget self, int event){+    return (static_cast<Fl_DerivedWidget*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Widget_parent)(fl_Widget widget){+    return (fl_Group) (static_cast<Fl_DerivedWidget*>(widget))->parent();+  }+  FL_EXPORT_C(void,Fl_Widget_set_parent)(fl_Widget widget,fl_Group grp){+    (static_cast<Fl_DerivedWidget*>(widget))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Widget_type)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->type();+  }+  FL_EXPORT_C(void,Fl_Widget_set_type)(fl_Widget widget,uchar t){+    (static_cast<Fl_DerivedWidget*>(widget))->type(t);+  }++FL_EXPORT_C(void, Fl_Widget_draw_box)(fl_Widget Widget){+ (static_cast<Fl_DerivedWidget*>(Widget))->draw_box();+}+FL_EXPORT_C(void, Fl_Widget_draw_box_with_tc)(fl_Widget Widget,Fl_Boxtype t, Fl_Color c){+ (static_cast<Fl_DerivedWidget*>(Widget))->draw_box(t,c);+}+FL_EXPORT_C(void, Fl_Widget_draw_box_with_txywhc)(fl_Widget Widget,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+ (static_cast<Fl_DerivedWidget*>(Widget))->draw_box(t,x,y,w,h,c);+}+FL_EXPORT_C(void, Fl_Widget_draw_backdrop)(fl_Widget Widget){+ (static_cast<Fl_DerivedWidget*>(Widget))->draw_backdrop();+}+FL_EXPORT_C(void, Fl_Widget_draw_focus)(fl_Widget Widget){+ (static_cast<Fl_DerivedWidget*>(Widget))->draw_focus();+}+FL_EXPORT_C(void, Fl_Widget_draw_focus_with_txywh)(fl_Widget Widget,Fl_Boxtype t, int x,int y,int w,int h){+ (static_cast<Fl_DerivedWidget*>(Widget))->draw_focus(t,x,y,w,h);+}+FL_EXPORT_C(void, Fl_Widget_draw_label)(fl_Widget Widget){+ (static_cast<Fl_DerivedWidget*>(Widget))->draw_label();+}+  FL_EXPORT_C(int,Fl_Widget_x)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->x();+  }+  FL_EXPORT_C(int,Fl_Widget_y)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->y();+  }+  FL_EXPORT_C(int,Fl_Widget_w)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->w();+  }+  FL_EXPORT_C(int,Fl_Widget_h)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->h();+  }+  FL_EXPORT_C(void,Fl_Widget_set_align)(fl_Widget widget, Fl_Align alignment){+    (static_cast<Fl_DerivedWidget*>(widget))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Widget_align)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Widget_box)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->box();+  }+  FL_EXPORT_C(void,Fl_Widget_set_box)(fl_Widget widget,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedWidget*>(widget))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Widget_color)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->color();+  }+  FL_EXPORT_C(void,Fl_Widget_set_color)(fl_Widget widget,Fl_Color bg){+    (static_cast<Fl_DerivedWidget*>(widget))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Widget_set_color_with_bg_sel)(fl_Widget widget,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedWidget*>(widget))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Widget_selection_color)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Widget_set_selection_color)(fl_Widget widget,Fl_Color a){+    (static_cast<Fl_DerivedWidget*>(widget))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Widget_label)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->label();+  }+  FL_EXPORT_C(void,Fl_Widget_copy_label)(fl_Widget widget,const char* new_label){+    (static_cast<Fl_DerivedWidget*>(widget))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Widget_set_label)(fl_Widget widget,const char* text){+    (static_cast<Fl_DerivedWidget*>(widget))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Widget_labeltype)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Widget_set_labeltype)(fl_Widget widget,Fl_Labeltype a){+    (static_cast<Fl_DerivedWidget*>(widget))->labeltype(a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Widget_labelcolor)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->labelcolor();+  }+  FL_EXPORT_C(void,Fl_Widget_set_labelcolor)(fl_Widget widget,Fl_Color c){+    (static_cast<Fl_DerivedWidget*>(widget))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Font,Fl_Widget_labelfont)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Widget_set_labelfont)(fl_Widget widget,Fl_Font c){+    (static_cast<Fl_DerivedWidget*>(widget))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Widget_labelsize)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Widget_set_labelsize)(fl_Widget widget,Fl_Fontsize pix){+    (static_cast<Fl_DerivedWidget*>(widget))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Widget_image)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->image();+  }+  FL_EXPORT_C(void,Fl_Widget_set_image)(fl_Widget widget,fl_Image pix){+    (static_cast<Fl_DerivedWidget*>(widget))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Widget_deimage)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->deimage();+  }+  FL_EXPORT_C(void,Fl_Widget_set_deimage)(fl_Widget widget,fl_Image pix){+    (static_cast<Fl_DerivedWidget*>(widget))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Widget_tooltip)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Widget_copy_tooltip)(fl_Widget widget,const char* text){+    (static_cast<Fl_DerivedWidget*>(widget))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Widget_set_tooltip)(fl_Widget widget,const char* text){+    (static_cast<Fl_DerivedWidget*>(widget))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Widget_set_callback_with_user_data)(fl_Widget widget,fl_Callback* cb,void* p){+    Fl_DerivedWidget* castedWindow = (static_cast<Fl_DerivedWidget*>(widget));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Widget_set_callback)(fl_Widget widget,fl_Callback* cb){+    Fl_DerivedWidget* castedWindow = (static_cast<Fl_DerivedWidget*>(widget));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Widget_other_data)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->get_other_data();+  }+  FL_EXPORT_C(void,Fl_Widget_set_other_data)(fl_Widget widget,void* v){+    (static_cast<Fl_DerivedWidget*>(widget))->set_other_data(v);+  }+  FL_EXPORT_C(void*,Fl_Widget_user_data)(fl_Widget widget){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedWidget*>(widget))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedWidget*>(widget))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Widget_set_user_data)(fl_Widget widget,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Widget*>(widget))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Widget*>(widget))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Widget*>(widget))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Widget_argument)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->argument();+  }+  FL_EXPORT_C(void,Fl_Widget_set_argument)(fl_Widget widget,long v){+    (static_cast<Fl_DerivedWidget*>(widget))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Widget_when)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->when();+  }+  FL_EXPORT_C(void,Fl_Widget_set_when)(fl_Widget widget,uchar i){+    (static_cast<Fl_DerivedWidget*>(widget))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Widget_visible)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->visible();+  }+  FL_EXPORT_C(int,Fl_Widget_visible_r)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Widget_show_super)(fl_Widget widget){+    return (static_cast<Fl_Widget*>(widget))->show();+  }+  FL_EXPORT_C(void,Fl_Widget_show)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->show();+  }+  FL_EXPORT_C(void,Fl_Widget_hide_super)(fl_Widget widget){+    return (static_cast<Fl_Widget*>(widget))->hide();+  }+  FL_EXPORT_C(void,Fl_Widget_hide)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->hide();+  }+  FL_EXPORT_C(void,Fl_Widget_clear_visible)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Widget_active)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->active();+  }+  FL_EXPORT_C(int,Fl_Widget_active_r)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->active_r();+  }+  FL_EXPORT_C(void,Fl_Widget_activate)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->activate();+  }+  FL_EXPORT_C(void,Fl_Widget_deactivate)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Widget_output)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->output();+  }+  FL_EXPORT_C(void,Fl_Widget_set_output)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->output();+  }+  FL_EXPORT_C(void,Fl_Widget_clear_output)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Widget_takesevents)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Widget_set_changed)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->changed();+  }+  FL_EXPORT_C(void,Fl_Widget_clear_changed)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->clear_changed();+  }+  FL_EXPORT_C(unsigned int,Fl_Widget_changed)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->changed();+  }+  FL_EXPORT_C(int,Fl_Widget_take_focus)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Widget_set_active)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->active();+  }+  FL_EXPORT_C(void,Fl_Widget_clear_active)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->clear_active();+  }+  FL_EXPORT_C(void,Fl_Widget_set_visible_focus)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Widget_set_visible)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->set_visible();+  }+  FL_EXPORT_C(void,Fl_Widget_clear_visible_focus)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Widget_modify_visible_focus)(fl_Widget widget,int v){+    (static_cast<Fl_DerivedWidget*>(widget))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Widget_visible_focus)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->visible_focus();+  }+  FL_EXPORT_C(int,Fl_Widget_contains)(fl_Widget widget,fl_Widget w){+    return (static_cast<Fl_DerivedWidget*>(widget))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Widget_inside)(fl_Widget widget,fl_Widget w){+    return (static_cast<Fl_DerivedWidget*>(widget))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Widget_redraw)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->redraw();+  }+  FL_EXPORT_C(void,Fl_Widget_redraw_label)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Widget_damage)(fl_Widget widget){+    return (static_cast<Fl_DerivedWidget*>(widget))->damage();+  }+  FL_EXPORT_C(void,Fl_Widget_clear_damage_with_bitmask)(fl_Widget widget,uchar c){+    (static_cast<Fl_DerivedWidget*>(widget))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Widget_clear_damage)(fl_Widget widget){+    (static_cast<Fl_DerivedWidget*>(widget))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Widget_damage_with_text)(fl_Widget widget,uchar c){+    (static_cast<Fl_DerivedWidget*>(widget))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Widget_damage_inside_widget)(fl_Widget widget,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedWidget*>(widget))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Widget_draw_label_with_xywh_alignment)(fl_Widget widget,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedWidget*>(widget))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Widget_measure_label)(fl_Widget widget,int* ww,int* hh){+    (static_cast<Fl_DerivedWidget*>(widget))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Widget_window)(fl_Widget widget){+    return (fl_Window) (static_cast<Fl_DerivedWidget*>(widget))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Widget_top_window)(fl_Widget widget){+    return (fl_Window) (static_cast<Fl_DerivedWidget*>(widget))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Widget_top_window_offset)(fl_Widget widget, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedWidget*>(widget))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Widget_as_group_super)(fl_Widget widget){+    return (fl_Group) (static_cast<Fl_Widget*>(widget))->as_group();+  }+  FL_EXPORT_C(fl_Group,Fl_Widget_as_group)(fl_Widget widget){+    return (fl_Group) (static_cast<Fl_DerivedWidget*>(widget))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Widget_as_gl_window_super)(fl_Widget widget){+    return (fl_Gl_Window) (static_cast<Fl_Widget*>(widget))->as_gl_window();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Widget_as_gl_window)(fl_Widget widget){+    return (fl_Gl_Window) (static_cast<Fl_DerivedWidget*>(widget))->as_gl_window();+  }+  FL_EXPORT_C(void,Fl_Widget_resize_super)(fl_Widget widget,int X,int Y,int W,int H){+    return (static_cast<Fl_DerivedWidget*>(widget))->resize_super(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Widget_resize)(fl_Widget widget,int X,int Y,int W,int H){+    return (static_cast<Fl_DerivedWidget*>(widget))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(fl_Widget,    Fl_Widget_New)(int X, int Y, int W, int H){+    fl_Widget_Virtual_Funcs* fs = Fl_Widget_default_virtual_funcs();+    Fl_DerivedWidget* w = new Fl_DerivedWidget(X,Y,W,H,fs);+    return (fl_Widget)w;+  }+  FL_EXPORT_C(fl_Widget,    Fl_Widget_New_WithLabel)(int X, int Y, int W, int H, const char* label){+    fl_Widget_Virtual_Funcs* fs = Fl_Widget_default_virtual_funcs();+    Fl_DerivedWidget* w = new Fl_DerivedWidget(X,Y,W,H,label,fs);+    return (fl_Widget)w;+  }+  FL_EXPORT_C(fl_Widget,    Fl_OverriddenWidget_New)(int X, int Y, int W, int H,fl_Widget_Virtual_Funcs* fs){+    Fl_DerivedWidget* w = new Fl_DerivedWidget(X,Y,W,H,fs);+    return (fl_Widget)w;+  }+  FL_EXPORT_C(fl_Widget,    Fl_OverriddenWidget_New_WithLabel)(int X, int Y, int W, int H, const char* label, fl_Widget_Virtual_Funcs* fs){+    Fl_DerivedWidget* w = new Fl_DerivedWidget(X,Y,W,H,label,fs);+    return (fl_Widget)w;+  }+  FL_EXPORT_C(void, Fl_Widget_Destroy)(fl_Widget widget){+    delete (static_cast<Fl_DerivedWidget*>(widget));+  }+#ifdef __cplusplus+ }+#endif
+ c-src/Fl_WidgetC.h view
@@ -0,0 +1,147 @@+#ifndef __FL_WIDGET_C__+#define __FL_WIDGET_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "Fl_CallbackC.h"+EXPORT {+  class Fl_DerivedWidget : public Fl_Widget {+    fl_Widget_Virtual_Funcs* overriddenFuncs;+    void* other_data;+  public:+    void* get_other_data();+    void set_other_data(void*);+    void destroy_data();+    void draw_box();+    void draw_box(Fl_Boxtype t, Fl_Color c);+    void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+    void draw_backdrop();+    void draw_focus();+    void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+    void draw_label();+    void draw_label(int x,int y,int w,int h,Fl_Align alignment);+    virtual void draw();+    virtual int handle(int event);+    void resize_super(int x, int y, int w, int h);+    virtual void resize(int x, int y, int w, int h);+    virtual void show();+    virtual void hide();+    virtual Fl_Group* as_group();+    virtual Fl_Window* as_window();+    virtual Fl_Gl_Window* as_gl_window();+    Fl_DerivedWidget(int X, int Y, int W, int H, const char *l, fl_Widget_Virtual_Funcs* funcs);+    Fl_DerivedWidget(int X, int Y, int W, int H, fl_Widget_Virtual_Funcs* funcs);+    ~Fl_DerivedWidget();+  };+#endif+  FL_EXPORT_C(int,Fl_Widget_handle)(fl_Widget self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Widget_parent)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_parent)(fl_Widget widget, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Widget_type)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_type)(fl_Widget widget, uchar t);+  FL_EXPORT_C(void, Fl_Widget_draw_box)(fl_Widget Widget);+  FL_EXPORT_C(void, Fl_Widget_draw_box_with_tc)(fl_Widget Widget,Fl_Boxtype t, Fl_Color c);+  FL_EXPORT_C(void, Fl_Widget_draw_box_with_txywhc)(fl_Widget Widget,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+  FL_EXPORT_C(void, Fl_Widget_draw_backdrop)(fl_Widget Widget);+  FL_EXPORT_C(void, Fl_Widget_draw_focus)(fl_Widget Widget);+  FL_EXPORT_C(void, Fl_Widget_draw_focus_with_txywh)(fl_Widget Widget,Fl_Boxtype t, int x,int y,int w,int h);+  FL_EXPORT_C(void, Fl_Widget_draw_label)(fl_Widget Widget);+  FL_EXPORT_C(int,          Fl_Widget_x)(fl_Widget widget);+  FL_EXPORT_C(int,          Fl_Widget_y)(fl_Widget widget);+  FL_EXPORT_C(int,          Fl_Widget_w)(fl_Widget widget);+  FL_EXPORT_C(int,          Fl_Widget_h)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_align)(fl_Widget widget, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Widget_align)(fl_Widget widget);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Widget_box)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_box)(fl_Widget widget, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Widget_color)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_color)(fl_Widget widget, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Widget_set_color_with_bg_sel)(fl_Widget widget,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Widget_selection_color)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_selection_color)(fl_Widget widget, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Widget_label)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_copy_label)(fl_Widget widget, const char* new_label);+  FL_EXPORT_C(void,         Fl_Widget_set_label)(fl_Widget widget, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Widget_labeltype)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_labeltype)(fl_Widget widget, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Widget_labelcolor)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_labelcolor)(fl_Widget widget, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Widget_labelfont)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_labelfont)(fl_Widget widget, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Widget_labelsize)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_labelsize)(fl_Widget widget, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Widget_image)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_image)(fl_Widget widget, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Widget_deimage)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_deimage)(fl_Widget widget, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Widget_tooltip)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_copy_tooltip)(fl_Widget widget, const char* text);+  FL_EXPORT_C(void,         Fl_Widget_set_tooltip)(fl_Widget widget, const char* text);+  FL_EXPORT_C(void,         Fl_Widget_set_callback_with_user_data)(fl_Widget widget, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Widget_set_callback)(fl_Widget widget, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Widget_other_data)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_other_data)(fl_Widget widget, void* v);+  FL_EXPORT_C(void*,        Fl_Widget_user_data)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_user_data)(fl_Widget widget, void* v);+  FL_EXPORT_C(long,         Fl_Widget_argument)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_argument)(fl_Widget widget, long v);+  FL_EXPORT_C(Fl_When,      Fl_Widget_when)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_when)(fl_Widget widget, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Widget_visible)(fl_Widget widget);+  FL_EXPORT_C(int,          Fl_Widget_visible_r)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_show_super)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_show)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_hide_super)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_hide)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_visible)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_clear_visible)(fl_Widget widget);+  FL_EXPORT_C(unsigned int, Fl_Widget_active)(fl_Widget widget);+  FL_EXPORT_C(int,          Fl_Widget_active_r)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_activate)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_deactivate)(fl_Widget widget);+  FL_EXPORT_C(unsigned int, Fl_Widget_output)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_output)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_clear_output)(fl_Widget widget);+  FL_EXPORT_C(unsigned int, Fl_Widget_takesevents)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_changed)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_clear_changed)(fl_Widget widget);+  FL_EXPORT_C(unsigned int, Fl_Widget_changed)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_active)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_clear_active)(fl_Widget widget);+  FL_EXPORT_C(int,          Fl_Widget_take_focus)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_set_visible_focus)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_clear_visible_focus)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_modify_visible_focus)(fl_Widget widget, int v);+  FL_EXPORT_C(unsigned int, Fl_Widget_visible_focus)(fl_Widget widget);+  FL_EXPORT_C(int,          Fl_Widget_contains)(fl_Widget widget, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Widget_inside)(fl_Widget widget, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Widget_redraw)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_redraw_label)(fl_Widget widget);+  FL_EXPORT_C(uchar,        Fl_Widget_damage)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_clear_damage_with_bitmask)(fl_Widget widget, uchar c);+  FL_EXPORT_C(void,         Fl_Widget_clear_damage)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_damage_with_text)(fl_Widget widget, uchar c);+  FL_EXPORT_C(void,         Fl_Widget_damage_inside_widget)(fl_Widget widget, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Widget_draw_label_with_xywh_alignment)(fl_Widget widget, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Widget_measure_label)(fl_Widget widget, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Widget_window)(fl_Widget widget);+  FL_EXPORT_C(fl_Window,    Fl_Widget_top_window)(fl_Widget widget);+  FL_EXPORT_C(fl_Window ,   Fl_Widget_top_window_offset)(fl_Widget widget, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Widget_as_group_super)(fl_Widget widget);+  FL_EXPORT_C(fl_Group,     Fl_Widget_as_group)(fl_Widget widget);+  FL_EXPORT_C(fl_Gl_Window, Fl_Widget_as_gl_window_super)(fl_Widget widget);+  FL_EXPORT_C(fl_Gl_Window, Fl_Widget_as_gl_window)(fl_Widget widget);+  FL_EXPORT_C(void,         Fl_Widget_resize_super)(fl_Widget widget,int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Widget_resize)(fl_Widget widget,int X, int Y, int W, int H);+  FL_EXPORT_C(fl_Widget_Virtual_Funcs*, Fl_Widget_default_virtual_funcs)();+  FL_EXPORT_C(fl_Widget,    Fl_Widget_New)(int X, int Y, int W, int H);+  FL_EXPORT_C(fl_Widget,    Fl_Widget_New_WithLabel)(int X, int Y, int W, int H, const char* label);+  FL_EXPORT_C(fl_Widget,    Fl_OverriddenWidget_New)(int X, int Y, int W, int H,fl_Widget_Virtual_Funcs* fs);+  FL_EXPORT_C(fl_Widget,    Fl_OverriddenWidget_New_WithLabel)(int X, int Y, int W, int H, const char* label, fl_Widget_Virtual_Funcs* fs);+  FL_EXPORT_C(void,         Fl_Widget_Destroy)(fl_Widget widget);+#ifdef __cplusplus+}+#endif+#endif /* __FL_WIDGET_C__ */
+ c-src/Fl_WindowC.cpp view
@@ -0,0 +1,799 @@+#include "Fl_WindowC.h"++#ifdef __cplusplus+Fl_DerivedWindow::Fl_DerivedWindow(int X, int Y, int W, int H, const char *l, fl_Window_Virtual_Funcs* funcs) : Fl_Window(X,Y,W,H,l){+    overriddenFuncs = funcs;+    other_data = 0;+ }+Fl_DerivedWindow::Fl_DerivedWindow(int X, int Y, int W, int H, fl_Window_Virtual_Funcs* funcs):Fl_Window(X,Y,W,H,0){+    overriddenFuncs = funcs;+    other_data = 0;+  }+Fl_DerivedWindow::Fl_DerivedWindow(int W, int H, const char *l, fl_Window_Virtual_Funcs* funcs) : Fl_Window(W,H,l){+    overriddenFuncs = funcs;+    other_data = 0;+ }+Fl_DerivedWindow::Fl_DerivedWindow(int W, int H, fl_Window_Virtual_Funcs* funcs):Fl_Window(W,H,0){+    overriddenFuncs = funcs;+    other_data = 0;+  }+Fl_DerivedWindow::~Fl_DerivedWindow(){+  destroy_data();+  free(overriddenFuncs);+}+void* Fl_DerivedWindow::get_other_data(){+  return this->other_data;+}+void Fl_DerivedWindow::set_other_data(void* data){+  this->other_data = data;+}+void Fl_DerivedWindow::destroy_data(){+  if (this->overriddenFuncs->destroy_data != NULL){+    this->overriddenFuncs->destroy_data((fl_Window) this);+  }+}+void Fl_DerivedWindow::draw_box(){+  Fl_Window::draw_box();+}+void Fl_DerivedWindow::draw_box(Fl_Boxtype t, Fl_Color c){+  Fl_Window::draw_box(t,c);+}+void Fl_DerivedWindow::draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+  Fl_Window::draw_box(t,x,y,w,h,c);+}+void Fl_DerivedWindow::draw_backdrop(){+  Fl_Window::draw_backdrop();+}+void Fl_DerivedWindow::draw_focus(){+  Fl_Window::draw_focus();+}+void Fl_DerivedWindow::draw_focus(Fl_Boxtype t, int x,int y,int w,int h){+  Fl_Window::draw_focus(t,x,y,w,h);+}+void Fl_DerivedWindow::draw_label(){+  Fl_Window::draw_label();+}+void Fl_DerivedWindow::draw_label(int x,int y,int w,int h,Fl_Align alignment){+  Fl_Window::draw_label(x,y,w,h,alignment);+}+void Fl_DerivedWindow::draw_child(Fl_Widget* widget){+  Fl_Window::draw_child(*widget);+}+void Fl_DerivedWindow::draw_children(){+  Fl_Window::draw_children();+}+void Fl_DerivedWindow::draw_outside_label(Fl_Widget* widget){+  Fl_Window::draw_outside_label(*widget);+}+void Fl_DerivedWindow::update_child(Fl_Widget* widget){+  Fl_Window::update_child(*widget);+}+int* Fl_DerivedWindow:: sizes(){+  return Fl_Window::sizes();+}+int Fl_DerivedWindow::handle(int event){+  int i;+  if (this->overriddenFuncs->handle != NULL) {+    i = this->overriddenFuncs->handle((fl_Window) this,event);+  }+  else {+    i = Fl_Window::handle(event);+  }+  return i;+}+Fl_Group* Fl_DerivedWindow::as_group(){+  Fl_Group* i;+  if (this->overriddenFuncs->as_group != NULL) {+    i = (static_cast<Fl_Group*>(this->overriddenFuncs->as_group((fl_Window) this)));+  }+  else {+    i = Fl_Window::as_group();+  }+  return i;+}+void Fl_DerivedWindow::resize(int x, int y, int w, int h){+  if (this->overriddenFuncs->resize != NULL) {+    this->overriddenFuncs->resize((fl_Window) this,x,y,w,h);+  }+  else {+    Fl_Window::resize(x,y,w,h);+  }+}++void Fl_DerivedWindow::flush(){+  if (this->overriddenFuncs->flush != NULL) {+    this->overriddenFuncs->flush((fl_Window) this);+  }+  else {+    Fl_Window::flush();+  }+}+void Fl_DerivedWindow::flush_super(){+  Fl_Window::flush();+}++void Fl_DerivedWindow::show(){+  if (this->overriddenFuncs->show != NULL) {+    this->overriddenFuncs->show((fl_Window) this);+  }+  else {+    Fl_Window::show();+  }+}+void Fl_DerivedWindow::show_super(){+  Fl_Window::show();+}+void Fl_DerivedWindow::show(int argc, char** argv){+  Fl_Window::show(argc,argv);+}+void Fl_DerivedWindow::hide(){+  if (this->overriddenFuncs->hide != NULL) {+    this->overriddenFuncs->hide((fl_Window) this);+  }+  else {+    Fl_Window::hide();+  }+}+void Fl_DerivedWindow::draw(){+  if (this->overriddenFuncs->draw != NULL) {+    this->overriddenFuncs->draw((fl_Window) this);+  }+  else {+    Fl_Window::draw();+  }+}+void Fl_DerivedWindow::draw_super(){+  Fl_Window::draw();+}+Fl_Window* Fl_DerivedWindow::as_window(){+  Fl_Window* win;+  if (this->overriddenFuncs->as_window != NULL) {+    win = (static_cast<Fl_Window*>(this->overriddenFuncs->as_window((fl_Window) this)));+  }+  else {+    win = Fl_Window::as_window();+  }+  return win;+}+Fl_Gl_Window* Fl_DerivedWindow::as_gl_window(){+  Fl_Gl_Window* win;+  if (this->overriddenFuncs->as_gl_window != NULL) {+    win = (static_cast<Fl_Gl_Window*>(this->overriddenFuncs->as_gl_window((fl_Window) this)));+  }+  else {+    win = Fl_Window::as_gl_window();+  }+  return win;+}+EXPORT {+#endif+  FL_EXPORT_C(fl_Window_Virtual_Funcs*, Fl_Window_default_virtual_funcs)(){+    fl_Window_Virtual_Funcs* ptr = (fl_Window_Virtual_Funcs*)malloc(sizeof(fl_Window_Virtual_Funcs));+    ptr->draw = NULL;+    ptr->handle = NULL;+    ptr->resize = NULL;+    ptr->show  = NULL;+    ptr->hide = NULL;+    ptr->as_window = NULL;+    ptr->as_gl_window = NULL;+    ptr->flush = NULL;+    ptr->destroy_data = NULL;+    return ptr;+  }+  FL_EXPORT_C(int,Fl_Window_handle)(fl_Window self, int event){+    return (static_cast<Fl_DerivedWindow*>(self))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Window_parent)(fl_Window win){+    return (fl_Group) (static_cast<Fl_DerivedWindow*>(win))->parent();+  }+  FL_EXPORT_C(void,Fl_Window_set_parent)(fl_Window win,fl_Group grp){+    (static_cast<Fl_DerivedWindow*>(win))->parent((static_cast<Fl_Group*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Window_type)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->type();+  }+  FL_EXPORT_C(void,Fl_Window_set_type)(fl_Window win,uchar t){+    (static_cast<Fl_DerivedWindow*>(win))->type(t);+  }++FL_EXPORT_C(void, Fl_Window_draw_box)(fl_Window Window){+ (static_cast<Fl_DerivedWindow*>(Window))->draw_box();+}+FL_EXPORT_C(void, Fl_Window_draw_box_with_tc)(fl_Window Window,Fl_Boxtype t, Fl_Color c){+ (static_cast<Fl_DerivedWindow*>(Window))->draw_box(t,c);+}+FL_EXPORT_C(void, Fl_Window_draw_box_with_txywhc)(fl_Window Window,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c){+ (static_cast<Fl_DerivedWindow*>(Window))->draw_box(t,x,y,w,h,c);+}+FL_EXPORT_C(void, Fl_Window_draw_backdrop)(fl_Window Window){+ (static_cast<Fl_DerivedWindow*>(Window))->draw_backdrop();+}+FL_EXPORT_C(void, Fl_Window_draw_focus)(fl_Window Window){+ (static_cast<Fl_DerivedWindow*>(Window))->draw_focus();+}+FL_EXPORT_C(void, Fl_Window_draw_focus_with_txywh)(fl_Window Window,Fl_Boxtype t, int x,int y,int w,int h){+ (static_cast<Fl_DerivedWindow*>(Window))->draw_focus(t,x,y,w,h);+}+FL_EXPORT_C(void, Fl_Window_draw_label)(fl_Window Window){+ (static_cast<Fl_DerivedWindow*>(Window))->draw_label();+}+  FL_EXPORT_C(int,Fl_Window_x)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->x();+  }+  FL_EXPORT_C(int,Fl_Window_y)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->y();+  }+  FL_EXPORT_C(int,Fl_Window_w)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->w();+  }+  FL_EXPORT_C(int,Fl_Window_h)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->h();+  }+  FL_EXPORT_C(void,Fl_Window_set_align)(fl_Window window, Fl_Align alignment){+    (static_cast<Fl_DerivedWindow*>(window))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Window_align)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Window_box)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->box();+  }+  FL_EXPORT_C(void,Fl_Window_set_box)(fl_Window win,Fl_Boxtype new_box){+    (static_cast<Fl_DerivedWindow*>(win))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Window_color)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->color();+  }+  FL_EXPORT_C(void,Fl_Window_set_color)(fl_Window win,Fl_Color bg){+    (static_cast<Fl_DerivedWindow*>(win))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Window_set_color_with_bg_sel)(fl_Window win,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_DerivedWindow*>(win))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Window_selection_color)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Window_set_selection_color)(fl_Window win,Fl_Color a){+    (static_cast<Fl_DerivedWindow*>(win))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Window_label)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->label();+  }+  FL_EXPORT_C(void,Fl_Window_copy_label)(fl_Window win,const char* new_label){+    (static_cast<Fl_DerivedWindow*>(win))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Window_set_label)(fl_Window win,const char* text){+    (static_cast<Fl_DerivedWindow*>(win))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Window_labeltype)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Window_set_labeltype)(fl_Window win,Fl_Labeltype a){+    (static_cast<Fl_DerivedWindow*>(win))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Window_set_labelcolor)(fl_Window win,Fl_Color c){+    (static_cast<Fl_DerivedWindow*>(win))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Window_labelcolor)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Window_labelfont)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Window_set_labelfont)(fl_Window win,Fl_Font c){+    (static_cast<Fl_DerivedWindow*>(win))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Window_labelsize)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Window_set_labelsize)(fl_Window win,Fl_Fontsize pix){+    (static_cast<Fl_DerivedWindow*>(win))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Window_image)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->image();+  }+  FL_EXPORT_C(void,Fl_Window_set_image)(fl_Window win,fl_Image pix){+    (static_cast<Fl_DerivedWindow*>(win))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Window_deimage)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->deimage();+  }+  FL_EXPORT_C(void,Fl_Window_set_deimage)(fl_Window win,fl_Image pix){+    (static_cast<Fl_DerivedWindow*>(win))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Window_tooltip)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Window_copy_tooltip)(fl_Window win,const char* text){+    (static_cast<Fl_DerivedWindow*>(win))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Window_set_tooltip)(fl_Window win,const char* text){+    (static_cast<Fl_DerivedWindow*>(win))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Window_set_callback_with_user_data)(fl_Window win,fl_Callback* cb,void* p){+    Fl_DerivedWindow* castedWindow = (static_cast<Fl_DerivedWindow*>(win));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Window_set_callback)(fl_Window win,fl_Callback* cb){+    Fl_DerivedWindow* castedWindow = (static_cast<Fl_DerivedWindow*>(win));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Window_user_data)(fl_Window win){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_DerivedWindow*>(win))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_DerivedWindow*>(win))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Window_set_user_data)(fl_Window win,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Window*>(win))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Window*>(win))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Window*>(win))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Window_argument)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->argument();+  }+  FL_EXPORT_C(void,Fl_Window_set_argument)(fl_Window win,long v){+    (static_cast<Fl_DerivedWindow*>(win))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Window_when)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->when();+  }+  FL_EXPORT_C(void,Fl_Window_set_when)(fl_Window win,uchar i){+    (static_cast<Fl_DerivedWindow*>(win))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Window_visible)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->visible();+  }+  FL_EXPORT_C(int,Fl_Window_visible_r)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Window_set_visible)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->visible();+  }+  FL_EXPORT_C(void,Fl_Window_clear_visible)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Window_active)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->active();+  }+  FL_EXPORT_C(int,Fl_Window_active_r)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->active_r();+  }+  FL_EXPORT_C(void,Fl_Window_activate)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->activate();+  }+  FL_EXPORT_C(void,Fl_Window_deactivate)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Window_output)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Window_set_output)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->output();+  }+  FL_EXPORT_C(void,Fl_Window_clear_output)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Window_takesevents)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Window_set_changed)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->changed();+  }+  FL_EXPORT_C(void,Fl_Window_clear_changed)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Window_take_focus)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Window_set_visible_focus)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Window_clear_visible_focus)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Window_modify_visible_focus)(fl_Window win,int v){+    (static_cast<Fl_DerivedWindow*>(win))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Window_visible_focus)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Window_do_callback)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Window_do_callback_with_widget_and_user_data)(fl_Window win,fl_Widget w,long arg){+    (static_cast<Fl_DerivedWindow*>(win))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Window_do_callback_with_widget_and_default_user_data)(fl_Window win,fl_Widget w){+    (static_cast<Fl_DerivedWindow*>(win))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Window_contains)(fl_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedWindow*>(win))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Window_inside)(fl_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedWindow*>(win))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Window_redraw)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->redraw();+  }+  FL_EXPORT_C(void,Fl_Window_redraw_label)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Window_damage)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->damage();+  }+  FL_EXPORT_C(void,Fl_Window_clear_damage_with_bitmask)(fl_Window win,uchar c){+    (static_cast<Fl_DerivedWindow*>(win))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Window_clear_damage)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Window_damage_with_text)(fl_Window win,uchar c){+    (static_cast<Fl_DerivedWindow*>(win))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Window_damage_inside_widget)(fl_Window win,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_DerivedWindow*>(win))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Window_draw_label_with_xywh_alignment)(fl_Window win,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_DerivedWindow*>(win))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Window_measure_label)(fl_Window win,int* ww,int* hh){+    (static_cast<Fl_DerivedWindow*>(win))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Group,Fl_Window_as_group)(fl_Window win){+    return (fl_Group) (static_cast<Fl_DerivedWindow*>(win))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Window_as_gl_window)(fl_Window win){+    return (fl_Gl_Window) (static_cast<Fl_DerivedWindow*>(win))->as_gl_window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Window_window)(fl_Window window){+    return (fl_Window) (static_cast<Fl_DerivedWindow*>(window))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Window_top_window)(fl_Window window){+    return (fl_Window) (static_cast<Fl_DerivedWindow*>(window))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Window_top_window_offset)(fl_Window window, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_DerivedWindow*>(window))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(void, Fl_Window_draw_child)(fl_Window Window,fl_Widget widget){+    (static_cast<Fl_DerivedWindow*>(Window))->draw_child(static_cast<Fl_Widget*>(widget));+  }+  FL_EXPORT_C(void, Fl_Window_draw_children)(fl_Window Window){+    (static_cast<Fl_DerivedWindow*>(Window))->draw_children();+  }+  FL_EXPORT_C(void, Fl_Window_draw_outside_label)(fl_Window Window,fl_Widget widget){+    (static_cast<Fl_DerivedWindow*>(Window))->draw_outside_label(static_cast<Fl_Widget*>(widget));+  }+  FL_EXPORT_C(void, Fl_Window_update_child)(fl_Window Window,fl_Widget widget){+    (static_cast<Fl_DerivedWindow*>(Window))->update_child(static_cast<Fl_Widget*>(widget));+  }+  FL_EXPORT_C(int*, Fl_Window_sizes)(fl_Window Window){+    return (static_cast<Fl_DerivedWindow*>(Window))->sizes();+  }+  FL_EXPORT_C(void,Fl_Window_begin)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->begin();+  }+  FL_EXPORT_C(void,Fl_Window_end)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->end();+  }+  FL_EXPORT_C(int,Fl_Window_find)(fl_Window win,fl_Widget w){+    return (static_cast<Fl_DerivedWindow*>(win))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Window_add)(fl_Window win,fl_Widget w){+    (static_cast<Fl_DerivedWindow*>(win))->add((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Window_insert)(fl_Window win,fl_Widget w,int i){+    (static_cast<Fl_DerivedWindow*>(win))->insert(*(static_cast<Fl_Widget*>(w)),i);+  }+  FL_EXPORT_C(void,Fl_Window_remove_index)(fl_Window win,int index){+    (static_cast<Fl_DerivedWindow*>(win))->remove(index);+  }+  FL_EXPORT_C(void,Fl_Window_remove_widget)(fl_Window win,fl_Widget w){+    (static_cast<Fl_DerivedWindow*>(win))->remove((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Window_clear)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->clear();+  }+  FL_EXPORT_C(void,Fl_Window_set_resizable_by_reference)(fl_Window win,fl_Widget o){+    (static_cast<Fl_DerivedWindow*>(win))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Window_set_resizable)(fl_Window win,fl_Widget o){+    (static_cast<Fl_DerivedWindow*>(win))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Window_resizable)(fl_Window win){+    return (fl_Widget)(static_cast<Fl_DerivedWindow*>(win))->resizable();+  }+  FL_EXPORT_C(void,Fl_Window_add_resizable)(fl_Window win,fl_Widget o){+    return (static_cast<Fl_DerivedWindow*>(win))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Window_init_sizes)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->init_sizes();+  }+  FL_EXPORT_C(int,Fl_Window_children)(fl_Window self){+    return (static_cast<Fl_DerivedWindow*>(self))->children();+  }+  FL_EXPORT_C(void,Fl_Window_set_clip_children)(fl_Window win,int c){+    return (static_cast<Fl_DerivedWindow*>(win))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Window_clip_children)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Window_focus)(fl_Window win, fl_Widget W){+    return (static_cast<Fl_DerivedWindow*>(win))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Window__ddfdesign_kludge)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(void, Fl_Window_insert_with_before)(fl_Window self, fl_Widget w, fl_Widget before){+    (static_cast<Fl_DerivedWindow*>(self))->insert(*(static_cast<Fl_Widget*>(w)),(static_cast<Fl_Widget*>(before)));+  }+  FL_EXPORT_C(fl_Widget*, Fl_Window_array)(fl_Window self){+    return (fl_Widget*)(static_cast<Fl_DerivedWindow*>(self))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Window_child)(fl_Window self, int n){+    return (fl_Widget)(static_cast<Fl_DerivedWindow*>(self))->child(n);+  }+  // FL_EXPORT_C(void,Fl_Window_forms_end)(fl_Window win){+  //   return (static_cast<Fl_DerivedWindow*>(win))->forms_end();+  // }+  FL_EXPORT_C(void*, Fl_Window_other_data)(fl_Window window){+    return (static_cast<Fl_DerivedWindow*>(window))->get_other_data();+  }+  FL_EXPORT_C(void, Fl_Window_set_other_data)(fl_Window window, void* v){+    (static_cast<Fl_DerivedWindow*>(window))->set_other_data(v);+  }+  FL_EXPORT_C(fl_Window, Fl_Window_New_WithLabel)(int w, int h, const char* title) {+    fl_Window_Virtual_Funcs* funcs = Fl_Window_default_virtual_funcs();+    Fl_DerivedWindow* window = new Fl_DerivedWindow(w,h,title,funcs);+    return (static_cast<fl_Window>(window));+  }+  FL_EXPORT_C(fl_Window, Fl_OverriddenWindow_New_WithLabel)(int w, int h, const char* title, fl_Window_Virtual_Funcs* funcs) {+    Fl_DerivedWindow* window = new Fl_DerivedWindow(w,h,title,funcs);+    return (static_cast<fl_Window>(window));+  }+  FL_EXPORT_C(fl_Window, Fl_Window_New)(int w, int h) {+    fl_Window_Virtual_Funcs* funcs = Fl_Window_default_virtual_funcs();+    Fl_DerivedWindow* window = new Fl_DerivedWindow(w,h,0,funcs);+    return (fl_Window)window;+  }+  FL_EXPORT_C(fl_Window, Fl_OverriddenWindow_New)(int w, int h,fl_Window_Virtual_Funcs* funcs) {+    Fl_DerivedWindow* window = new Fl_DerivedWindow(w,h,0,funcs);+    return (fl_Window)window;+  }+FL_EXPORT_C(fl_Window, Fl_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title) {+    fl_Window_Virtual_Funcs* funcs = Fl_Window_default_virtual_funcs();+    Fl_DerivedWindow* window = new Fl_DerivedWindow(x,y,w,h,title,funcs);+    return (fl_Window)window;+  }+FL_EXPORT_C(fl_Window, Fl_OverriddenWindow_NewXY_WithLabel)(int x, int y, int w, int h, const char* title,fl_Window_Virtual_Funcs* funcs) {+    Fl_DerivedWindow* window = new Fl_DerivedWindow(x,y,w,h,title,funcs);+    return (fl_Window)window;+  }+  FL_EXPORT_C(fl_Window, Fl_Window_NewXY)(int x, int y, int w, int h) {+    fl_Window_Virtual_Funcs* funcs = Fl_Window_default_virtual_funcs();+    Fl_DerivedWindow* window = new Fl_DerivedWindow(x,y,w,h,0,funcs);+    return (fl_Window)window;+  }+  FL_EXPORT_C(fl_Window, Fl_OverriddenWindow_NewXY)(int x, int y, int w, int h,fl_Window_Virtual_Funcs* funcs) {+    Fl_DerivedWindow* window = new Fl_DerivedWindow(x,y,w,h,0,funcs);+    return (fl_Window)window;+  }+  FL_EXPORT_C(void, Fl_Window_Destroy)(fl_Window window){+    delete (static_cast<Fl_DerivedWindow*>(window));+  }+  FL_EXPORT_C(void, Fl_Window_draw_super)(fl_Window window){+    (static_cast<Fl_DerivedWindow*>(window))->draw_super();+  };+  FL_EXPORT_C(int,  Fl_Window_handle_super)(fl_Window window, int event){+    return (static_cast<Fl_Window*>(window))->handle(event);+  };+  FL_EXPORT_C(fl_Group,  Fl_Window_as_group_super)(fl_Window window){+    return (fl_Group)(static_cast<Fl_Window*>(window))->as_group();+  };+  FL_EXPORT_C(void, Fl_Window_resize_super)(fl_Window window, int x, int y, int w, int h){+    (static_cast<Fl_Window*>(window))->resize(x, y, w, h);+  };+  FL_EXPORT_C(void, Fl_Window_show_super)(fl_Window window){+    (static_cast<Fl_Window*>(window))->show();+  };+  FL_EXPORT_C(void, Fl_Window_hide_super)(fl_Window window){+    (static_cast<Fl_Window*>(window))->hide();+  };+  FL_EXPORT_C(void, Fl_Window_flush_super)(fl_Window window){+    (static_cast<Fl_DerivedWindow*>(window))->flush_super();+  };+  FL_EXPORT_C(fl_Window, Fl_Window_as_window_super)(fl_Window window){+    return (fl_Window)(static_cast<Fl_Window*>(window))->as_window();+  };+  FL_EXPORT_C(fl_Window, Fl_Window_as_window)(fl_Window window){+    return (fl_Window)(static_cast<Fl_DerivedWindow*>(window))->as_window();+  };+  FL_EXPORT_C(fl_Gl_Window, Fl_Window_as_gl_window_super)(fl_Window window){+    return (fl_Gl_Window)(static_cast<Fl_Window*>(window))->as_gl_window();+  };+  FL_EXPORT_C(unsigned int,Fl_Window_changed)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->changed();+  }+  FL_EXPORT_C(void,Fl_Window_fullscreen)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->fullscreen();+  }+  FL_EXPORT_C(void,Fl_Window_fullscreen_off)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->fullscreen_off();+  }+  FL_EXPORT_C(void,Fl_Window_fullscreen_off_with_resize)(fl_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedWindow*>(win))->fullscreen_off(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Window_hide)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->hide();+  }+  FL_EXPORT_C(void,Fl_Window_show)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->show();+  }+  FL_EXPORT_C(void,Fl_Window_show_with_args)(fl_Window win,int argc,char** argv){+    (static_cast<Fl_DerivedWindow*>(win))->show(argc,argv);+  }+  FL_EXPORT_C(void,Fl_Window_resize)(fl_Window win,int X,int Y,int W,int H){+    (static_cast<Fl_DerivedWindow*>(win))->resize(X,Y,W,H);+  }+  FL_EXPORT_C(void,Fl_Window_iconize)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->iconize();+  }+  FL_EXPORT_C(void,Fl_Window_set_border)(fl_Window win,int b){+    (static_cast<Fl_DerivedWindow*>(win))->border(b);+  }+  FL_EXPORT_C(void,Fl_Window_clear_border)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->clear_border();+  }+  FL_EXPORT_C(unsigned int,Fl_Window_border)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->border();+  }+  FL_EXPORT_C(void,Fl_Window_set_override)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->set_override();+  }+  FL_EXPORT_C(unsigned int,Fl_Window_override)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->override();+  }+  FL_EXPORT_C(void,Fl_Window_set_modal)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->set_modal();+  }+  FL_EXPORT_C(unsigned int,Fl_Window_modal)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->modal();+  }+  FL_EXPORT_C(void,Fl_Window_set_non_modal)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->set_non_modal();+  }+  FL_EXPORT_C(unsigned int,Fl_Window_non_modal)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->non_modal();+  }+  FL_EXPORT_C(void,Fl_Window_set_menu_window)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->set_menu_window();+  }+  FL_EXPORT_C(unsigned int,Fl_Window_menu_window)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->menu_window();+  }+  FL_EXPORT_C(void,Fl_Window_set_tooltip_window)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->set_tooltip_window();+  }+  FL_EXPORT_C(unsigned int,Fl_Window_tooltip_window)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->tooltip_window();+  }+  FL_EXPORT_C(void,Fl_Window_hotspot_with_x_y)(fl_Window win,int x,int y){+    (static_cast<Fl_DerivedWindow*>(win))->hotspot(x,y,0);+  }+  FL_EXPORT_C(void,Fl_Window_hotspot_with_x_y_with_offscreen)(fl_Window win,int x,int y,int offscreen){+    (static_cast<Fl_DerivedWindow*>(win))->hotspot(x,y,offscreen);+  }+  FL_EXPORT_C(void,Fl_Window_hotspot_with_widget)(fl_Window win,fl_Widget w){+    (static_cast<Fl_DerivedWindow*>(win))->hotspot((static_cast<Fl_Widget*>(w)),0);+  }+  FL_EXPORT_C(void,Fl_Window_hotspot_with_widget_with_offscreen)(fl_Window win,fl_Widget w,int offscreen){+    (static_cast<Fl_DerivedWindow*>(win))->hotspot((static_cast<Fl_Widget*>(w)),offscreen);+  }+  FL_EXPORT_C(void,Fl_Window_free_position)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->free_position();+  }+  FL_EXPORT_C(fl_Window_size_range_args*,Fl_Window_default_size_range_args)(){+    fl_Window_size_range_args* ptr = (fl_Window_size_range_args*)malloc(sizeof(fl_Window_size_range_args));+    ptr->maxw = 0;+    ptr->maxh = 0;+    ptr->dw = 0;+    ptr->dh = 0;+    ptr->aspect = 0;+    return ptr;+  }+  FL_EXPORT_C(void,Fl_Window_size_range)(fl_Window win,int minw,int minh){+    fl_Window_size_range_args* ptr = Fl_Window_default_size_range_args();+    (static_cast<Fl_DerivedWindow*>(win))->size_range(minw,minh,ptr->maxw, ptr->maxh, ptr->dw,ptr->dh,ptr->aspect);+  }+  FL_EXPORT_C(void,Fl_Window_size_range_with_args)(fl_Window win,int minw,int minh,fl_Window_size_range_args* ptr){+    (static_cast<Fl_DerivedWindow*>(win))->size_range(minw,minh,ptr->maxw, ptr->maxh, ptr->dw,ptr->dh,ptr->aspect);+  }+  FL_EXPORT_C(const char*,Fl_Window_iconlabel)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->iconlabel();+  }+  FL_EXPORT_C(void,Fl_Window_set_iconlabel)(fl_Window win,const char* label){+    (static_cast<Fl_DerivedWindow*>(win))->iconlabel(label);+  }+  FL_EXPORT_C(void,Fl_Window_set_label_with_iconlabel)(fl_Window win,const char* label,const char* iconlabel){+    (static_cast<Fl_DerivedWindow*>(win))->label(label,iconlabel);+  }+  FL_EXPORT_C(const char*,Fl_Window_xclass)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->xclass();+  }+  FL_EXPORT_C(void,Fl_Window_set_xclass)(fl_Window win,const char* c){+    (static_cast<Fl_DerivedWindow*>(win))->xclass(c);+  }+  FL_EXPORT_C(const void*,Fl_Window_icon)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->icon();+  }+  FL_EXPORT_C(void,Fl_Window_set_icon)(fl_Window win,const void * ic){+    (static_cast<Fl_DerivedWindow*>(win))->icon(ic);+  }+  FL_EXPORT_C(int,Fl_Window_shown)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->shown();+  }+  FL_EXPORT_C(int,Fl_Window_x_root)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->x_root();+  }+  FL_EXPORT_C(int,Fl_Window_y_root)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->y_root();+  }+  FL_EXPORT_C(void,Fl_Window_make_current)(fl_Window win){+    (static_cast<Fl_DerivedWindow*>(win))->make_current();+  }+  FL_EXPORT_C(void,Fl_Window_set_cursor_with_bg)(fl_Window win,Fl_Cursor cursor,Fl_Color bg){+    (static_cast<Fl_DerivedWindow*>(win))->cursor(cursor,FL_BLACK, bg);+  }+  FL_EXPORT_C(void,Fl_Window_set_cursor_with_fg)(fl_Window win,Fl_Cursor cursor,Fl_Color fg){+    (static_cast<Fl_DerivedWindow*>(win))->cursor(cursor,fg,FL_WHITE);+  }+  FL_EXPORT_C(void,Fl_Window_set_cursor_with_fg_bg)(fl_Window win,Fl_Cursor cursor,Fl_Color fg,Fl_Color bg){+    (static_cast<Fl_DerivedWindow*>(win))->cursor(cursor,fg,bg);+  }+  FL_EXPORT_C(void,Fl_Window_set_cursor)(fl_Window win,Fl_Cursor cursor){+    (static_cast<Fl_DerivedWindow*>(win))->cursor(cursor,FL_BLACK,FL_WHITE);+  }+  FL_EXPORT_C(void,Fl_Window_set_default_cursor_with_bg)(fl_Window win,Fl_Cursor cursor,Fl_Color bg){+    (static_cast<Fl_DerivedWindow*>(win))->default_cursor(cursor,bg);+  }+  FL_EXPORT_C(void,Fl_Window_set_default_cursor_with_fg)(fl_Window win,Fl_Cursor cursor,Fl_Color fg){+    (static_cast<Fl_DerivedWindow*>(win))->default_cursor(cursor,fg);+  }+  FL_EXPORT_C(void,Fl_Window_set_default_cursor_with_fg_bg)(fl_Window win,Fl_Cursor cursor,Fl_Color fg,Fl_Color bg){+    (static_cast<Fl_DerivedWindow*>(win))->default_cursor(cursor,fg,bg);+  }+  FL_EXPORT_C(void,Fl_Window_set_default_cursor)(fl_Window win,Fl_Cursor cursor){+    (static_cast<Fl_DerivedWindow*>(win))->default_cursor(cursor);+  }+  FL_EXPORT_C(int,Fl_Window_decorated_w)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->decorated_w();+  }+  FL_EXPORT_C(int,Fl_Window_decorated_h)(fl_Window win){+    return (static_cast<Fl_DerivedWindow*>(win))->decorated_h();+  }+  FL_EXPORT_C(void, Fl_Window_set_default_xclass)(const char* label){+    Fl_Window::default_xclass(label);+  }+  FL_EXPORT_C(const char*, Fl_Window_default_xclass)(){+    return Fl_Window::default_xclass();+  }+  FL_EXPORT_C(fl_Window, Fl_Window_current)(){+    return (fl_Window)Fl_Window::current();+  }+  FL_EXPORT_C(void, Fl_Window_default_callback)(fl_Window win, void* v){+    Fl_Window::default_callback((static_cast<Fl_DerivedWindow*>(win)), v);+  }+  FL_EXPORT_C(void, Fl_Window_wait_for_expose)(fl_Window win) {+    return (static_cast<Fl_Window*>(win))->wait_for_expose();+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_WindowC.h view
@@ -0,0 +1,261 @@+#ifndef __FL_WINDOW_C__+#define __FL_WINDOW_C__+#ifdef __cplusplus+#include "FL/Fl.H"+#include "FL/Fl_Window.H" // always include the FL/*.H headers before local headers+                          // Fl_Widget is included transitively and needed for+                          // the callback mechanism included below to work.+#include "Fl_CallbackC.h"+class Fl_DerivedWindow : public Fl_Window {+  fl_Window_Virtual_Funcs* overriddenFuncs;+  void* other_data;+public:+  void* get_other_data();+  void set_other_data(void*);+  void destroy_data();+  void draw_box();+  void draw_box(Fl_Boxtype t, Fl_Color c);+  void draw_box(Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+  void draw_backdrop();+  void draw_focus();+  void draw_focus(Fl_Boxtype t, int x,int y,int w,int h);+  void draw_label();+  void draw_label(int x,int y,int w,int h,Fl_Align alignment);+  void draw_super();+  void flush_super();+  void show_super();+  virtual void draw();+  virtual int handle(int event);+  virtual Fl_Group* as_group();+  virtual void resize(int x, int y, int w, int h);+  virtual void show();+  virtual void show(int,char**);+  virtual void hide();+  virtual void flush();+  virtual Fl_Window* as_window();+  virtual Fl_Gl_Window* as_gl_window();+  void draw_child(Fl_Widget* widget);+  void draw_children();+  void draw_outside_label(Fl_Widget* widget);+  void update_child(Fl_Widget* widget);+  int* sizes();+  Fl_DerivedWindow(int X, int Y, int W, int H, const char *l, fl_Window_Virtual_Funcs* funcs);+  Fl_DerivedWindow(int X, int Y, int W, int H, fl_Window_Virtual_Funcs* funcs);+  Fl_DerivedWindow(int W, int H, const char *l, fl_Window_Virtual_Funcs* funcs);+  Fl_DerivedWindow(int W, int H, fl_Window_Virtual_Funcs* funcs);+  ~Fl_DerivedWindow();+};+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,Fl_Window_handle)(fl_Window self, int event);+  FL_EXPORT_C(fl_Group,     Fl_Window_parent)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_parent)(fl_Window win, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Window_type)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_type)(fl_Window win, uchar t);++  FL_EXPORT_C(void, Fl_Window_draw_box)(fl_Window Window);+  FL_EXPORT_C(void, Fl_Window_draw_box_with_tc)(fl_Window Window,Fl_Boxtype t, Fl_Color c);+  FL_EXPORT_C(void, Fl_Window_draw_box_with_txywhc)(fl_Window Window,Fl_Boxtype t, int x,int y,int w,int h, Fl_Color c);+  FL_EXPORT_C(void, Fl_Window_draw_backdrop)(fl_Window Window);+  FL_EXPORT_C(void, Fl_Window_draw_focus)(fl_Window Window);+  FL_EXPORT_C(void, Fl_Window_draw_focus_with_txywh)(fl_Window Window,Fl_Boxtype t, int x,int y,int w,int h);+  FL_EXPORT_C(void, Fl_Window_draw_label)(fl_Window Window);+  FL_EXPORT_C(int,          Fl_Window_x)(fl_Window win);+  FL_EXPORT_C(int,          Fl_Window_y)(fl_Window win);+  FL_EXPORT_C(int,          Fl_Window_w)(fl_Window win);+  FL_EXPORT_C(int,          Fl_Window_h)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_align)(fl_Window window, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Window_align)(fl_Window win);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Window_box)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_box)(fl_Window win, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Window_color)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_color)(fl_Window win, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Window_set_color_with_bg_sel)(fl_Window win,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Window_selection_color)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_selection_color)(fl_Window win, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Window_label)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_copy_label)(fl_Window win, const char* new_label);+  FL_EXPORT_C(void,         Fl_Window_set_label)(fl_Window win, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Window_labeltype)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_labeltype)(fl_Window win, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Window_labelcolor)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_labelcolor)(fl_Window win, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Window_labelfont)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_labelfont)(fl_Window win, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Window_labelsize)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_labelsize)(fl_Window win, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Window_image)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_image)(fl_Window win, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Window_deimage)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_deimage)(fl_Window win, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Window_tooltip)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_copy_tooltip)(fl_Window win, const char* text);+  FL_EXPORT_C(void,         Fl_Window_set_tooltip)(fl_Window win, const char* text);+  FL_EXPORT_C(void,         Fl_Window_set_callback_with_user_data)(fl_Window win, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Window_set_callback)(fl_Window win, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Window_user_data)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_user_data)(fl_Window win, void* v);+  FL_EXPORT_C(long,         Fl_Window_argument)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_argument)(fl_Window win, long v);+  FL_EXPORT_C(Fl_When,      Fl_Window_when)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_when)(fl_Window win, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Window_visible)(fl_Window win);+  FL_EXPORT_C(int,          Fl_Window_visible_r)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_visible)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_clear_visible)(fl_Window win);+  FL_EXPORT_C(unsigned int, Fl_Window_active)(fl_Window win);+  FL_EXPORT_C(int,          Fl_Window_active_r)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_activate)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_deactivate)(fl_Window win);+  FL_EXPORT_C(unsigned int, Fl_Window_output)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_output)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_clear_output)(fl_Window win);+  FL_EXPORT_C(unsigned int, Fl_Window_takesevents)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_changed)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_clear_changed)(fl_Window win);+  FL_EXPORT_C(int,          Fl_Window_take_focus)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_visible_focus)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_clear_visible_focus)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_modify_visible_focus)(fl_Window win, int v);+  FL_EXPORT_C(unsigned int, Fl_Window_visible_focus)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_do_callback)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_do_callback_with_widget_and_user_data)(fl_Window win, fl_Widget w, long arg);+  FL_EXPORT_C(void,         Fl_Window_do_callback_with_widget_and_default_user_data)(fl_Window win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Window_contains)(fl_Window win, fl_Widget w);+  FL_EXPORT_C(int,          Fl_Window_inside)(fl_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Window_redraw)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_redraw_label)(fl_Window win);+  FL_EXPORT_C(uchar,        Fl_Window_damage)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_clear_damage_with_bitmask)(fl_Window win, uchar c);+  FL_EXPORT_C(void,         Fl_Window_clear_damage)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_damage_with_text)(fl_Window win, uchar c);+  FL_EXPORT_C(void,         Fl_Window_damage_inside_widget)(fl_Window win, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Window_draw_label_with_xywh_alignment)(fl_Window win, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(fl_Window,    Fl_Window_window)(fl_Window window);+  FL_EXPORT_C(fl_Window,    Fl_Window_top_window)(fl_Window window);+  FL_EXPORT_C(fl_Window ,   Fl_Window_top_window_offset)(fl_Window window, int* xoff, int* yoff);+  FL_EXPORT_C(void,         Fl_Window_measure_label)(fl_Window win, int* ww , int* hh);+  FL_EXPORT_C(fl_Group,     Fl_Window_as_group)(fl_Window win);+  FL_EXPORT_C(fl_Gl_Window, Fl_Window_as_gl_window)(fl_Window win);++  /* Inherited from Fl_Group */+  FL_EXPORT_C(void, Fl_Window_draw)(fl_Window Window);+  FL_EXPORT_C(void, Fl_Window_draw_child)(fl_Window Window,fl_Widget widget);+  FL_EXPORT_C(void, Fl_Window_draw_children)(fl_Window Window);+  FL_EXPORT_C(void, Fl_Window_draw_outside_label)(fl_Window Window,fl_Widget widget);+  FL_EXPORT_C(void, Fl_Window_update_child)(fl_Window Window,fl_Widget widget);+  FL_EXPORT_C(int*, Fl_Window_sizes)(fl_Window Window);+  FL_EXPORT_C(void,         Fl_Window_begin)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_end)(fl_Window win);+  FL_EXPORT_C(int,          Fl_Window_find)(fl_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Window_add)(fl_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Window_insert)(fl_Window win, fl_Widget w, int i);+  FL_EXPORT_C(void,         Fl_Window_remove_index)(fl_Window win, int index);+  FL_EXPORT_C(void,         Fl_Window_remove_widget)(fl_Window win, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Window_clear)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_resizable_by_reference)(fl_Window win,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Window_set_resizable)(fl_Window win,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Window_resizable)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_add_resizable)(fl_Window win,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Window_init_sizes)(fl_Window win);+  FL_EXPORT_C(int,          Fl_Window_children)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_set_clip_children)(fl_Window win,int c);+  FL_EXPORT_C(unsigned int, Fl_Window_clip_children)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_focus)(fl_Window win,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Window__ddfdesign_kludge)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_insert_with_before)(fl_Window self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Window_array)(fl_Window self);+  FL_EXPORT_C(fl_Widget,    Fl_Window_child)(fl_Window self, int n);+  FL_EXPORT_C(void,         Fl_Window_forms_end)(fl_Window self);+  /* FL_EXPORT_C(void,         Fl_Window_forms_end)(fl_Window win); */+  /* Fl_Window specific */+  FL_EXPORT_C(fl_Window_Virtual_Funcs*, Fl_Window_default_virtual_funcs)();+  FL_EXPORT_C(void, Fl_Window_draw_super)(fl_Window window);+  FL_EXPORT_C(int,  Fl_Window_handle_super)(fl_Window window, int event);+  FL_EXPORT_C(fl_Group, Fl_Window_as_group_super)(fl_Window window);+  FL_EXPORT_C(void, Fl_Window_resize_super)(fl_Window window, int x, int y, int w, int h);+  FL_EXPORT_C(void, Fl_Window_show_super)(fl_Window window);+  FL_EXPORT_C(void, Fl_Window_hide_super)(fl_Window window);+  FL_EXPORT_C(void, Fl_Window_flush_super)(fl_Window window);+  FL_EXPORT_C(fl_Window, Fl_Window_as_window_super)(fl_Window window);+  FL_EXPORT_C(fl_Gl_Window, Fl_Window_as_gl_window_super)(fl_Window window);+  FL_EXPORT_C(fl_Window, Fl_Window_as_window)(fl_Window window);+  FL_EXPORT_C(unsigned int, Fl_Window_changed)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_fullscreen)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_fullscreen_off)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_fullscreen_off_with_resize)(fl_Window win,int X,int Y,int W,int H);+  FL_EXPORT_C(void*, Fl_Window_other_data)(fl_Window window);+  FL_EXPORT_C(void, Fl_Window_set_other_data)(fl_Window window, void* v);+  FL_EXPORT_C(fl_Window,    Fl_Window_New_WithLabel)(int w, int h, const char* title);+  FL_EXPORT_C(fl_Window, Fl_OverriddenWindow_New_WithLabel)(int w, int h, const char* title, fl_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Window,    Fl_Window_New)(int w, int h);+  FL_EXPORT_C(fl_Window, Fl_OverriddenWindow_New)(int w, int h,fl_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Window,    Fl_Window_NewXY_WithLabel)(int x, int y, int w, int h, const char* title);+  FL_EXPORT_C(fl_Window, Fl_OverriddenWindow_NewXY_WithLabel)(int x, int y, int w, int h, const char* title,fl_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(fl_Window,    Fl_Window_NewXY)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Window, Fl_OverriddenWindow_NewXY)(int x, int y, int w, int h,fl_Window_Virtual_Funcs* funcs);+  FL_EXPORT_C(void,         Fl_Window_hide)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_show)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_show_with_args)(fl_Window win, int argc, char** argv);+  FL_EXPORT_C(void,         Fl_Window_Destroy)(fl_Window win);+  FL_EXPORT_C(void,         Fl_Window_resize)(fl_Window win, int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Window_iconize)(fl_Window win);+  FL_EXPORT_C(int ,Fl_Window_handle)(fl_Window win, int event);+  FL_EXPORT_C(void ,Fl_Window_set_border)(fl_Window win, int b);+  FL_EXPORT_C(void ,Fl_Window_clear_border)(fl_Window win);+  FL_EXPORT_C(unsigned int ,Fl_Window_border)(fl_Window win);+  FL_EXPORT_C(void ,Fl_Window_set_override)(fl_Window win);+  FL_EXPORT_C(unsigned int,Fl_Window_override)(fl_Window win);+  FL_EXPORT_C(void ,Fl_Window_set_modal)(fl_Window win);+  FL_EXPORT_C(unsigned int,Fl_Window_modal)(fl_Window win);+  FL_EXPORT_C(void ,Fl_Window_set_non_modal)(fl_Window win);+  FL_EXPORT_C(unsigned int ,Fl_Window_non_modal)(fl_Window win);+  FL_EXPORT_C(void ,Fl_Window_set_menu_window)(fl_Window win);+  FL_EXPORT_C(unsigned int,Fl_Window_menu_window)(fl_Window win);+  FL_EXPORT_C(void ,Fl_Window_set_tooltip_window)(fl_Window win);+  FL_EXPORT_C(unsigned int,Fl_Window_tooltip_window)(fl_Window win);+  FL_EXPORT_C(void ,Fl_Window_hotspot_with_x_y)(fl_Window win, int x, int y);+  FL_EXPORT_C(void ,Fl_Window_hotspot_with_x_y_with_offscreen)(fl_Window win, int x, int y, int offscreen);+  FL_EXPORT_C(void ,Fl_Window_hotspot_with_widget)(fl_Window win, fl_Widget w);//, int offscreen = 0);+  FL_EXPORT_C(void ,Fl_Window_hotspot_with_widget_with_offscreen)(fl_Window win, fl_Widget w, int offscreen);+  FL_EXPORT_C(fl_Window_size_range_args*,Fl_Window_default_size_range_args)();+  FL_EXPORT_C(void ,Fl_Window_free_position)(fl_Window win);+  FL_EXPORT_C(fl_Window_size_range_args* ,Fl_Window_size_range_default_args)();+  FL_EXPORT_C(void ,Fl_Window_size_range)(fl_Window win, int minw, int minh);+  FL_EXPORT_C(void ,Fl_Window_size_range_with_args)(fl_Window win, int minw, int minh, fl_Window_size_range_args* args);//int maxw=0, int maxh=0, int dw=0, int dh=0, int aspect=0);+  FL_EXPORT_C(const char*, Fl_Window_label)(fl_Window win);+  FL_EXPORT_C(const char*, Fl_Window_iconlabel)(fl_Window win);+  FL_EXPORT_C(void, Fl_Window_set_label)(fl_Window win,const char*);+  FL_EXPORT_C(void, Fl_Window_set_iconlabel)(fl_Window win,const char*);+  FL_EXPORT_C(void, Fl_Window_set_label_with_iconlabel)(fl_Window win,const char* label, const char* iconlabel);+  FL_EXPORT_C(void, Fl_Window_copy_label)(fl_Window win,const char* a);+  FL_EXPORT_C(void, Fl_Window_set_default_xclass)(const char* label);+  FL_EXPORT_C(const char*, Fl_Window_default_xclass)();+  FL_EXPORT_C(const char*, Fl_Window_xclass)(fl_Window win);+  FL_EXPORT_C(void, Fl_Window_set_xclass)(fl_Window win,const char* c);+  FL_EXPORT_C(const void*, Fl_Window_icon)(fl_Window win);+  FL_EXPORT_C(void, Fl_Window_set_icon)(fl_Window win,const void * ic);+  FL_EXPORT_C(int, Fl_Window_shown)(fl_Window win);+  FL_EXPORT_C(void, Fl_Window_iconize)(fl_Window win);+  FL_EXPORT_C(int, Fl_Window_x_root)(fl_Window win);+  FL_EXPORT_C(int, Fl_Window_y_root)(fl_Window win);+  FL_EXPORT_C(fl_Window, Fl_Window_current)();+  FL_EXPORT_C(void, Fl_Window_make_current)(fl_Window win);+  FL_EXPORT_C(void, Fl_Window_set_cursor_with_bg)(fl_Window win, Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void, Fl_Window_set_cursor_with_fg)(fl_Window win,Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void, Fl_Window_set_cursor_with_fg_bg)(fl_Window win,Fl_Cursor cursor, Fl_Color fg , Fl_Color bg );/* =FL_BLACK *//*=FL_WHITE*/+  FL_EXPORT_C(void, Fl_Window_set_cursor)(fl_Window win,Fl_Cursor cursor);+  FL_EXPORT_C(void, Fl_Window_set_default_cursor_with_bg)(fl_Window win,Fl_Cursor cursor, Fl_Color bg);+  FL_EXPORT_C(void, Fl_Window_set_default_cursor_with_fg)(fl_Window win, Fl_Cursor cursor, Fl_Color fg);+  FL_EXPORT_C(void, Fl_Window_set_default_cursor_with_fg_bg)(fl_Window win,Fl_Cursor cursor, Fl_Color fg , Fl_Color bg );+  FL_EXPORT_C(void, Fl_Window_set_default_cursor)(fl_Window win,Fl_Cursor cursor);+  FL_EXPORT_C(void, Fl_Window_default_callback)(fl_Window win, void* v);+  FL_EXPORT_C(int, Fl_Window_decorated_w)(fl_Window win);+  FL_EXPORT_C(int, Fl_Window_decorated_h)(fl_Window win);+  FL_EXPORT_C(void, Fl_Window_wait_for_expose)(fl_Window win);+#ifdef __cplusplus+}+#endif++#endif /* __FL_WINDOW_C__ */
+ c-src/Fl_WizardC.cpp view
@@ -0,0 +1,356 @@+#include "Fl_WizardC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,Fl_Wizard_handle)(fl_Wizard wizard, int event){+    return (static_cast<Fl_Wizard*>(wizard))->handle(event);+  }+  FL_EXPORT_C(fl_Group,Fl_Wizard_parent)(fl_Wizard wizard){+    return (fl_Group) (fl_Group)(static_cast<Fl_Wizard*>(wizard))->parent();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_parent)(fl_Wizard wizard,fl_Group grp){+    (static_cast<Fl_Wizard*>(wizard))->parent((static_cast<Fl_Wizard*>(grp)));+  }+  FL_EXPORT_C(uchar,Fl_Wizard_type)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->type();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_type)(fl_Wizard wizard,uchar t){+    (static_cast<Fl_Wizard*>(wizard))->type(t);+  }++  FL_EXPORT_C(int,Fl_Wizard_x)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->x();+  }+  FL_EXPORT_C(int,Fl_Wizard_y)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->y();+  }+  FL_EXPORT_C(int,Fl_Wizard_w)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->w();+  }+  FL_EXPORT_C(int,Fl_Wizard_h)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->h();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_align)(fl_Wizard wizard, Fl_Align alignment){+    (static_cast<Fl_Wizard*>(wizard))->align(alignment);+  }+  FL_EXPORT_C(Fl_Align,Fl_Wizard_align)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->align();+  }+  FL_EXPORT_C(Fl_Boxtype,Fl_Wizard_box)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->box();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_box)(fl_Wizard wizard,Fl_Boxtype new_box){+    (static_cast<Fl_Wizard*>(wizard))->box((static_cast<Fl_Boxtype>(new_box)));+  }+  FL_EXPORT_C(Fl_Color,Fl_Wizard_color)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->color();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_color)(fl_Wizard wizard,Fl_Color bg){+    (static_cast<Fl_Wizard*>(wizard))->color(bg);+  }+  FL_EXPORT_C(void,Fl_Wizard_set_color_with_bg_sel)(fl_Wizard wizard,Fl_Color bg,Fl_Color a){+    (static_cast<Fl_Wizard*>(wizard))->color(bg,a);+  }+  FL_EXPORT_C(Fl_Color,Fl_Wizard_selection_color)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->selection_color();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_selection_color)(fl_Wizard wizard,Fl_Color a){+    (static_cast<Fl_Wizard*>(wizard))->selection_color(a);+  }+  FL_EXPORT_C(const char*,Fl_Wizard_label)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->label();+  }+  FL_EXPORT_C(void,Fl_Wizard_copy_label)(fl_Wizard wizard,const char* new_label){+    (static_cast<Fl_Wizard*>(wizard))->copy_label(new_label);+  }+  FL_EXPORT_C(void,Fl_Wizard_set_label)(fl_Wizard wizard,const char* text){+    (static_cast<Fl_Wizard*>(wizard))->label(text);+  }+  FL_EXPORT_C(Fl_Labeltype,Fl_Wizard_labeltype)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->labeltype();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_labeltype)(fl_Wizard wizard,Fl_Labeltype a){+    (static_cast<Fl_Wizard*>(wizard))->labeltype(a);+  }+  FL_EXPORT_C(void,Fl_Wizard_set_labelcolor)(fl_Wizard wizard,Fl_Color c){+    (static_cast<Fl_Wizard*>(wizard))->labelcolor(c);+  }+  FL_EXPORT_C(Fl_Color ,Fl_Wizard_labelcolor)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->labelcolor();+  }+  FL_EXPORT_C(Fl_Font,Fl_Wizard_labelfont)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->labelfont();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_labelfont)(fl_Wizard wizard,Fl_Font c){+    (static_cast<Fl_Wizard*>(wizard))->labelfont((static_cast<Fl_Font>(c)));+  }+  FL_EXPORT_C(Fl_Fontsize,Fl_Wizard_labelsize)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->labelsize();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_labelsize)(fl_Wizard wizard,Fl_Fontsize pix){+    (static_cast<Fl_Wizard*>(wizard))->labelsize((static_cast<Fl_Fontsize>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Wizard_image)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->image();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_image)(fl_Wizard wizard,fl_Image pix){+    (static_cast<Fl_Wizard*>(wizard))->image((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(fl_Image,Fl_Wizard_deimage)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->deimage();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_deimage)(fl_Wizard wizard,fl_Image pix){+    (static_cast<Fl_Wizard*>(wizard))->deimage((static_cast<Fl_Image*>(pix)));+  }+  FL_EXPORT_C(const char*,Fl_Wizard_tooltip)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->tooltip();+  }+  FL_EXPORT_C(void,Fl_Wizard_copy_tooltip)(fl_Wizard wizard,const char* text){+    (static_cast<Fl_Wizard*>(wizard))->copy_tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Wizard_set_tooltip)(fl_Wizard wizard,const char* text){+    (static_cast<Fl_Wizard*>(wizard))->tooltip(text);+  }+  FL_EXPORT_C(void,Fl_Wizard_set_callback_with_user_data)(fl_Wizard wizard,fl_Callback* cb,void* p){+    Fl_Group* castedWindow = (static_cast<Fl_Wizard*>(wizard));+    new C_to_Fl_Callback(castedWindow, cb, p);+  }+  FL_EXPORT_C(void,Fl_Wizard_set_callback)(fl_Wizard wizard,fl_Callback* cb){+    Fl_Group* castedWindow = (static_cast<Fl_Wizard*>(wizard));+    new C_to_Fl_Callback(castedWindow, cb);+  }+  FL_EXPORT_C(void*,Fl_Wizard_user_data)(fl_Wizard wizard){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Wizard*>(wizard))->user_data()));+    if(stored_cb){+      return stored_cb->get_user_data();+    }+    else {+      return (static_cast<Fl_Wizard*>(wizard))->user_data();+    }+  }+  FL_EXPORT_C(void,Fl_Wizard_set_user_data)(fl_Wizard wizard,void* v){+    C_to_Fl_Callback* stored_cb = (static_cast<C_to_Fl_Callback*>((static_cast<Fl_Wizard*>(wizard))->user_data()));+    if (stored_cb) {+      stored_cb->set_user_data(v);+      (static_cast<Fl_Wizard*>(wizard))->user_data(stored_cb);+    }+    else {+      (static_cast<Fl_Wizard*>(wizard))->user_data(v);+    }+  }+  FL_EXPORT_C(long,Fl_Wizard_argument)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->argument();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_argument)(fl_Wizard wizard,long v){+    (static_cast<Fl_Wizard*>(wizard))->argument(v);+  }+  FL_EXPORT_C(Fl_When,Fl_Wizard_when)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->when();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_when)(fl_Wizard wizard,uchar i){+    (static_cast<Fl_Wizard*>(wizard))->when(i);+  }+  FL_EXPORT_C(unsigned int,Fl_Wizard_visible)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->visible();+  }+  FL_EXPORT_C(int,Fl_Wizard_visible_r)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->visible_r();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_visible)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->visible();+  }+  FL_EXPORT_C(void,Fl_Wizard_clear_visible)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->clear_visible();+  }+  FL_EXPORT_C(unsigned int,Fl_Wizard_active)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->active();+  }+  FL_EXPORT_C(int,Fl_Wizard_active_r)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->active_r();+  }+  FL_EXPORT_C(void,Fl_Wizard_activate)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->activate();+  }+  FL_EXPORT_C(void,Fl_Wizard_deactivate)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->deactivate();+  }+  FL_EXPORT_C(unsigned int,Fl_Wizard_output)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->output();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_output)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->output();+  }+  FL_EXPORT_C(void,Fl_Wizard_clear_output)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->clear_output();+  }+  FL_EXPORT_C(unsigned int,Fl_Wizard_takesevents)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->takesevents();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_changed)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->changed();+  }+  FL_EXPORT_C(void,Fl_Wizard_clear_changed)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->clear_changed();+  }+  FL_EXPORT_C(int,Fl_Wizard_take_focus)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->take_focus();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_visible_focus)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->set_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Wizard_clear_visible_focus)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->clear_visible_focus();+  }+  FL_EXPORT_C(void,Fl_Wizard_modify_visible_focus)(fl_Wizard wizard,int v){+    (static_cast<Fl_Wizard*>(wizard))->visible_focus(v);+  }+  FL_EXPORT_C(unsigned int,Fl_Wizard_visible_focus)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->visible_focus();+  }+  FL_EXPORT_C(void,Fl_Wizard_do_callback)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->do_callback();+  }+  FL_EXPORT_C(void,Fl_Wizard_do_callback_with_widget_and_user_data)(fl_Wizard wizard,fl_Widget w,long arg){+    (static_cast<Fl_Wizard*>(wizard))->do_callback((static_cast<Fl_Widget*>(w)),arg);+  }+  FL_EXPORT_C(void,Fl_Wizard_do_callback_with_widget_and_default_user_data)(fl_Wizard wizard,fl_Widget w){+    (static_cast<Fl_Wizard*>(wizard))->do_callback((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Wizard_contains)(fl_Wizard wizard,fl_Widget w){+    return (static_cast<Fl_Wizard*>(wizard))->contains((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(int,Fl_Wizard_inside)(fl_Wizard wizard,fl_Widget w){+    return (static_cast<Fl_Wizard*>(wizard))->inside((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Wizard_redraw)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->redraw();+  }+  FL_EXPORT_C(void,Fl_Wizard_redraw_label)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->redraw_label();+  }+  FL_EXPORT_C(uchar,Fl_Wizard_damage)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->damage();+  }+  FL_EXPORT_C(void,Fl_Wizard_clear_damage_with_bitmask)(fl_Wizard wizard,uchar c){+    (static_cast<Fl_Wizard*>(wizard))->clear_damage(c);+  }+  FL_EXPORT_C(void,Fl_Wizard_clear_damage)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->clear_damage();+  }+  FL_EXPORT_C(void,Fl_Wizard_damage_with_text)(fl_Wizard wizard,uchar c){+    (static_cast<Fl_Wizard*>(wizard))->damage(c);+  }+  FL_EXPORT_C(void,Fl_Wizard_damage_inside_widget)(fl_Wizard wizard,uchar c,int x,int y,int w,int h){+    (static_cast<Fl_Wizard*>(wizard))->damage(c,x,y,w,h);+  }+  FL_EXPORT_C(void,Fl_Wizard_draw_label_with_xywh_alignment)(fl_Wizard wizard,int x,int y,int w,int h,Fl_Align alignment){+    (static_cast<Fl_Wizard*>(wizard))->draw_label(x,y,w,h,alignment);+  }+  FL_EXPORT_C(void,Fl_Wizard_measure_label)(fl_Wizard wizard,int* ww,int* hh){+    (static_cast<Fl_Wizard*>(wizard))->measure_label(*ww,*hh);+  }+  FL_EXPORT_C(fl_Window,    Fl_Wizard_window)(fl_Wizard wizard){+    return (fl_Window) (static_cast<Fl_Wizard*>(wizard))->window();+  }+  FL_EXPORT_C(fl_Window,    Fl_Wizard_top_window)(fl_Wizard wizard){+    return (fl_Window) (static_cast<Fl_Wizard*>(wizard))->top_window();+  }+  FL_EXPORT_C(fl_Window ,   Fl_Wizard_top_window_offset)(fl_Wizard wizard, int* xoff, int* yoff){+    return (fl_Window) (static_cast<Fl_Wizard*>(wizard))->top_window_offset(*xoff,*yoff);+  }+  FL_EXPORT_C(fl_Group,Fl_Wizard_as_group)(fl_Wizard wizard){+    return (fl_Group) (static_cast<Fl_Wizard*>(wizard))->as_group();+  }+  FL_EXPORT_C(fl_Gl_Window,Fl_Wizard_as_gl_window)(fl_Wizard wizard){+    return (fl_Gl_Window) (static_cast<Fl_Wizard*>(wizard))->as_gl_window();+  }++  FL_EXPORT_C(void,Fl_Wizard_begin)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->begin();+  }+  FL_EXPORT_C(void,Fl_Wizard_end)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->end();+  }+  FL_EXPORT_C(int,Fl_Wizard_find)(fl_Wizard wizard,fl_Widget w){+    return (static_cast<Fl_Wizard*>(wizard))->find(static_cast<Fl_Widget*>(w));+  }+  FL_EXPORT_C(void,Fl_Wizard_add)(fl_Wizard wizard,fl_Widget w){+    (static_cast<Fl_Wizard*>(wizard))->add((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Wizard_insert)(fl_Wizard wizard,fl_Widget w,int i){+    (static_cast<Fl_Wizard*>(wizard))->insert(*(static_cast<Fl_Widget*>(w)),i);+  }+  FL_EXPORT_C(void,Fl_Wizard_remove_index)(fl_Wizard wizard,int index){+    (static_cast<Fl_Wizard*>(wizard))->remove(index);+  }+  FL_EXPORT_C(void,Fl_Wizard_remove_widget)(fl_Wizard wizard,fl_Widget w){+    (static_cast<Fl_Wizard*>(wizard))->remove((static_cast<Fl_Widget*>(w)));+  }+  FL_EXPORT_C(void,Fl_Wizard_clear)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->clear();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_resizable_by_reference)(fl_Wizard wizard,fl_Widget o){+    (static_cast<Fl_Wizard*>(wizard))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Wizard_set_resizable)(fl_Wizard wizard,fl_Widget o){+    (static_cast<Fl_Wizard*>(wizard))->resizable((static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Wizard_resizable)(fl_Wizard wizard){+    return (fl_Widget)(static_cast<Fl_Wizard*>(wizard))->resizable();+  }+  FL_EXPORT_C(void,Fl_Wizard_add_resizable)(fl_Wizard wizard,fl_Widget o){+    return (static_cast<Fl_Wizard*>(wizard))->add_resizable(*(static_cast<Fl_Widget*>(o)));+  }+  FL_EXPORT_C(void,Fl_Wizard_init_sizes)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->init_sizes();+  }+  FL_EXPORT_C(int,Fl_Wizard_children)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->children();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_clip_children)(fl_Wizard wizard,int c){+    return (static_cast<Fl_Wizard*>(wizard))->clip_children(c);+  }+  FL_EXPORT_C(unsigned int,Fl_Wizard_clip_children)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->clip_children();+  }+  FL_EXPORT_C(void,Fl_Wizard_focus)(fl_Wizard wizard, fl_Widget W){+    return (static_cast<Fl_Wizard*>(wizard))->focus((static_cast<Fl_Widget*>(W)));+  }+  FL_EXPORT_C(fl_Widget,Fl_Wizard__ddfdesign_kludge)(fl_Wizard wizard){+    return (static_cast<Fl_Wizard*>(wizard))->_ddfdesign_kludge();+  }+  FL_EXPORT_C(void, Fl_Wizard_insert_with_before)(fl_Wizard wizard, fl_Widget w, fl_Widget before){+    (static_cast<Fl_Wizard*>(wizard))->insert(*(static_cast<Fl_Widget*>(w)),(static_cast<Fl_Widget*>(before)));+  }+  FL_EXPORT_C(fl_Widget*, Fl_Wizard_array)(fl_Wizard wizard){+    return (fl_Widget*)(static_cast<Fl_Wizard*>(wizard))->array();+  }+  FL_EXPORT_C(fl_Widget, Fl_Wizard_child)(fl_Wizard wizard, int n){+    return (fl_Widget)(static_cast<Fl_Wizard*>(wizard))->child(n);+  }+  FL_EXPORT_C(fl_Group,     Fl_Wizard_New)(int x, int y, int w, int h){+    Fl_Wizard* wizard = new Fl_Wizard(x,y,w,h);+    return (fl_Wizard)wizard;+  }+  FL_EXPORT_C(fl_Wizard,     Fl_Wizard_New_WithLabel)(int x, int y, int w, int h, const char* t){+    Fl_Wizard* wizard = new Fl_Wizard(x,y,w,h,t);+    return (fl_Wizard)wizard;+  }+  FL_EXPORT_C(void, Fl_Wizard_Destroy)(fl_Wizard wizard){+    delete (static_cast<Fl_Wizard*>(wizard));+  }+  FL_EXPORT_C(void,Fl_Wizard_next)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->next();+  }+  FL_EXPORT_C(void,Fl_Wizard_prev)(fl_Wizard wizard){+    (static_cast<Fl_Wizard*>(wizard))->prev();+  }+  FL_EXPORT_C(fl_Widget,Fl_Wizard_value)(fl_Wizard wizard){+    return (fl_Widget) (static_cast<Fl_Wizard*>(wizard))->value();+  }+  FL_EXPORT_C(void,Fl_Wizard_set_value)(fl_Wizard wizard,fl_Widget w){+    (static_cast<Fl_Wizard*>(wizard))->value((static_cast<Fl_Widget*>(w)));+  }+#ifdef __cplusplus+}+#endif
+ c-src/Fl_WizardC.h view
@@ -0,0 +1,139 @@+#ifndef __FL_WIZARD_C__+#define __FL_WIZARD_C__+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#ifdef __cplusplus+#include "FL/Fl.H"+#include "FL/Fl_Wizard.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  /* Inherited from Fl_Widget */+  FL_EXPORT_C(int,          Fl_Wizard_handle)(fl_Wizard wizard, int event);+  FL_EXPORT_C(fl_Group,     Fl_Wizard_parent)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_parent)(fl_Wizard wizard, fl_Group grp);+  FL_EXPORT_C(uchar,        Fl_Wizard_type)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_type)(fl_Wizard wizard, uchar t);++  FL_EXPORT_C(int,          Fl_Wizard_x)(fl_Wizard wizard);+  FL_EXPORT_C(int,          Fl_Wizard_y)(fl_Wizard wizard);+  FL_EXPORT_C(int,          Fl_Wizard_w)(fl_Wizard wizard);+  FL_EXPORT_C(int,          Fl_Wizard_h)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_align)(fl_Wizard wizard, Fl_Align alignment);+  FL_EXPORT_C(Fl_Align,     Fl_Wizard_align)(fl_Wizard wizard);+  FL_EXPORT_C(Fl_Boxtype,   Fl_Wizard_box)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_box)(fl_Wizard wizard, Fl_Boxtype new_box);+  FL_EXPORT_C(Fl_Color,     Fl_Wizard_color)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_color)(fl_Wizard wizard, Fl_Color bg);+  FL_EXPORT_C(void,         Fl_Wizard_set_color_with_bg_sel)(fl_Wizard wizard,Fl_Color bg, Fl_Color a);+  FL_EXPORT_C(Fl_Color,     Fl_Wizard_selection_color)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_selection_color)(fl_Wizard wizard, Fl_Color a);+  FL_EXPORT_C(const char*,  Fl_Wizard_label)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_copy_label)(fl_Wizard wizard, const char* new_label);+  FL_EXPORT_C(void,         Fl_Wizard_set_label)(fl_Wizard wizard, const char* text);+  FL_EXPORT_C(Fl_Labeltype, Fl_Wizard_labeltype)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_labeltype)(fl_Wizard wizard, Fl_Labeltype a);+  FL_EXPORT_C(Fl_Color,     Fl_Wizard_labelcolor)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_labelcolor)(fl_Wizard wizard, Fl_Color c);+  FL_EXPORT_C(Fl_Font,      Fl_Wizard_item_labelfont)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_item_labelfont)(fl_Wizard wizard, Fl_Font c);+  FL_EXPORT_C(Fl_Fontsize,  Fl_Wizard_item_labelsize)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_item_labelsize)(fl_Wizard wizard, Fl_Fontsize pix);+  FL_EXPORT_C(fl_Image,     Fl_Wizard_image)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_image)(fl_Wizard wizard, fl_Image pix);+  FL_EXPORT_C(fl_Image,     Fl_Wizard_deimage)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_deimage)(fl_Wizard wizard, fl_Image pix);+  FL_EXPORT_C(const char*,  Fl_Wizard_tooltip)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_copy_tooltip)(fl_Wizard wizard, const char* text);+  FL_EXPORT_C(void,         Fl_Wizard_set_tooltip)(fl_Wizard wizard, const char* text);+  FL_EXPORT_C(void,         Fl_Wizard_set_callback_with_user_data)(fl_Wizard wizard, fl_Callback* cb, void* p);+  FL_EXPORT_C(void,         Fl_Wizard_set_callback)(fl_Wizard wizard, fl_Callback* cb);+  FL_EXPORT_C(void*,        Fl_Wizard_other_data)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_other_data)(fl_Wizard wizard, void* v);+  FL_EXPORT_C(void*,        Fl_Wizard_user_data)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_user_data)(fl_Wizard wizard, void* v);+  FL_EXPORT_C(long,         Fl_Wizard_argument)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_argument)(fl_Wizard wizard, long v);+  FL_EXPORT_C(Fl_When,      Fl_Wizard_when)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_when)(fl_Wizard wizard, uchar i);+  FL_EXPORT_C(unsigned int, Fl_Wizard_visible)(fl_Wizard wizard);+  FL_EXPORT_C(int,          Fl_Wizard_visible_r)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_show_super)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_show)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_hide_super)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_hide)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_visible)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_clear_visible)(fl_Wizard wizard);+  FL_EXPORT_C(unsigned int, Fl_Wizard_active)(fl_Wizard wizard);+  FL_EXPORT_C(int,          Fl_Wizard_active_r)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_activate)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_deactivate)(fl_Wizard wizard);+  FL_EXPORT_C(unsigned int, Fl_Wizard_output)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_output)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_clear_output)(fl_Wizard wizard);+  FL_EXPORT_C(unsigned int, Fl_Wizard_takesevents)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_changed)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_clear_changed)(fl_Wizard wizard);+  FL_EXPORT_C(int,          Fl_Wizard_take_focus)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_visible_focus)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_clear_visible_focus)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_modify_visible_focus)(fl_Wizard wizard, int v);+  FL_EXPORT_C(unsigned int, Fl_Wizard_visible_focus)(fl_Wizard wizard);+  FL_EXPORT_C(int,          Fl_Wizard_contains)(fl_Wizard wizard, fl_Group w);+  FL_EXPORT_C(int,          Fl_Wizard_inside)(fl_Wizard wizard, fl_Group w);+  FL_EXPORT_C(void,         Fl_Wizard_redraw)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_redraw_label)(fl_Wizard wizard);+  FL_EXPORT_C(uchar,        Fl_Wizard_damage)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_clear_damage_with_bitmask)(fl_Wizard wizard, uchar c);+  FL_EXPORT_C(void,         Fl_Wizard_clear_damage)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_damage_with_text)(fl_Wizard wizard, uchar c);+  FL_EXPORT_C(void,         Fl_Wizard_damage_inside_group)(fl_Wizard wizard, uchar c, int x , int y , int w, int h);+  FL_EXPORT_C(void,         Fl_Wizard_draw_label_with_xywh_alignment)(fl_Wizard wizard, int x , int y , int w, int h, Fl_Align alignment);+  FL_EXPORT_C(void,         Fl_Wizard_measure_label)(fl_Wizard wizard, int* ww , int* hh);+  FL_EXPORT_C(fl_Window,    Fl_Wizard_window)(fl_Wizard wizard);+  FL_EXPORT_C(fl_Window,    Fl_Wizard_top_window)(fl_Wizard wizard);+  FL_EXPORT_C(fl_Window ,   Fl_Wizard_top_window_offset)(fl_Wizard wizard, int* xoff, int* yoff);+  FL_EXPORT_C(fl_Group,     Fl_Wizard_as_group_super)(fl_Wizard wizard);+  FL_EXPORT_C(fl_Group,     Fl_Wizard_as_group)(fl_Wizard wizard);+  FL_EXPORT_C(fl_Gl_Window, Fl_Wizard_as_gl_window_super)(fl_Wizard wizard);+  FL_EXPORT_C(fl_Gl_Window, Fl_Wizard_as_gl_window)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_resize_super)(fl_Wizard wizard,int X, int Y, int W, int H);+  FL_EXPORT_C(void,         Fl_Wizard_resize)(fl_Wizard wizard,int X, int Y, int W, int H);++  /* Inherited from Fl_Group*/+  FL_EXPORT_C(void,         Fl_Wizard_begin)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_end)(fl_Wizard wizard);+  FL_EXPORT_C(int,          Fl_Wizard_find)(fl_Wizard wizard, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Wizard_add)(fl_Wizard wizard, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Wizard_insert)(fl_Wizard wizard, fl_Widget w, int i);+  FL_EXPORT_C(void,         Fl_Wizard_remove_index)(fl_Wizard wizard, int index);+  FL_EXPORT_C(void,         Fl_Wizard_remove_widget)(fl_Wizard wizard, fl_Widget w);+  FL_EXPORT_C(void,         Fl_Wizard_clear)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_resizable_by_reference)(fl_Wizard wizard,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Wizard_set_resizable)(fl_Wizard wizard,fl_Widget o);+  FL_EXPORT_C(fl_Widget,    Fl_Wizard_resizable)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_add_resizable)(fl_Wizard wizard,fl_Widget o);+  FL_EXPORT_C(void,         Fl_Wizard_init_sizes)(fl_Wizard wizard);+  FL_EXPORT_C(int,          Fl_Wizard_children)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_set_clip_children)(fl_Wizard wizard,int c);+  FL_EXPORT_C(unsigned int, Fl_Wizard_clip_children)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_focus)(fl_Wizard wizard,fl_Widget W);+  FL_EXPORT_C(fl_Widget,    Fl_Wizard__ddfdesign_kludge)(fl_Wizard wizard);+  FL_EXPORT_C(void,         Fl_Wizard_insert_with_before)(fl_Wizard self, fl_Widget w, fl_Widget before);+  FL_EXPORT_C(fl_Widget*,   Fl_Wizard_array)(fl_Wizard wizard);+  FL_EXPORT_C(fl_Widget,    Fl_Wizard_child)(fl_Wizard wizard, int n);+++  /* Fl_Wizard Specific */+  FL_EXPORT_C(void, Fl_Wizard_next)(fl_Wizard wizard);+  FL_EXPORT_C(void, Fl_Wizard_prev)(fl_Wizard wizard);+  FL_EXPORT_C(fl_Widget,Fl_Wizard_value)(fl_Wizard wizard);+  FL_EXPORT_C(void, Fl_Wizard_set_value)(fl_Wizard wizard, fl_Widget w);+  FL_EXPORT_C(fl_Wizard,     Fl_Wizard_New)(int x, int y, int w, int h);+  FL_EXPORT_C(fl_Wizard,     Fl_Wizard_New_WithLabel)(int x, int y, int w, int h, const char* t);+  FL_EXPORT_C(void,          Fl_Wizard_Destroy)(fl_Wizard wizard);+#ifdef __cplusplus+}+#endif+#endif /* __FL_WIZARD_C__ */
+ c-src/Makefile.in view
@@ -0,0 +1,138 @@+FLTKCONFIG=@FLTKCONFIG@+CXX = $(shell $(FLTKCONFIG) --cxx) $(shell $(FLTKCONFIG) --cxxflags) -Wall -DINTERNAL_LINKAGE -g -Icpp -I../+CXXSHARED = $(CXX)+CXXSTATIC = $(CXX) -static++CPPFILES= \+	Fl_Menu_ButtonC.cpp \+	Fl_PositionerC.cpp \+	Fl_TimerC.cpp \+	Fl_Value_OutputC.cpp \+	Fl_Value_SliderC.cpp \+	Fl_ScrollbarC.cpp \+	Fl_RollerC.cpp \+	Fl_DialC.cpp \+	Fl_CounterC.cpp \+	Utils.cpp \+	xC.cpp \+	fl_utf8C.cpp \+	glC.cpp \+	glutC.cpp \+	DerivedText_Editor.cpp \+	DerivedShared_Image.cpp \+	filenameC.cpp \+	Fl_AskC.cpp \+	Fl_BitmapC.cpp \+	Fl_BoxC.cpp \+	Fl_BrowserC.cpp \+	Fl_ButtonC.cpp \+	Fl_CallbackC.cpp \+	Fl_C.cpp \+	Fl_Check_ButtonC.cpp \+	Fl_ChoiceC.cpp \+	Fl_ClockC.cpp \+	Fl_Color_ChooserC.cpp \+	Fl_Copy_SurfaceC.cpp \+	Fl_Double_WindowC.cpp \+	Fl_DrawC.cpp \+	Fl_DeviceC.cpp \+	Fl_EnumerationsC.cpp \+	Fl_File_BrowserC.cpp \+	Fl_File_IconC.cpp \+	Fl_File_InputC.cpp \+	Fl_File_ChooserC.cpp \+	Fl_Float_InputC.cpp \+	Fl_Gl_WindowC.cpp \+	Fl_GroupC.cpp \+	Fl_Hold_BrowserC.cpp \+	Fl_Image_SurfaceC.cpp \+	Fl_ImageC.cpp \+	Fl_Input_C.cpp \+	Fl_InputC.cpp \+	Fl_Int_InputC.cpp \+	Fl_Light_ButtonC.cpp \+	Fl_Menu_C.cpp \+	Fl_Menu_ItemC.cpp \+	Fl_Multi_BrowserC.cpp \+	Fl_Multiline_InputC.cpp \+	Fl_Multiline_OutputC.cpp \+	Fl_Native_File_ChooserC.cpp \+	Fl_OutputC.cpp \+	Fl_Overlay_WindowC.cpp \+	Fl_Paged_DeviceC.cpp \+	Fl_PixmapC.cpp \+	Fl_PNM_ImageC.cpp \+	Fl_PreferencesC.cpp \+	Fl_PrinterC.cpp \+	Fl_ProgressC.cpp \+	Fl_Radio_ButtonC.cpp \+	Fl_Radio_Light_ButtonC.cpp \+	Fl_Repeat_ButtonC.cpp \+	Fl_Return_ButtonC.cpp \+	Fl_RGB_ImageC.cpp \+	Fl_Round_ButtonC.cpp \+	Fl_Round_ClockC.cpp \+	Fl_Secret_InputC.cpp \+	Fl_Select_BrowserC.cpp \+  Fl_Shared_ImageC.cpp \+	fl_show_colormapC.cpp \+	Fl_Single_WindowC.cpp \+	Fl_SliderC.cpp \+	Fl_Sys_Menu_BarC.cpp \+	Fl_TableC.cpp \+	Fl_Table_RowC.cpp \+	Fl_TabsC.cpp \+	Fl_Text_BufferC.cpp \+	Fl_Text_DisplayC.cpp \+	Fl_Text_EditorC.cpp \+	Fl_Text_SelectionC.cpp \+	Fl_TileC.cpp \+	Fl_Toggle_ButtonC.cpp \+	Fl_TooltipC.cpp \+	Fl_TreeC.cpp \+	Fl_Tree_ItemC.cpp \+	Fl_Tree_PrefsC.cpp \+	Fl_ValuatorC.cpp \+	Fl_AdjusterC.cpp \+	Fl_Value_InputC.cpp \+	Fl_Value_SliderC.cpp \+	Fl_WidgetC.cpp \+	Fl_WindowC.cpp \+	Fl_WizardC.cpp+LIBNAME = libfltkc+OBJECTS = $(CPPFILES:.cpp=.o)+LIBDIR = ../c-lib+SHARED_OBJECT_FILES = ../shared_object_files+STATIC_OBJECT_FILES = ../static_object_files+ifeq ($(shell uname) , Darwin)+	SHARED_EXT=dylib+	SONAME_FLAGS=-dynamiclib -install_name+else+	SHARED_EXT=so+	SONAME_FLAGS= -shared -Wl,-soname+endif+.SILENT:+all: libfltkc.a libfltkc.$(SHARED_EXT)+.SUFFIXES: .cpp .o+.cpp.o:+	test -d $(STATIC_OBJECT_FILES) || mkdir $(STATIC_OBJECT_FILES)+	test -d $(SHARED_OBJECT_FILES) || mkdir $(SHARED_OBJECT_FILES)+	@echo "*** Compiling $<..."+	$(CXXSTATIC) -c $^ -o $(STATIC_OBJECT_FILES)/$@+	$(CXXSHARED) -c -fPIC $^ -o $(SHARED_OBJECT_FILES)/$@+libfltkc.a : $(OBJECTS)+	test -d $(LIBDIR) || mkdir $(LIBDIR)+	@echo "*** Linking $@..."+	(cd $(STATIC_OBJECT_FILES); \+	ar rcs $(LIBDIR)/$@ $^;)+libfltkc.so : $(OBJECTS)+	test -d $(LIBDIR) || mkdir $(LIBDIR)+	@echo "*** Linking $@..."+	(cd $(SHARED_OBJECT_FILES); \+	$(CXX) $(SONAME_FLAGS),$(LIBDIR)/$@ -o $(LIBDIR)/$@ $^);+libfltkc.dylib: $(OBJECTS)+	@echo "*** Not linking $@ because of bugs in ./c-src/Makefile.in, help appreciated."+clean:+	test -d $(LIBDIR) && rm -rf $(LIBDIR)+	test -d $(SHARED_OBJECT_FILES) && rm -rf $(SHARED_OBJECT_FILES)+	test -d $(STATIC_OBJECT_FILES) && rm -rf $(STATIC_OBJECT_FILES)
+ c-src/Utils.cpp view
@@ -0,0 +1,11 @@+#include "Utils.h"+#ifdef __cplusplus+Fl_Menu_Item* convert(fl_Menu_Item* item, int size){+  int i = 0;+  Fl_Menu_Item* current = new Fl_Menu_Item[size];+  for (;i<size;i++){+    current[i] = *(static_cast<Fl_Menu_Item*>(*(item + i)));+  }+  return current;+}+#endif
+ c-src/Utils.h view
@@ -0,0 +1,9 @@+#ifndef __UTILS__+#define __UTILS__+#ifdef __cplusplus+#include "Fl_Types.h"+#include "FL/Fl.H"+#include "FL/Fl_Menu_Item.H"+Fl_Menu_Item* convert(fl_Menu_Item* item, int size);+#endif+#endif
+ c-src/filenameC.cpp view
@@ -0,0 +1,58 @@+#include "filenameC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(int,flc_filename_list)(const char *d,struct dirent ***l){+    return fl_filename_list(d,l);+  }+  FL_EXPORT_C(int,flc_filename_list_with_s)(const char *d,struct dirent ***l,Fl_File_Sort_F *s){+    return fl_filename_list(d,l,s);+  }+  FL_EXPORT_C(void,flc_filename_free_list)(struct dirent ***l,int n){+    fl_filename_free_list(l,n);+  }+  FL_EXPORT_C(int,flc_open_uri_with_msg_msglen)(const char *uri,char *msg,int msglen){+    return fl_open_uri(uri,msg,msglen);+  }+  FL_EXPORT_C(int,flc_open_uri_with_msglen)(const char *uri,int msglen){+    return fl_open_uri(uri,0,msglen);+  }+  FL_EXPORT_C(int,flc_open_uri_with_msg)(const char *uri,char *msg){+    return fl_open_uri(uri,msg,0);+  }+  FL_EXPORT_C(int,flc_open_uri)(const char *uri){+    return fl_open_uri(uri);+  }+  FL_EXPORT_C(void,flc_decode_uri)(char *uri){+    fl_decode_uri(uri);+  }+  FL_EXPORT_C(const char*,flc_filename_name)(const char* filename){+    return fl_filename_name(filename);+  }+  FL_EXPORT_C(const char*,flc_filename_ext)(const char* buf){+    return fl_filename_ext(buf);+  }+  FL_EXPORT_C(char*,flc_filename_setext)(char* to,int tolen,const char* ext){+    return fl_filename_setext(to,tolen,ext);+  }+  FL_EXPORT_C(int,flc_filename_expand)(char* to,int tolen,const char* from){+    return fl_filename_expand(to,tolen,from);+  }+  FL_EXPORT_C(int,flc_filename_absolute)(char* to,int tolen,const char* from){+    return fl_filename_absolute(to,tolen,from);+  }+  FL_EXPORT_C(int,flc_filename_relative)(char* to,int tolen,const char* from){+    return fl_filename_relative(to,tolen,from);+  }+  FL_EXPORT_C(int,flc_filename_match)(const char* name,const char* pattern){+    return fl_filename_match(name,pattern);+  }+  FL_EXPORT_C(int,flc_filename_isdir)(const char* name){+    return fl_filename_isdir(name);+  }+  FL_EXPORT_C(int,flc_filename_relative_with_cwd)(char* to,int tolen,const char* from,const char* cwd){+    return fl_filename_relative(to,tolen,from,cwd);+  }+#ifdef __cplusplus+}+#endif
+ c-src/filenameC.h view
@@ -0,0 +1,35 @@+#ifndef __FILENAME_C__+#define __FILENAME_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/filename.H"+#include "Fl_CallbackC.h"+EXPORT {+#else+#include <dirent.h>+#include "FL/filename.H"+#endif+  FL_EXPORT_C(int, flc_filename_list)(const char *d, struct dirent ***l);+  FL_EXPORT_C(int, flc_filename_list_with_s)(const char *d, struct dirent ***l, Fl_File_Sort_F *s);+  FL_EXPORT_C(void,flc_filename_free_list)(struct dirent ***l, int n);+  FL_EXPORT_C(int, flc_open_uri_with_msg_msglen)(const char *uri,char *msg ,int msglen);+  FL_EXPORT_C(int, flc_open_uri_with_msglen)(const char *uri,int msglen);+  FL_EXPORT_C(int, flc_open_uri_with_msg)(const char *uri, char *msg);+  FL_EXPORT_C(int, flc_open_uri)(const char *uri);+  FL_EXPORT_C(void, flc_decode_uri)(char *uri);+  FL_EXPORT_C(const char*	,flc_filename_name)(const char*  filename);+  FL_EXPORT_C(const char*	,flc_filename_ext)(const char* buf);+  FL_EXPORT_C(char*	,flc_filename_setext)(char* to, int tolen, const char* ext);+  FL_EXPORT_C(int		,flc_filename_expand)(char* to, int tolen, const char* from);+  FL_EXPORT_C(int		,flc_filename_absolute)(char* to, int tolen, const char* from);+  FL_EXPORT_C(int		,flc_filename_relative)(char* to, int tolen, const char* from);+  FL_EXPORT_C(int		,flc_filename_match)(const char* name, const char* pattern);+  FL_EXPORT_C(int		,flc_filename_isdir)(const char* name);+  FL_EXPORT_C(int		,flc_filename_relative_with_cwd)(char* to, int tolen, const char* from, const char* cwd);+#ifdef __cplusplus+}+#endif+#endif /* __FILENAME_C__ */
+ c-src/fl_show_colormapC.cpp view
@@ -0,0 +1,10 @@+#include "fl_show_colormapC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(Fl_Color, flc_show_colormap)(Fl_Color oldcol){+    return fl_show_colormap(oldcol);+  }+#ifdef __cplusplus+}+#endif
+ c-src/fl_show_colormapC.h view
@@ -0,0 +1,16 @@+#ifndef fl_show_colormapC_H+#define fl_show_colormapC_H+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/fl_show_colormap.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(Fl_Color, flc_show_colormap)(Fl_Color oldcol);+#ifdef __cplusplus+}+#endif+#endif
+ c-src/fl_utf8C.cpp view
@@ -0,0 +1,3 @@+#ifdef __cplusplus+#include "fl_utf8C.h"+#endif
+ c-src/fl_utf8C.h view
@@ -0,0 +1,3 @@+#ifdef __cplusplus+#include "FL/fl_utf8.h"+#endif
+ c-src/glC.cpp view
@@ -0,0 +1,81 @@+#include "glC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(void,flc_gl_start)( ){+    gl_start();+  }+  FL_EXPORT_C(void,flc_gl_finish)( ){+    gl_finish();+  }+  FL_EXPORT_C(void,flc_gl_color)(Fl_Color i){+    gl_color(i);+  }+  FL_EXPORT_C(void,flc_gl_color_with_i)(int c){+    gl_color(c);+  }+  FL_EXPORT_C(void,flc_gl_rect)(int x,int y,int w,int h){+    gl_rect(x,y,w,h);+  }+  FL_EXPORT_C(void,flc_gl_rectf)(int x,int y,int w,int h){+    gl_rectf(x,y,w,h);+  }+  FL_EXPORT_C(void,flc_gl_font)(int fontid,int size){+    gl_font(fontid,size);+  }+  FL_EXPORT_C(int,flc_gl_height)( ){+    return gl_height();+  }+  FL_EXPORT_C(int,flc_gl_descent)( ){+    return gl_descent();+  }+  FL_EXPORT_C(double,flc_gl_width)(const char* str){+    return gl_width(str);+  }+  FL_EXPORT_C(double,flc_gl_width_with_n)(const char* str,int n){+    return gl_width(str,n);+  }+  FL_EXPORT_C(double,flc_gl_width_with_uchar_str)(uchar str){+    return gl_width(str);+  }+  FL_EXPORT_C(void,flc_gl_draw)(const char* str){+    gl_draw(str);+  }+  FL_EXPORT_C(void,flc_gl_draw_with_n)(const char* str,int n){+    gl_draw(str,n);+  }+  FL_EXPORT_C(void,flc_gl_draw_with_xy)(const char* str,float x,float y){+    gl_draw(str,x,y);+  }+  FL_EXPORT_C(void,flc_gl_draw_with_nxy)(const char* str,int n,float x,float y){+    gl_draw(str,n,x,y);+  }+  FL_EXPORT_C(void,flc_gl_draw_with_xywh_align)(const char* str,int x,int y,int w,int h,Fl_Align align){+    gl_draw(str,x,y,w,h,align);+  }+  FL_EXPORT_C(void,flc_gl_measure)(const char* str,int x,int y){+    gl_measure(str,x,y);+  }+#ifdef __APPLE__+  FL_EXPORT_C(void,flc_set_gl_texture_pile_height)(int max){+    gl_texture_pile_height(max);+  }+  FL_EXPORT_C(int,flc_gl_texture_pile_height)( ){+    return gl_texture_pile_height();+  }+#endif+  FL_EXPORT_C(void,flc_gl_draw_image)(const uchar* str,int x,int y,int w,int h){+    gl_draw_image(str,x,y,w,h);+  }+  FL_EXPORT_C(void,flc_gl_draw_image_with_d)(const uchar* str,int x,int y,int w,int h,int d){+    gl_draw_image(str,x,y,w,h,d);+  }+  FL_EXPORT_C(void,flc_gl_draw_image_with_ld)(const uchar* str,int x,int y,int w,int h,int ld){+    gl_draw_image(str,x,y,w,h,3,ld);+  }+  FL_EXPORT_C(void,flc_gl_draw_image_with_d_ld)(const uchar* str,int x,int y,int w,int h,int d,int ld){+    gl_draw_image(str,x,y,w,h,d,ld);+  }+#ifdef __cplusplus+}+#endif
+ c-src/glC.h view
@@ -0,0 +1,46 @@+#ifndef __GL_C__+#define __GL_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/gl.h"+#include "Fl_CallbackC.h"+EXPORT {+#endif+#  ifdef __APPLE__+#    include <OpenGL/gl.h>+#  else+#    include <GL/gl.h>+#  endif+  FL_EXPORT_C(void, flc_gl_start)();+  FL_EXPORT_C(void, flc_gl_finish)();+  FL_EXPORT_C(void, flc_gl_color)(Fl_Color i);+  FL_EXPORT_C(void, flc_gl_color_with_i)(int c);+  FL_EXPORT_C(void, flc_gl_rect)(int x,int y,int w,int h);+  FL_EXPORT_C(void, flc_gl_rectf)(int x,int y,int w,int h);+  FL_EXPORT_C(void, flc_gl_font)(int fontid, int size);+  FL_EXPORT_C(int, flc_gl_height)();+  FL_EXPORT_C(int, flc_gl_descent)();+  FL_EXPORT_C(double, flc_gl_width)(const char* str);+  FL_EXPORT_C(double, flc_gl_width_with_n)(const char* str, int n);+  FL_EXPORT_C(double, flc_gl_width_with_uchar_str)(uchar str);+  FL_EXPORT_C(void, flc_gl_draw)(const char* str);+  FL_EXPORT_C(void, flc_gl_draw_with_n)(const char* str, int n);+  FL_EXPORT_C(void, flc_gl_draw_with_xy)(const char* str, float x, float y);+  FL_EXPORT_C(void, flc_gl_draw_with_nxy)(const char* str, int n, float x, float y);+  FL_EXPORT_C(void, flc_gl_draw_with_xywh_align)(const char* str, int x, int y, int w, int h, Fl_Align align);+  FL_EXPORT_C(void, flc_gl_measure)(const char* str, int x, int y);+#ifdef __APPLE__+  FL_EXPORT_C(void, flc_set_gl_texture_pile_height)(int max);+  FL_EXPORT_C(int, flc_gl_texture_pile_height)();+#endif+  FL_EXPORT_C(void, flc_gl_draw_image)(const uchar* str, int x,int y,int w,int h);+  FL_EXPORT_C(void, flc_gl_draw_image_with_d)(const uchar* str, int x,int y,int w,int h, int d);+  FL_EXPORT_C(void, flc_gl_draw_image_with_ld)(const uchar* str, int x,int y,int w,int h, int ld);+  FL_EXPORT_C(void, flc_gl_draw_image_with_d_ld)(const uchar* str, int x,int y,int w,int h, int d, int ld);+#ifdef __cplusplus+}+#endif+#endif /* __GL_C__ */
+ c-src/glutC.cpp view
@@ -0,0 +1,277 @@+#include "glutC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(void,flc_glutInit)(int* argcp,char** argv){+    glutInit(argcp,argv);+  }+  FL_EXPORT_C(void,flc_glutInitDisplayMode)(unsigned int mode){+    glutInitDisplayMode(mode);+  }+  FL_EXPORT_C(void,flc_glutInitWindowPosition)(int x,int y){+    glutInitWindowPosition(x,y);+  }+  FL_EXPORT_C(void,flc_glutInitWindowSize)(int w,int h){+    glutInitWindowSize(w,h);+  }+  FL_EXPORT_C(void,flc_glutMainLoop)( ){+    glutMainLoop();+  }+  FL_EXPORT_C(int,flc_glutCreateWindow)(char* title){+    return glutCreateWindow(title);+  }+  FL_EXPORT_C(int,flc_glutCreateSubWindow)(int win,int x,int y,int width,int height){+    return glutCreateSubWindow(win,x,y,width,height);+  }+  FL_EXPORT_C(void,flc_glutDestroyWindow)(int win){+    glutDestroyWindow(win);+  }+  FL_EXPORT_C(void,flc_glutPostRedisplay)( ){+    glutPostRedisplay();+  }+  FL_EXPORT_C(void,flc_glutPostWindowRedisplay)(int win){+    glutPostWindowRedisplay(win);+  }+  FL_EXPORT_C(void,flc_glutSwapBuffers)( ){+    glutSwapBuffers();+  }+  FL_EXPORT_C(int,flc_glutGetWindow)( ){+    return glutGetWindow();+  }+  FL_EXPORT_C(void,flc_glutSetWindow)(int win){+    glutSetWindow(win);+  }+  FL_EXPORT_C(void,flc_glutSetWindowTitle)(char* t){+    glutSetWindowTitle(t);+  }+  FL_EXPORT_C(void,flc_glutSetIconTitle)(char* t){+    glutSetIconTitle(t);+  }+  FL_EXPORT_C(void,flc_glutPositionWindow)(int x,int y){+    glutPositionWindow(x,y);+  }+  FL_EXPORT_C(void,flc_glutReshapeWindow)(int w,int h){+    glutReshapeWindow(w,h);+  }+  FL_EXPORT_C(void,flc_glutPopWindow)( ){+    glutPopWindow();+  }+  FL_EXPORT_C(void,flc_glutPushWindow)( ){+    glutPushWindow();+  }+  FL_EXPORT_C(void,flc_glutIconifyWindow)( ){+    glutIconifyWindow();+  }+  FL_EXPORT_C(void,flc_glutShowWindow)( ){+    glutShowWindow();+  }+  FL_EXPORT_C(void,flc_glutHideWindow)( ){+    glutHideWindow();+  }+  FL_EXPORT_C(void,flc_glutFullScreen)( ){+    glutFullScreen();+  }+  FL_EXPORT_C(void,flc_glutSetCursor)(Fl_Cursor cursor){+    glutSetCursor(cursor);+  }+  FL_EXPORT_C(void,flc_glutWarpPointer)(int x,int y){+    glutWarpPointer(x,y);+  }+  FL_EXPORT_C(void,flc_glutEstablishOverlay)( ){+    glutEstablishOverlay();+  }+  FL_EXPORT_C(void,flc_glutRemoveOverlay)( ){+    glutRemoveOverlay();+  }+  FL_EXPORT_C(void,flc_glutUseLayer)(GLenum layer){+    glutUseLayer(layer);+  }+  FL_EXPORT_C(void,flc_glutPostOverlayRedisplay)( ){+    glutPostOverlayRedisplay();+  }+  FL_EXPORT_C(void,flc_glutShowOverlay)( ){+    glutShowOverlay();+  }+  FL_EXPORT_C(void,flc_glutHideOverlay)( ){+    glutHideOverlay();+  }+  FL_EXPORT_C(int, flc_glutCreateMenu)(void (*f)(int)){+    return glutCreateMenu(f);+  }+  FL_EXPORT_C(void,flc_glutDestroyMenu)(int menu){+    glutDestroyMenu(menu);+  }+  FL_EXPORT_C(int,flc_glutGetMenu)( ){+    return glutGetMenu();+  }+  FL_EXPORT_C(void,flc_glutSetMenu)(int m){+    glutSetMenu(m);+  }+  FL_EXPORT_C(void,flc_glutAddMenuEntry)(char* label,int value){+    glutAddMenuEntry(label,value);+  }+  FL_EXPORT_C(void,flc_glutAddSubMenu)(char* label,int submenu){+    glutAddSubMenu(label,submenu);+  }+  FL_EXPORT_C(void,flc_glutChangeToMenuEntry)(int item,char* labela,int value){+    glutChangeToMenuEntry(item,labela,value);+  }+  FL_EXPORT_C(void,flc_glutChangeToSubMenu)(int item,char* label,int submenu){+    glutChangeToSubMenu(item,label,submenu);+  }+  FL_EXPORT_C(void,flc_glutRemoveMenuItem)(int item){+    glutRemoveMenuItem(item);+  }+  FL_EXPORT_C(void,flc_glutAttachMenu)(int b){+    glutAttachMenu(b);+  }+  FL_EXPORT_C(void,flc_glutDetachMenu)(int b){+    glutDetachMenu(b);+  }+  FL_EXPORT_C(int,flc_glutGet)(GLenum type){+    return glutGet(type);+  }+  FL_EXPORT_C(int,flc_glutDeviceGet)(GLenum type){+    return glutDeviceGet(type);+  }+  FL_EXPORT_C(int,flc_glutGetModifiers)( ){+    return glutGetModifiers();+  }+  FL_EXPORT_C(int,flc_glutLayerGet)(GLenum type){+    return glutLayerGet(type);+  }+  FL_EXPORT_C(GLUTproc,flc_glutGetProcAddress)(const char* procName){+    return glutGetProcAddress(procName);+  }+  FL_EXPORT_C(void,flc_glutBitmapCharacter)(void* font,int character){+    glutBitmapCharacter(font,character);+  }+  FL_EXPORT_C(int,flc_glutBitmapHeight)(void* font){+    return glutBitmapHeight(font);+  }+  FL_EXPORT_C(int,flc_glutBitmapLength)(void* font,const unsigned char* string){+    return glutBitmapLength(font,string);+  }+  FL_EXPORT_C(void,flc_glutBitmapString)(void* font,const unsigned char* string){+    glutBitmapString(font,string);+  }+  FL_EXPORT_C(int,flc_glutBitmapWidth)(void* font,int character){+    return glutBitmapWidth(font,character);+  }+  // FL_EXPORT_C(int,flc_glutExtensionSupported)(char* name){+  //   return glutExtensionSupported(name);+  // }+  FL_EXPORT_C(void,flc_glutStrokeCharacter)(void* font,int character){+    glutStrokeCharacter(font,character);+  }+  FL_EXPORT_C(GLfloat,flc_glutStrokeHeight)(void* font){+    return glutStrokeHeight(font);+  }+  FL_EXPORT_C(int,flc_glutStrokeLength)(void* font,const unsigned char* string){+    return glutStrokeLength(font,string);+  }+  FL_EXPORT_C(void,flc_glutStrokeString)(void* font,const unsigned char* string){+    glutStrokeString(font,string);+  }+  FL_EXPORT_C(int,flc_glutStrokeWidth)(void* font,int character){+    return glutStrokeWidth(font,character);+  }+  FL_EXPORT_C(void,flc_glutWireSphere)(GLdouble radius,GLint slices,GLint stacks){+    glutWireSphere(radius,slices,stacks);+  }+  FL_EXPORT_C(void,flc_glutSolidSphere)(GLdouble radius,GLint slices,GLint stacks){+    glutSolidSphere(radius,slices,stacks);+  }+  FL_EXPORT_C(void,flc_glutWireCone)(GLdouble base,GLdouble height,GLint slices,GLint stacks){+    glutWireCone(base,height,slices,stacks);+  }+  FL_EXPORT_C(void,flc_glutSolidCone)(GLdouble base,GLdouble height,GLint slices,GLint stacks){+    glutSolidCone(base,height,slices,stacks);+  }+  FL_EXPORT_C(void,flc_glutWireCube)(GLdouble size){+    glutWireCube(size);+  }+  FL_EXPORT_C(void,flc_glutSolidCube)(GLdouble size){+    glutSolidCube(size);+  }+  FL_EXPORT_C(void,flc_glutWireTorus)(GLdouble innerRadius,GLdouble outerRadius,GLint sides,GLint rings){+    glutWireTorus(innerRadius,outerRadius,sides,rings);+  }+  FL_EXPORT_C(void,flc_glutSolidTorus)(GLdouble innerRadius,GLdouble outerRadius,GLint sides,GLint rings){+    glutSolidTorus(innerRadius,outerRadius,sides,rings);+  }+  FL_EXPORT_C(void,flc_glutWireDodecahedron)( ){+    glutWireDodecahedron();+  }+  FL_EXPORT_C(void,flc_glutSolidDodecahedron)( ){+    glutSolidDodecahedron();+  }+  FL_EXPORT_C(void,flc_glutWireTeapot)(GLdouble size){+    glutWireTeapot(size);+  }+  FL_EXPORT_C(void,flc_glutSolidTeapot)(GLdouble size){+    glutSolidTeapot(size);+  }+  FL_EXPORT_C(void,flc_glutWireOctahedron)( ){+    glutWireOctahedron();+  }+  FL_EXPORT_C(void,flc_glutSolidOctahedron)( ){+    glutSolidOctahedron();+  }+  FL_EXPORT_C(void,flc_glutWireTetrahedron)( ){+    glutWireTetrahedron();+  }+  FL_EXPORT_C(void,flc_glutSolidTetrahedron)( ){+    glutSolidTetrahedron();+  }+  FL_EXPORT_C(void,flc_glutWireIcosahedron)( ){+    glutWireIcosahedron();+  }+  FL_EXPORT_C(void,flc_glutSolidIcosahedron)( ){+    glutSolidIcosahedron();+  }+  FL_EXPORT_C(void, flc_glutDisplayFunc)(void (*f)()){+    glutDisplayFunc(f);+  }+  FL_EXPORT_C(void, flc_glutReshapeFunc)(void (*f)(int w, int h)){+    glutReshapeFunc(f);+  }+  FL_EXPORT_C(void, flc_glutKeyboardFunc)(void (*f)(uchar key, int x, int y)){+    glutKeyboardFunc(f);+  }+  FL_EXPORT_C(void, flc_glutMouseFunc)(void (*f)(int b, int state, int x, int y)){+    glutMouseFunc(f);+  }+  FL_EXPORT_C(void, flc_glutMotionFunc)(void (*f)(int x, int y)){+    glutMotionFunc(f);+  }+  FL_EXPORT_C(void, flc_glutPassiveMotionFunc)(void (*f)(int x, int y)){+    glutPassiveMotionFunc(f);+  }+  FL_EXPORT_C(void, flc_glutEntryFunc)(void (*f)(int s)){+    glutEntryFunc(f);+  }+  FL_EXPORT_C(void, flc_glutVisibilityFunc)(void (*f)(int s)){+    glutVisibilityFunc(f);+  }+  FL_EXPORT_C(void, flc_glutIdleFunc)(void (*f)()){+    glutIdleFunc(f);+  }+  FL_EXPORT_C(void, flc_glutTimerFunc)(unsigned int msec, void (*f)(int), int value){+    glutTimerFunc(msec,f,value);+  }+  FL_EXPORT_C(void, flc_glutMenuStateFunc)(void (*f)(int state)){+    glutMenuStateFunc(f);+  }+  FL_EXPORT_C(void, flc_glutMenuStatusFunc)(void (*f)(int status, int x, int y)){+    glutMenuStatusFunc(f);+  }+  FL_EXPORT_C(void, flc_glutSpecialFunc)(void (*f)(int key, int x, int y)){+    glutSpecialFunc(f);+  }+  FL_EXPORT_C(void, flc_glutOverlayDisplayFunc)(void (*f)()){+    glutOverlayDisplayFunc(f);+  }+#ifdef __cplusplus+}+#endif
+ c-src/glutC.h view
@@ -0,0 +1,105 @@+#ifndef __GLUT_C__+#define __GLUT_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// Fl_Widget is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/glut.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+  FL_EXPORT_C(void, flc_glutInit)(int* argcp, char** argv);+  FL_EXPORT_C(void, flc_glutInitDisplayMode)(unsigned int mode);+  FL_EXPORT_C(void, flc_glutInitWindowPosition)(int x, int y);+  FL_EXPORT_C(void, flc_glutInitWindowSize)(int w, int h);+  FL_EXPORT_C(void, flc_glutMainLoop)();+  FL_EXPORT_C(int, flc_glutCreateWindow)(char* title);+  FL_EXPORT_C(int, flc_glutCreateSubWindow)(int win, int x, int y, int width, int height);+  FL_EXPORT_C(void, flc_glutDestroyWindow)(int win);+  FL_EXPORT_C(void, flc_glutPostRedisplay)();+  FL_EXPORT_C(void, flc_glutPostWindowRedisplay)(int win);+  FL_EXPORT_C(void, flc_glutSwapBuffers)();+  FL_EXPORT_C(int, flc_glutGetWindow)();+  FL_EXPORT_C(void, flc_glutSetWindow)(int win);+  FL_EXPORT_C(void, flc_glutSetWindowTitle)(char* t);+  FL_EXPORT_C(void, flc_glutSetIconTitle)(char* t);+  FL_EXPORT_C(void, flc_glutPositionWindow)(int x, int y);+  FL_EXPORT_C(void, flc_glutReshapeWindow)(int w, int h);+  FL_EXPORT_C(void, flc_glutPopWindow)();+  FL_EXPORT_C(void, flc_glutPushWindow)();+  FL_EXPORT_C(void, flc_glutIconifyWindow)();+  FL_EXPORT_C(void, flc_glutShowWindow)();+  FL_EXPORT_C(void, flc_glutHideWindow)();+  FL_EXPORT_C(void, flc_glutFullScreen)();+  FL_EXPORT_C(void, flc_glutSetCursor)(Fl_Cursor cursor);+  FL_EXPORT_C(void, flc_glutWarpPointer)(int x, int y);+  FL_EXPORT_C(void, flc_glutEstablishOverlay)();+  FL_EXPORT_C(void, flc_glutRemoveOverlay)();+  FL_EXPORT_C(void, flc_glutUseLayer)(GLenum layer);+  FL_EXPORT_C(void, flc_glutPostOverlayRedisplay)();+  FL_EXPORT_C(void, flc_glutShowOverlay)();+  FL_EXPORT_C(void, flc_glutHideOverlay)();+  FL_EXPORT_C(int, flc_glutCreateMenu)(void (*f)(int));+  FL_EXPORT_C(void, flc_glutDestroyMenu)(int menu);+  FL_EXPORT_C(int, flc_glutGetMenu)();+  FL_EXPORT_C(void, flc_glutSetMenu)(int m);+  FL_EXPORT_C(void, flc_glutAddMenuEntry)(char* label, int value);+  FL_EXPORT_C(void, flc_glutAddSubMenu)(char* label, int submenu);+  FL_EXPORT_C(void, flc_glutChangeToMenuEntry)(int item, char* labela, int value);+  FL_EXPORT_C(void, flc_glutChangeToSubMenu)(int item, char* label, int submenu);+  FL_EXPORT_C(void, flc_glutRemoveMenuItem)(int item);+  FL_EXPORT_C(void, flc_glutAttachMenu)(int b);+  FL_EXPORT_C(void, flc_glutDetachMenu)(int b);+  FL_EXPORT_C(void, flc_glutDisplayFunc)(void (*f)());+  FL_EXPORT_C(void, flc_glutReshapeFunc)(void (*f)(int w, int h));+  FL_EXPORT_C(void, flc_glutKeyboardFunc)(void (*f)(uchar key, int x, int y));+  FL_EXPORT_C(void, flc_glutMouseFunc)(void (*f)(int b, int state, int x, int y));+  FL_EXPORT_C(void, flc_glutMotionFunc)(void (*f)(int x, int y));+  FL_EXPORT_C(void, flc_glutPassiveMotionFunc)(void (*f)(int x, int y));+  FL_EXPORT_C(void, flc_glutEntryFunc)(void (*f)(int s));+  FL_EXPORT_C(void, flc_glutVisibilityFunc)(void (*f)(int s));+  FL_EXPORT_C(void, flc_glutIdleFunc)(void (*f)());+  FL_EXPORT_C(void, flc_glutTimerFunc)(unsigned int msec, void (*f)(int), int value);+  FL_EXPORT_C(void, flc_glutMenuStateFunc)(void (*f)(int state));+  FL_EXPORT_C(void, flc_glutMenuStatusFunc)(void (*f)(int status, int x, int y));+  FL_EXPORT_C(void, flc_glutSpecialFunc)(void (*f)(int key, int x, int y));+  FL_EXPORT_C(void, flc_glutOverlayDisplayFunc)(void (*f)());+  FL_EXPORT_C(int, flc_glutGet)(GLenum type);+  FL_EXPORT_C(int, flc_glutDeviceGet)(GLenum type);+  FL_EXPORT_C(int, flc_glutGetModifiers)();+  FL_EXPORT_C(int, flc_glutLayerGet)(GLenum type);+  FL_EXPORT_C(GLUTproc, flc_glutGetProcAddress)(const char* procName);+  FL_EXPORT_C(void, flc_glutBitmapCharacter)(void* font, int character);+  FL_EXPORT_C(int, flc_glutBitmapHeight)(void* font);+  FL_EXPORT_C(int, flc_glutBitmapLength)(void* font, const unsigned char* string);+  FL_EXPORT_C(void, flc_glutBitmapString)(void* font, const unsigned char* string);+  FL_EXPORT_C(int, flc_glutBitmapWidth)(void* font, int character);+  FL_EXPORT_C(int, flc_glutExtensionSupported)(char* name);+  FL_EXPORT_C(void, flc_glutStrokeCharacter)(void* font, int character);+  FL_EXPORT_C(GLfloat, flc_glutStrokeHeight)(void* font);+  FL_EXPORT_C(int, flc_glutStrokeLength)(void* font, const unsigned char* string);+  FL_EXPORT_C(void, flc_glutStrokeString)(void* font, const unsigned char* string);+  FL_EXPORT_C(int, flc_glutStrokeWidth)(void* font, int character);+  FL_EXPORT_C(void, flc_glutWireSphere)(GLdouble radius, GLint slices, GLint stacks);+  FL_EXPORT_C(void, flc_glutSolidSphere)(GLdouble radius, GLint slices, GLint stacks);+  FL_EXPORT_C(void, flc_glutWireCone)(GLdouble base, GLdouble height, GLint slices, GLint stacks);+  FL_EXPORT_C(void, flc_glutSolidCone)(GLdouble base, GLdouble height, GLint slices, GLint stacks);+  FL_EXPORT_C(void, flc_glutWireCube)(GLdouble size);+  FL_EXPORT_C(void, flc_glutSolidCube)(GLdouble size);+  FL_EXPORT_C(void, flc_glutWireTorus)(GLdouble innerRadius, GLdouble outerRadius, GLint sides, GLint rings);+  FL_EXPORT_C(void, flc_glutSolidTorus)(GLdouble innerRadius, GLdouble outerRadius, GLint sides, GLint rings);+  FL_EXPORT_C(void, flc_glutWireDodecahedron)();+  FL_EXPORT_C(void, flc_glutSolidDodecahedron)();+  FL_EXPORT_C(void, flc_glutWireTeapot)(GLdouble size);+  FL_EXPORT_C(void, flc_glutSolidTeapot)(GLdouble size);+  FL_EXPORT_C(void, flc_glutWireOctahedron)();+  FL_EXPORT_C(void, flc_glutSolidOctahedron)();+  FL_EXPORT_C(void, flc_glutWireTetrahedron)();+  FL_EXPORT_C(void, flc_glutSolidTetrahedron)();+  FL_EXPORT_C(void, flc_glutWireIcosahedron)();+  FL_EXPORT_C(void, flc_glutSolidIcosahedron)();+#ifdef __cplusplus+}+#endif+#endif /* __GLUT_C__ */
+ c-src/xC.cpp view
@@ -0,0 +1,57 @@+#include "xC.h"+#ifdef __cplusplus+EXPORT {+#endif+  FL_EXPORT_C(void,flc_open_display)( ){+    fl_open_display();+  }+  FL_EXPORT_C(Fl_Bitmask,flc_create_bitmask)(int w,int h,const uchar* data){+    return fl_create_bitmask(w,h,data);+  }+  FL_EXPORT_C(Fl_Bitmask,flc_create_alphamask)(int w,int h,int d,int ld,const uchar* data){+    return fl_create_alphamask(w,h,d,ld,data);+  }+  FL_EXPORT_C(void,flc_delete_bitmask)(Fl_Bitmask bm){+    fl_delete_bitmask(bm);+  }+#if !defined(WIN32) && !defined(__APPLE__)+  FL_EXPORT_C(void,flc_close_display)( ){+    fl_close_display();+  }+  FL_EXPORT_C(void, flc_set_fl_screen)(int screen){+    fl_screen = screen;+  }+  FL_EXPORT_C(int, flc_fl_screen)(){+    return fl_screen;+  }+  FL_EXPORT_C(ulong,flc_xpixel_with_rgb)(uchar r,uchar g,uchar b){+    return fl_xpixel(r,g,b);+  }+  FL_EXPORT_C(ulong,flc_xpixel)(Fl_Color i){+    return fl_xpixel(i);+  }+  FL_EXPORT_C(void,flc_open_display_with_d)(Display* d){+    fl_open_display(d);+  }+  FL_EXPORT_C(void, flc_set_fl_display)(Display* d){+    fl_display = d;+  }+  FL_EXPORT_C(Display*, flc_fl_display)(){+    return fl_display;+  }+  FL_EXPORT_C(void, flc_set_fl_colormap)(Colormap c){+    fl_colormap = c;+  }+  FL_EXPORT_C(Colormap, flc_fl_colormap)(){+    return fl_colormap;+  }+  FL_EXPORT_C(void, flc_set_fl_visual)(XVisualInfo* i){+    fl_visual = i;+  }+  FL_EXPORT_C(XVisualInfo*, flc_fl_visual)(){+    return fl_visual;+  }+#endif+#ifdef __cplusplus+}+#endif
+ c-src/xC.h view
@@ -0,0 +1,38 @@+#ifndef __X_C__+#define __X_C__+#ifdef __cplusplus+// always include the FL/*.H headers before local headers+// X is included transitively and needed for+// the callback mechanism included below to work.+#include "FL/Fl.H"+#include "FL/x.H"+#include "Fl_CallbackC.h"+EXPORT {+#endif+#if !defined(WIN32) && !defined(__APPLE__)+# include <X11/Xlib.h>+# include <X11/Xutil.h>+#endif+ FL_EXPORT_C(void, flc_open_display)();+ FL_EXPORT_C(Fl_Bitmask, flc_create_bitmask)(int w, int h, const uchar *data);+ FL_EXPORT_C(Fl_Bitmask, flc_create_alphamask)(int w, int h, int d, int ld, const uchar *data);+ FL_EXPORT_C(void, flc_delete_bitmask)(Fl_Bitmask bm);+#if !defined(WIN32) && !defined(__APPLE__)+ typedef ulong Fl_Bitmask;+ FL_EXPORT_C(void, flc_close_display)();+ FL_EXPORT_C(ulong, flc_xpixel)(Fl_Color i);+ FL_EXPORT_C(ulong, flc_xpixel_with_rgb)(uchar r, uchar g, uchar b);+ FL_EXPORT_C(void, flc_set_fl_screen)(int screen);+ FL_EXPORT_C(int, flc_fl_screen)();+ FL_EXPORT_C(Display*, flc_fl_display)();+ FL_EXPORT_C(void, flc_set_fl_display)(Display* d);+ FL_EXPORT_C(void, flc_open_display_with_d)(Display* d);+ FL_EXPORT_C(void, flc_set_fl_colormap)(Colormap c);+ FL_EXPORT_C(Colormap, flc_fl_colormap)();+ FL_EXPORT_C(void, flc_set_fl_visual)(XVisualInfo* i);+ FL_EXPORT_C(XVisualInfo*, flc_fl_visual)();+#endif+#ifdef __cplusplus+}+#endif+#endif /* __X_C__ */
+ configure.ac view
@@ -0,0 +1,43 @@+AC_PREREQ([2.60])+AC_INIT([fltkc], [0.1], [aditya dawt siram ayt gmail dawt com])+AC_CONFIG_SRCDIR([c-src/Fl_C.h])+AC_CONFIG_HEADERS([config.h])++# Checks for programs.+AC_PROG_CXX+AC_PROG_CC++# Checks for libraries.+AC_CHECK_PROG(FLTKCONFIG,fltk-config,fltk-config,AC_MSG_ERROR(Cannot find the fltk-config executable. Is FLTK installed?))+# Checks for header files.+AC_CHECK_HEADERS([stddef.h stdint.h stdlib.h string.h unistd.h])+AC_CHECK_LIB([dl], [main])+AC_CHECK_LIB([fltk], [fl_alphasort])+AC_CHECK_LIB([fltk_gl],+             [main],+             GlFlag='--use-gl --use-glut',+             GlFlag='')+AC_CHECK_LIB([fltk_images],+             [main],+             ImagesFlag='--use-images',+             ImagesFlag='')+AC_CHECK_LIB([fltk_cairo],+             [main],+             CairoFlag='--use-cairo',+             CairoFlag='')+AC_CHECK_LIB([fltk_forms],+             [main],+             FormsFlag='--use-forms',+             FormsFlag='')++AC_SUBST(FLTKCONFIGCOMMAND,`fltk-config --ldstaticflags $GlFlag $ImagesFlag $CairoFlag $FormsFlag`)+# Checks for typedefs, structures, and compiler characteristics.+AC_TYPE_SIZE_T++# Checks for library functions.+AC_FUNC_MALLOC+AC_CHECK_FUNCS([select strdup strerror strrchr strtol])++AC_SUBST([FLTKCONFIG],"fltk-config")+AC_CONFIG_FILES([Makefile c-src/Makefile c-examples/Makefile fltkhs.buildinfo])+AC_OUTPUT
+ configure.scan view
@@ -0,0 +1,59 @@+#                                               -*- Autoconf -*-+# Process this file with autoconf to produce a configure script.++AC_PREREQ([2.69])+AC_INIT([FULL-PACKAGE-NAME], [VERSION], [BUG-REPORT-ADDRESS])+AC_CONFIG_SRCDIR([src/Fl_ClockC.h])+AC_CONFIG_HEADERS([config.h])++# Checks for programs.+AC_PROG_CXX+AC_PROG_CC++# Checks for libraries.+# FIXME: Replace `main' with a function in `-lGL':+AC_CHECK_LIB([GL], [main])+# FIXME: Replace `main' with a function in `-lGLU':+AC_CHECK_LIB([GLU], [main])+# FIXME: Replace `main' with a function in `-lX11':+AC_CHECK_LIB([X11], [main])+# FIXME: Replace `main' with a function in `-lXext':+AC_CHECK_LIB([Xext], [main])+# FIXME: Replace `main' with a function in `-lXft':+AC_CHECK_LIB([Xft], [main])+# FIXME: Replace `main' with a function in `-lXinerama':+AC_CHECK_LIB([Xinerama], [main])+# FIXME: Replace `main' with a function in `-ldl':+AC_CHECK_LIB([dl], [main])+# FIXME: Replace `main' with a function in `-lfltk':+AC_CHECK_LIB([fltk], [main])+# FIXME: Replace `main' with a function in `-lfltk_gl':+AC_CHECK_LIB([fltk_gl], [main])+# FIXME: Replace `main' with a function in `-lfltk_images':+AC_CHECK_LIB([fltk_images], [main])+# FIXME: Replace `main' with a function in `-lfontconfig':+AC_CHECK_LIB([fontconfig], [main])+# FIXME: Replace `main' with a function in `-ljpeg':+AC_CHECK_LIB([jpeg], [main])+# FIXME: Replace `main' with a function in `-lm':+AC_CHECK_LIB([m], [main])+# FIXME: Replace `main' with a function in `-lpng':+AC_CHECK_LIB([png], [main])+# FIXME: Replace `main' with a function in `-lpthread':+AC_CHECK_LIB([pthread], [main])+# FIXME: Replace `main' with a function in `-lz':+AC_CHECK_LIB([z], [main])++# Checks for header files.+AC_CHECK_HEADERS([stddef.h stdint.h stdlib.h string.h unistd.h])++# Checks for typedefs, structures, and compiler characteristics.+AC_CHECK_HEADER_STDBOOL+AC_TYPE_SIZE_T++# Checks for library functions.+AC_FUNC_MALLOC+AC_CHECK_FUNCS([select strdup strerror strrchr strtol])++AC_CONFIG_FILES([Makefile])+AC_OUTPUT
+ fltkhs.buildinfo.in view
@@ -0,0 +1,1 @@+ld-options: @FLTKCONFIGCOMMAND@ -lstdc++
+ fltkhs.cabal view
@@ -0,0 +1,313 @@+name: fltkhs+version: 0.1.0.0+synopsis: FLTK bindings+description:+    Low level bindings for the FLTK GUI toolkit.+license: MIT+license-file: LICENSE+author: Aditya Siram+maintainer: aditya.siram@gmail.com+homepage: http://github.com/deech/fltkhs+-- bug-reports:+-- copyright:+category: UI,Graphics+build-type: Custom+cabal-version: >=1.20+source-repository head+  type: git+  location: http://github.com/deech/fltkhs+library+  exposed-modules:+                   Graphics.UI.FLTK.LowLevel.FLTKHS+                   Graphics.UI.FLTK.LowLevel.GlWindow+                   Graphics.UI.FLTK.LowLevel.SingleWindow+                   Graphics.UI.FLTK.LowLevel.Window+                   Graphics.UI.FLTK.LowLevel.DoubleWindow+                   Graphics.UI.FLTK.LowLevel.OverlayWindow+                   Graphics.UI.FLTK.LowLevel.Button+                   Graphics.UI.FLTK.LowLevel.LightButton+                   Graphics.UI.FLTK.LowLevel.RadioLightButton+                   Graphics.UI.FLTK.LowLevel.CheckButton+                   Graphics.UI.FLTK.LowLevel.ReturnButton+                   Graphics.UI.FLTK.LowLevel.RoundButton+                   Graphics.UI.FLTK.LowLevel.RepeatButton+                   Graphics.UI.FLTK.LowLevel.ToggleButton+                   Graphics.UI.FLTK.LowLevel.Fl_Enumerations+                   Graphics.UI.FLTK.LowLevel.Fl_Types+                   Graphics.UI.FLTK.LowLevel.Dispatch+                   Graphics.UI.FLTK.LowLevel.Hierarchy+                   Graphics.UI.FLTK.LowLevel.Group+                   Graphics.UI.FLTK.LowLevel.Widget+                   Graphics.UI.FLTK.LowLevel.Box+                   Graphics.UI.FLTK.LowLevel.Clock+                   Graphics.UI.FLTK.LowLevel.Valuator+                   Graphics.UI.FLTK.LowLevel.Slider+                   Graphics.UI.FLTK.LowLevel.HorSlider+                   Graphics.UI.FLTK.LowLevel.FillSlider+                   Graphics.UI.FLTK.LowLevel.HorFillSlider+                   Graphics.UI.FLTK.LowLevel.HorNiceSlider+                   Graphics.UI.FLTK.LowLevel.HorValueSlider+                   Graphics.UI.FLTK.LowLevel.NiceSlider+                   Graphics.UI.FLTK.LowLevel.MenuItem+                   Graphics.UI.FLTK.LowLevel.MenuPrim+                   Graphics.UI.FLTK.LowLevel.Browser+                   Graphics.UI.FLTK.LowLevel.SelectBrowser+                   Graphics.UI.FLTK.LowLevel.SysMenuBar+                   Graphics.UI.FLTK.LowLevel.Choice+                   Graphics.UI.FLTK.LowLevel.MenuButton+                   Graphics.UI.FLTK.LowLevel.Image+                   Graphics.UI.FLTK.LowLevel.Bitmap+                   Graphics.UI.FLTK.LowLevel.Pixmap+                   Graphics.UI.FLTK.LowLevel.Draw+                   Graphics.UI.FLTK.LowLevel.CopySurface+                   Graphics.UI.FLTK.LowLevel.ImageSurface+                   Graphics.UI.FLTK.LowLevel.Adjuster+                   Graphics.UI.FLTK.LowLevel.Dial+                   Graphics.UI.FLTK.LowLevel.FillDial+                   Graphics.UI.FLTK.LowLevel.LineDial+                   Graphics.UI.FLTK.LowLevel.Roller+                   Graphics.UI.FLTK.LowLevel.Counter+                   Graphics.UI.FLTK.LowLevel.SimpleCounter+                   Graphics.UI.FLTK.LowLevel.Scrollbar+                   Graphics.UI.FLTK.LowLevel.ValueSlider+                   Graphics.UI.FLTK.LowLevel.ValueInput+                   Graphics.UI.FLTK.LowLevel.ValueOutput+                   Graphics.UI.FLTK.LowLevel.Timer+                   Graphics.UI.FLTK.LowLevel.Progress+                   Graphics.UI.FLTK.LowLevel.Positioner+                   Graphics.UI.FLTK.LowLevel.Input+                   Graphics.UI.FLTK.LowLevel.IntInput+                   Graphics.UI.FLTK.LowLevel.Wizard+                   Graphics.UI.FLTK.LowLevel.Table+                   Graphics.UI.FLTK.LowLevel.TableRow+                   Graphics.UI.FLTK.LowLevel.TreePrefs+                   Graphics.UI.FLTK.LowLevel.TreeItem+                   Graphics.UI.FLTK.LowLevel.Tree+                   Graphics.UI.FLTK.LowLevel.FL+                   Graphics.UI.FLTK.LowLevel.Gl+                   Graphics.UI.FLTK.LowLevel.TextSelection+                   Graphics.UI.FLTK.LowLevel.TextBuffer+                   Graphics.UI.FLTK.LowLevel.TextDisplay+                   Graphics.UI.FLTK.LowLevel.TextEditor+                   Graphics.UI.FLTK.LowLevel.Utils+  build-depends:+    base == 4.*,+    bytestring+  build-tools: c2hs+  hs-source-dirs: src+  other-modules: C2HS+  include-dirs: ./c-src, ./+  default-extensions: GADTs+  default-language: Haskell2010+  ghc-options: -Wall -fcontext-stack=220++Executable fltkhs-texteditor-simple+  Main-Is: texteditor-simple.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+    base == 4.*,+    fltkhs+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-textdisplay-with-colors+  Main-Is: textdisplay-with-colors.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+    base == 4.*,+    fltkhs+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-hello-world+  Main-Is: hello-world.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+    base == 4.*,+    fltkhs+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-doublebuffer+  Main-Is: doublebuffer.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+    base == 4.*,+    fltkhs+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-make-tree+  Main-Is: make-tree.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+    base == 4.*,+    fltkhs+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-tree-simple+  Main-Is: tree-simple.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+    base == 4.*,+    fltkhs+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-table-spreadsheet-with-keyboard-nav+  Main-Is: table-spreadsheet-with-keyboard-nav.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+    base == 4.*,+    fltkhs+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-test_call+  Main-Is: TestCall.hs+  Hs-Source-Dirs: src/TestPrograms+  Build-Depends:+    base == 4.*,+    fltkhs+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-buttons+  Main-Is: Buttons.hs+  Hs-Source-Dirs: src/TestPrograms+  Build-Depends:+    base == 4.*,+    fltkhs+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-table-simple+  Main-Is: table-simple.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+    base == 4.*,+    fltkhs+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-table-sort+  Main-Is: table-sort.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+    base == 4.*,+    fltkhs,+    process+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-arc+  Main-Is: arc.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+    base == 4.*,+    fltkhs+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-bitmap+  Main-Is: bitmap.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+     base == 4.*,+     fltkhs,bytestring+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-boxtype+  Main-Is: boxtype.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+     base == 4.*,+     fltkhs,bytestring+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-browser+  Main-Is: browser.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+     base == 4.*,+     fltkhs,+     bytestring+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:++Executable fltkhs-clock+  Main-Is: clock.hs+  Hs-Source-Dirs: src/Examples+  Build-Depends:+     base == 4.*,+     fltkhs,+     bytestring+  default-language: Haskell2010+  ghc-Options: -Wall -threaded -fcontext-stack=220+  if os(linux)+     ghc-Options: -pgml g++ "-optl-Wl,--whole-archive" "-optl-Wl,-Bstatic" "-optl-Wl,-lfltkc" "-optl-Wl,-Bdynamic" "-optl-Wl,--no-whole-archive"+  else+     ghc-Options:
+ scripts/doc-parser.hs view
@@ -0,0 +1,123 @@+#!/bin/runhaskell+import Control.Monad+import Text.Parsec+import Text.Parsec.String+import Data.List+import System.Environment+import Data.Char+import Data.List+import Text.Printf+import Control.Monad+import Debug.Trace+import System.Process+import Data.Maybe++data ConstraintsImpl = Constraints [String] String+parseConstraints = do+  spaces+  constraints <- manyTill anyChar (try (string "(~) * impl ("))+  state' <- getParserState+  impl <- manyTill anyChar (try $ string $ ") => Op ")+  spaces+  return (constraints,impl)+runImplParser = do+  constraints <- parseConstraints+  manyTill anyChar (try (string "("))+  methodDatatype <- manyTill anyChar (try (string " ()) "))+  widgetName <- manyTill anyChar (try (string " "))+  return (constraints, methodDatatype, widgetName)++runHierarchyParser = do+  spaces+  char '*'+  spaces+  word+  klazz <- word+  char '='+  spaces+  word+  parent <- many anyChar+  return (klazz,parent)+className = "Op"++lowerFirst m = [(toLower $ head m)] ++ (tail m)+quoteDatatypes l =+  unwords $+  map+  (\w -> let (quoted, quoteBeginning) =+               if (any isUpper w)+               then let (non, w') = span (not . isUpper) w+                    in+                     (True, non ++ "'" ++ w')+               else (False, w)+         in+          if quoted+          then+            let (non, rw') = span (not . isAlphaNum) (reverse quoteBeginning)+            in+             reverse rw' ++ "'" ++ non+          else w+  )+  (words l)+pprint r = case r of+  (("",impl), methodDatatype, widgetName) ->+    (lowerFirst methodDatatype)+    ++ " :: "+    ++ "'Ref' '" ++ widgetName+    ++ "'" ++ " -> "+    ++ quoteDatatypes impl+  ((c ,impl), methodDatatype, widgetName) ->+    (lowerFirst methodDatatype) +++    "::" ++ " "+    ++ "(" ++ (quoteDatatypes (tail (reverse (drop 2 (reverse c))))) ++ ")" ++ " => "+    ++ "'Ref' '" ++ widgetName+    ++ "'" ++ " -> "+    ++ quoteDatatypes impl++word = manyTill anyChar (try (string " "))++isWidget w ((_,_),_,w') = w == w'+data Command = Functions String | Hierarchy String++traceHierarchy :: String -> [String] -> [(String,String)] -> [String]+traceHierarchy w accum dict = case (lookup w dict) of+  Nothing -> accum+  (Just w') -> traceHierarchy w' (accum ++ [w]) dict++main = do+  args <- getArgs+  let command = case args of+        ("functions":w':[]) -> Just (Functions w')+        ("hierarchy":w':[]) -> Just (Hierarchy w')+        _ -> Nothing++  ls <- readProcess "html2text" ["-width", "1000", "../dist/doc/html/fltkhs/Graphics-UI-FLTK-LowLevel-Dispatch.html" ] "" >>= return . filter (isInfixOf ("=> " ++ className)) . lines+  objs <- readProcess "html2text" ["-width", "1000", "../dist/doc/html/fltkhs/Graphics-UI-FLTK-LowLevel-Hierarchy.html"] "" >>= return . filter (isInfixOf ("    * type")) . lines+  let ppLines = map (\l -> case (parse runImplParser "" l) of+                        Left err -> Nothing+                        Right r -> Just r+                    )+                ls+  let hier' = map (\o -> case (parse runHierarchyParser "" o) of+                      Left err -> trace (show  err) $ Nothing+                      Right r -> Just r+                  )+              objs+  case command of+    Nothing -> error ""+    (Just (Hierarchy w)) -> do+      let trace' = reverse $+                   map (\w -> "-- " ++ w) $+                   map (\w -> "\"" ++ w ++ "\"") $+                   map (\w -> "Graphics.UI.FLTK.LowLevel." ++ w) $+                   traceHierarchy w [] (catMaybes hier')+      putStr $ concat $ intersperse "\n--  |\n--  v\n" trace'+      putStr "\n"+    (Just (Functions w)) -> do+      let filteredByWidget = map (maybe "" pprint) $+                             filter (\ppl -> case ppl of+                                        Nothing -> False+                                        Just ppl' -> isWidget w ppl'+                                    ) ppLines+      putStr $ intercalate "\n--\n" (map ((++) "-- ")  (sort  filteredByWidget))+      putStr "\n"
+ scripts/header-to-function-definition.hs view
@@ -0,0 +1,703 @@+#!/bin/runhaskell+import Control.Monad+import Text.Parsec+import Text.Parsec.String+import Data.List+import System.Environment+import Data.Char+import Text.Printf+import Debug.Trace++data ArgumentType = Normal String | Self String deriving Show+data Argument = Argument {+      argumentType :: ArgumentType,+      argumentName :: String,+      realArgumentType :: String+    } deriving Show+data FunctionName = FunctionName {+      realName :: String,+      className :: String,+      argument :: Argument+    } deriving Show++ppArgument :: String -> Argument -> String+ppArgument seperator argument = (getArgumentType . argumentType $ argument) ++ seperator ++ (argumentName argument)+ppCPPArgument seperator argument = (realArgumentType $ argument) ++ seperator ++ (argumentName argument)+exportMacro = "FL_EXPORT_C"++getArgumentType (Normal s) = s+getArgumentType (Self s) = s+isSelf (Self _) = True+isSelf _ = False++needsCasting argument = not ((isSelf $ argumentType argument) || ((getArgumentType $ argumentType argument) ==  realArgumentType argument))+cast argument variable = "(static_cast<" ++ realArgumentType argument ++ "*>" ++ "(" ++ variable ++ "))"+backCast argument variable = "(" ++ (getArgumentType . argumentType $ argument) ++ ")" ++ " " ++ variable+castIfNecessary argument | (isSelf $ argumentType argument) = argumentName argument+castIfNecessary argument | ((getArgumentType $ argumentType argument) ==  (realArgumentType argument)) = argumentName argument+castIfNecessary argument = "(static_cast<" ++ realArgumentType argument ++ "*>" ++ "(" ++ argumentName argument ++ "))"++getSelfArgument args = case filter (\arg -> case (argumentType arg) of+                                              (Self _) -> True+                                              _ -> False)+                                   args of+                         (x:xs) -> Just(argumentName x)+                         [] -> Nothing++outputDefaultImplementation (CPP (fn,args)) =+    let header = exportMacro ++ "(" ++ ppArgument "," (argument fn) ++ ")"+                 ++ "("+                 ++ intercalate "," (map (ppArgument " ") args)+                 ++ ")"+        return = if ("void" == (getArgumentType . argumentType . argument $ fn))+                 then+                     ""+                 else+                     "return"+        body = case ((argumentType . argument $ fn), getSelfArgument args) of+                 (Normal t, Just self) -> (printf "{\n %s (static_cast<%s*>(%s))->%s(%s);\n}"+                                                   return+                                                   (className fn)+                                                   self+                                                   (realName fn)+                                                   (intercalate "," (map castIfNecessary (tail args))))+                 (Normal t, Nothing) ->  (printf "{\n %s %s::%s(%s);\n}"+                                                    return+                                                   (className fn)+                                                   (realName fn)+                                                   (intercalate "," (map castIfNecessary args)))+                 (Self t, Just self) -> (printf "{\n %s (%s)(static_cast<%s*>(%s))->%s(%s);\n}"+                                                return+                                                t+                                                (className fn)+                                                self+                                                (realName fn)+                                                (intercalate "," (map castIfNecessary (tail args))))+                 _ -> "dunno"+    in+      header ++ body++extractTypeName arg@(x:xs) = ((intercalate " " . init $ arg),(last arg))+extractTypeName []         = ("","")+++valueOrMe key table = case (lookup key table) of+                        Just v -> v+                        Nothing -> key++toHaskell prefix (CPP (function, arguments)) =+   let oldTypeName = getArgumentType . argumentType+       name = toHaskellName (realName function)+                            (\f -> if (isPrefixOf "Fl_" f)+                                   then (drop 3 f)+                                   else f)+       returnType = (valueOrMe (oldTypeName . argument $ function) simpleTypeMap, oldTypeName (argument function))+       haskellArgs = map (\a -> ((argumentName a), (valueOrMe (oldTypeName a) simpleTypeMap, oldTypeName a)))+                         arguments+       oldName = if (className function /= "")+                 then (className function) ++ "_" ++ (realName function)+                 else (realName function)+   in Haskell (prefix, oldName, name,returnType,haskellArgs)++toHaskellName name firstPartFunc+    = case parse parseName "" name of+        Right (part:parts) ->+            let processedParts' =+                    map (\p -> if (not $ null p)+                               then ((upcase $ [head p]) +++                                              (tail p))+                               else p)+                        parts+                surroundedByEmpty as = not (null as) && (null (head as)) && (null (last as))+                headEmpty as  = not (null as) && null (head as)+                lastEmpty as  = not (null as) && null (last as)+                setLast x as | not (null as) = take (length as - 1) as ++ [x]+                setLast x _ = [x]+                setHead x as | not (null as) = [x] ++ drop 1 as+                setHead x _ = [x]+                ifDo p f xs = if (p xs) then f xs else xs+                processedParts = ifDo lastEmpty (setLast "_")+                                 (ifDo headEmpty (setHead "_") processedParts')+                processFirstThing = firstPartFunc part+            in+              intercalate "" ([processFirstThing] ++ processedParts)+        Left _ -> error "shouldn't happen"++withMarshaller marshaller a =+    if (isPrefixOf "Ptr" a || isPrefixOf "FunPtr" a)+    then (Just "id")+    else+        lookup a marshaller+type Arg = (String, (String,String))+data RectangleOrStandalone = Rectangle Arg Arg Arg Arg+                           | StandAlone Arg+                           | Position Arg Arg+                           | ByX Arg+                           | ByY Arg+                           | ByXY Arg Arg+                           | ReturnSize Arg Arg+                           | ReturnRectangle Arg Arg Arg Arg+                           | RGB Arg Arg Arg+                           | Style Arg+printHaskell (Haskell (prefix, oldName, name, returnType, haskellArgs)) =+    let addInMarshaller arg =+            case withMarshaller inMarshallMap arg of+              Just m -> m ++ " `" ++ arg ++ "'"+              Nothing -> "`" ++ arg ++ "'"+        addOutMarshaller arg =+            case withMarshaller outMarshallMap arg of+              Just m -> "`" ++ arg ++ "' " ++ m+              Nothing -> "`" ++ arg ++ "'"+        comment hArg cppArg = if (hArg == "Ptr ()")+                              then "{- " ++ cppArg ++ " -}"+                              else ""+        cppNameToHaskellName = map toLower+        nameToPtrName n = (cppNameToHaskellName n) ++ "Ptr"+        haskellFunction hArg =+            if ((fst . snd $ hArg) == "Ptr ()")+            then ("withRef " ++ (cppNameToHaskellName (fst hArg))+                                    ++ " $ \\" ++ (nameToPtrName (fst hArg)) ++ " -> ")+            else ""+        toHaskellType arg = case (lookup arg haskellEquivalent) of+                              Just a -> a ++ " a "+                              Nothing -> case (lookup arg simpleTypeMap) of+                                           Just a' -> a'+                                           Nothing -> arg+        functionName = [(toUpper . head $ name)] ++ (tail name)+        haskellFunctionName = case prefix of+                               (Just p) -> p ++ functionName+                               Nothing -> name+        detectRectangleOrPosition (x@("X",(_,"int*")):y@("Y",(_,"int*")):w@("W",(_,"int*")):h@("H",(_,"int*")):args) =+           [ReturnRectangle x y w h] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (x@("x",(_,"int*")):y@("y",(_,"int*")):w@("w",(_,"int*")):h@("h",(_,"int*")):args) =+           [ReturnRectangle x y w h] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (x@("dx",(_,"int*")):y@("dy",(_,"int*")):w@("w",(_,"int*")):h@("h",(_,"int*")):args) =+           [ReturnRectangle x y w h] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (w@("w",(_,"int*")):h@("h",(_,"int*")):args) =+           [ReturnSize w h] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (w@("x",(_,"int*")):h@("y",(_,"int*")):args) =+           [ReturnSize w h] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (x@("X",(_,_)):y@("Y",(_,_)):w@("W",(_,_)):h@("H",(_,_)):args) =+           [Rectangle x y w h] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (x@("x",(_,_)):y@("y",(_,_)):w@("w",(_,_)):h@("h",(_,_)):args) =+           [Rectangle x y w h] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (x@("x",(_,"int")):y@("y",(_,"int")):args) =+           [Position x y] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (x@("X",(_,"int")):y@("Y",(_,"int")):args) =+           [Position x y] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (x@("x",(_,"double")):y@("y",(_,"double")):args) =+           [ByXY x y] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (x@("X",(_,"double")):y@("Y",(_,"double")):args) =+           [ByXY x y] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (x@("x",(_,"double")):args) =+           [ByX x] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (x@("X",(_,"double")):args) =+           [ByX x] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (y@("y",(_,"double")):args) =+           [ByY y] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (y@("Y",(_,"double")):args) =+           [ByY y] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (r@("r",(_,"uchar")):g@("g",(_,"uchar")):b@("b", (_, "uchar")):args) =+           [RGB r g b] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (style@("style",(_,"int")):args) =+           [Style style] ++ detectRectangleOrPosition args+        detectRectangleOrPosition (arg:args) = [StandAlone arg] ++ detectRectangleOrPosition args+        detectRectangleOrPosition [] = []+        parsedArgs = detectRectangleOrPosition haskellArgs+        addRectangle ((Rectangle x y w h):args) = "let (x_pos', y_pos', width', height') = fromRectangle rectangle in\n"+        addRectangle _ = ""+        hasAllocated =+            any+             (\a -> case a of+                        ReturnRectangle _ _ _ _ -> True+                        ReturnSize _ _ -> True+                        _ -> False)+             parsedArgs+        allocatedReturn =+            (concat+             (map+              (\a -> case a of+                       ReturnRectangle _ _ _ _ -> ["Rectangle"]+                       ReturnSize _ _ -> ["Size"]+                       _ -> [])+              parsedArgs+             )+            )+    in+    printf "{# fun unsafe %s as %s { %s } -> %s #}\ninstance (impl ~ (%s)) => Op (%s ()) xxx orig impl where\n   runOp _ _ %s"+           oldName+           (name ++ "'")+           (intercalate ","+            (concat+              (map+                (\a -> case a of+                         StandAlone (_,(hArg,_)) -> [(addInMarshaller hArg)]+                         Position (_,(hArg1,_)) (_,(hArg2,_)) -> [(addInMarshaller hArg1),+                                                                  (addInMarshaller hArg2)]+                         RGB (_,(hArg1,_)) (_,(hArg2,_))(_,(hArg3,_))+                             -> [(addInMarshaller hArg1),+                                 (addInMarshaller hArg2),+                                 (addInMarshaller hArg3)]+                         Style (_, (style,_))+                             -> [(addInMarshaller style)]+                         ByX (_,(hArg,_)) -> [(addInMarshaller hArg)]+                         ByY (_,(hArg,_)) -> [(addInMarshaller hArg)]+                         ByXY (_,(hArg1,_)) (_,(hArg2,_)) ->+                             [(addInMarshaller hArg1),+                              (addInMarshaller hArg2)]+                         Rectangle (_,(hArg1,_))(_,(hArg2,_))(_,(hArg3,_))(_,(hArg4,_)) ->+                             [(addInMarshaller hArg1),+                              (addInMarshaller hArg2),+                              (addInMarshaller hArg3),+                              (addInMarshaller hArg4)]+                         ReturnSize _ _ ->+                             [("alloca- `Int' peekIntConv*"),+                              ("alloca- `Int' peekIntConv*")]+                         ReturnRectangle _ _ _ _ ->+                             [("alloca- `Int' peekIntConv*"),+                              ("alloca- `Int' peekIntConv*"),+                              ("alloca- `Int' peekIntConv*"),+                              ("alloca- `Int' peekIntConv*")]++                )+               parsedArgs+              )+            )+           )+           (addOutMarshaller (fst returnType))+           (intercalate+             " -> "+             ((map+               (+                \a -> case a of+                        StandAlone arg -> (toHaskellType . snd . snd) $ arg+                        Position _ _ -> "Position"+                        ByX _ -> "ByX"+                        ByY _ -> "ByY"+                        ByXY _ _ -> "ByXY"+                        Rectangle _ _ _ _ -> "Rectangle"+                        Style _ -> "LineStyle"+                        RGB _ _ _ -> "RGB"+                        ReturnSize _ _ -> ""+                        ReturnRectangle _ _ _ _ -> ""+               )+               parsedArgs) +++              [" IO (" +++               (intercalate+                ","+                (if (fst returnType == "()")+                 then allocatedReturn+                 else [(fst returnType)] ++ allocatedReturn)+               ) +++               ")"+              ]+             )+            )+           functionName+           ((intercalate " " (map+                                 (+                                  \a -> case a of+                                          StandAlone arg -> (cppNameToHaskellName . fst) arg+                                          Position _ _ -> "(Position (X x_pos') (Y y_pos'))"+                                          ByX _ -> "(ByX by_x')"+                                          ByY _ -> "(ByY by_y')"+                                          ByXY _ _ -> "(ByXY by_x' by_y')"+                                          RGB _ _ _ -> "(r', g' , b')"+                                          Style _ -> "style"+                                          ReturnSize _ _ -> ""+                                          ReturnRectangle _ _ _ _ -> ""+                                          Rectangle x y w h -> "rectangle"+                                 )+                                 parsedArgs))+            ++ " = "+            ++ (concat (map+                        (\a -> case a of+                                 Rectangle _ _ _ _ -> "let (x_pos', y_pos', width', height') = fromRectangle rectangle in "+                                 _ -> ""+                        )+                        parsedArgs))+            ++ (concat (map haskellFunction haskellArgs))+            ++ (name ++ "'") ++ " "+            ++ (intercalate " " (map+                                 (+                                  \hArg -> case hArg of+                                             StandAlone arg ->+                                                 if ((fst . snd $ arg) == "Ptr ()")+                                                 then (nameToPtrName (fst arg))+                                                 else (cppNameToHaskellName (fst arg))+                                             ByX _ -> "by_x'"+                                             ByY _ -> "by_y'"+                                             ByXY _ _ -> "by_x' by_y'"+                                             Position _ _ -> "x_pos' y_pos'"+                                             Style _ -> ""+                                             RGB _ _ _ -> "r' g' b'"+                                             ReturnSize _ _ -> ""+                                             ReturnRectangle _ _ _ _ -> ""+                                             Rectangle _ _ _ _ -> "x_pos' y_pos' width' height'"+                                 )+                                 parsedArgs+                                )+               )+            ++ (+                if hasAllocated+                then+                    let allocatedArgs =+                            map (\a -> case a of+                                         "Rectangle" -> ("rectangle'", "toRectangle")+                                         "Size" -> ("size'", "toSize")+                                         _ -> ("","")+                                )+                            allocatedReturn+                    in+                    if (fst returnType == "()")+                    then ">>= \\(" ++ (intercalate "," (map fst allocatedArgs)) ++ ") -> return $ (" ++ (intercalate "," (map (\a -> (snd a) ++ " " ++ (fst a)) allocatedArgs)) ++ ")"+                    else ">>= \\(result, " ++ (intercalate "," (map fst allocatedArgs)) ++ ") -> return $ (result, " ++ (intercalate "," (map (\a -> (snd a) ++ " " ++ (fst a)) allocatedArgs)) ++ ")"+                else ""+               )+           )++++inMarshallMap =+    [+     ("Boxtype", "cFromEnum")+    ,("Labeltype", "cFromEnum")+    ,("AlignType", "cFromEnum")+    ,("Color", "cFromColor")+    ,("CUInt", "id")+    ,("FlShortcut", "id")+    ,("When", "cFromEnum")+    ,("Mode", "cFromEnum")+    ,("Cursor", "cFromEnum")+    ,("LineStyle", "cFromEnum")+    ,("Font", "cFromFont")+    ,("FontAttribute", "cFromFontAttribute")+    ,("Fontsize", "cFromFontsize")+    ]+outMarshallMap =+    [+     ("Boxtype", "cToEnum")+    ,("Labeltype", "cToEnum")+    ,("Color", "cToColor")+    ,("Font", "cToFont")+    ,("FontAttribute", "cToFontAttribute")+    ,("Fontsize", "cToFontsize")+    ,("When", "cToEnum")+    ,("FlShortcut", "id")+    ,("AlignType", "cToEnum")+    ,("Mode", "cToEnum")+    ,("Cursor", "cToEnum")+    ,("LineStyle", "cToEnum")+    ,("Region", "unsafeToObject")+    ]+simpleTypeMap =+    [+     ("void", "()")+    ,("int", "Int")+    ,("void*", "Ptr ()")+    ,("double", "Double")+    ,("int*", "Ptr CInt")+    ,("char*", "String")+    ,("const char*", "String")+    ,("char* const*", "String")+    ,("const char* const*", "String")+    ,("float", "Float")+    ,("uchar", "Word8")+    ,("float*", "Ptr CFloat")+    ,("unsigned", "Int")+    ,("unsigned int", "Int")+    ,("fl_Region", "Ptr ()")+    ,("Fl_Boxtype", "Boxtype")+    ,("Fl_Mode", "Mode")+    ,("fl_Widget", "Ptr ()")+    ,("fl_Text_Buffer", "Ptr ()")+    ,("fl_Text_Selection", "Ptr ()")+    ,("fl_Text_Display"  , "Ptr ()")+    ,("fl_Text_Editor"  , "Ptr ()")+    ,("fl_Tree_Prefs", "Ptr ()")+    ,("fl_Tree_Item", "Ptr ()")+    ,("fl_Tree", "Ptr ()")+    ,("fl_Browser", "Ptr ()")+    ,("fl_Table", "Ptr ()")+    ,("fl_Adjuster", "Ptr ()")+    ,("fl_Timer", "Ptr ()")+    ,("fl_Progress", "Ptr ()")+    ,("fl_Input", "Ptr ()")+    ,("fl_Positioner", "Ptr ()")+    ,("fl_Counter", "Ptr ()")+    ,("fl_Scrollbar", "Ptr ()")+    ,("fl_Dial", "Ptr ()")+    ,("fl_Value_Slider", "Ptr ()")+    ,("fl_Value_Input", "Ptr ()")+    ,("fl_RGB_Image", "Ptr ()")+    ,("fl_Pixmap", "Ptr ()")+    ,("fl_Copy_Surface", "Ptr ()")+    ,("fl_Window", "Ptr ()")+    ,("fl_Overlay_Window", "Ptr ()")+    ,("fl_Group", "Ptr ()")+    ,("fl_Button", "Ptr ()")+    ,("fl_Valuator", "Ptr ()")+    ,("fl_Slider", "Ptr ()")+    ,("fl_Menu_Item", "Ptr ()")+    ,("fl_Menu_", "Ptr ()")+    ,("fl_Image", "Ptr ()")+    ,("fl_Image_Surface", "Ptr ()")+    ,("fl_Bitmap", "Ptr ()")+    ,("Fl_Color", "Color")+    ,("Fl_Font", "Font")+    ,("Fl_Fontsize", "Fontsize")+    ,("Fl_FontAttribute", "FontAttribute")+    ,("Fl_Align", "AlignType")+    ,("Fl_Cursor", "Cursor")+    ,("Fl_Shortcut", "FlShortcut")+    ,("Fl_Labeltype", "Labeltype")+    ,("fl_Label_Draw_F*", "FunPtr LabelDrawFPrim")+    ,("fl_Label_Measure_F*", "FunPtr LabelMeasureFPrim")+    ,("fl_Box_Draw_F*", "FunPtr BoxDrawFPrim")+    ,("fl_Awake_Handler", "FunPtr AwakeHandlerPrim")+    ,("fl_Event_Handler", "FunPtr EventHandlerPrim")+    ,("fl_Timeout_Handler", "FunPtr TimeoutHandlerPrim")+    ,("fl_Abort_Handler", "FunPtr AbortHandlerPrim")+    ,("fl_Args_Handler", "FunPtr ArgsHandlerPrim")+    ,("fl_Atclose_Handler", "FunPtr AtCloseHandlerPrim")+    ,("fl_Atclose_Handler*", "Ptr (FunPtr AtCloseHandlerPrim)")+    ,("fl_Event_Dispatch*", "Ptr (FunPtr EventDispatchPrim)")+    ,("fl_Event_Dispatch",  "FunPtr EventDispatchPrim")+    ,("fl_FD_Handler", "FunPtr FDHandlerPrim")+    ,("fl_Idle_Handler", "FunPtr IdleHandlerPrim")+    ,("fl_Old_Idle_Handler", "FunPtr OldIdleHandlerPrim")+    ,("fl_Event_Dispatch*", "Ptr (FunPtr EventDispatchPrim)")+    ,("Fl_Shortcut", "CUInt")+    ,("fl_Atclose_Handler*", "Ptr (FunPtr AtCloseHandler)")+    ,("fl_When", "When")+    ,("fl_Gl_Window", "Ptr ()")+    ]+haskellEquivalent =+    [+     ("fl_Region"         , "Region"),+     ("fl_Widget"         , "Widget"),+     ("fl_Text_Buffer"    , "TextBuffer"),+     ("fl_Text_Selection" , "TextSelection"),+     ("fl_Text_Display"   , "TextDisplay"),+     ("fl_Text_Editor"    , "TextEditor"),+     ("fl_Tree_Prefs"     , "TreePrefs"),+     ("fl_Tree_Item"      , "TreeItem"),+     ("fl_Tree"           , "Tree"),+     ("fl_Browser"        , "Browser"),+     ("fl_Table"          , "Table"),+     ("fl_Adjuster"       , "Adjuster"),+     ("fl_Timer"          , "Timer"),+     ("fl_Progress"       , "Progress"),+     ("fl_Input"          , "Input"),+     ("fl_Positioner"     , "Positioner"),+     ("fl_Counter"        , "Counter"),+     ("fl_Scrollbar"      , "Scrollbar"),+     ("fl_Dial"           , "Dial"),+     ("fl_Value_Slider"   , "ValueSlider"),+     ("fl_Value_Input"    , "ValueInput"),+     ("fl_RGB_Image"      , "RGBImage"),+     ("fl_Pixmap"         , "Pixmap"),+     ("fl_Copy_Surface"   , "CopySurface"),+     ("fl_Window"         , "Window"),+     ("fl_Overlay_Window" , "OverlayWindow"),+     ("fl_Group"          , "Group"),+     ("fl_Gl_Window"      , "GlWindow"),+     ("fl_Button"         , "Button"),+     ("fl_Valuator"       , "Valuator"),+     ("fl_Slider"         , "Slider"),+     ("fl_Image"          , "Image"),+     ("fl_Image_Surface"  , "ImageSurface"),+     ("fl_Menu_Item"      , "MenuItem"),+     ("fl_Menu_"          , "MenuPrim"),+     ("fl_Bitmap"         , "Bitmap")+    ]+upcase = map toUpper+makeArgument className argType argName =+    case ((upcase argType == upcase className), (isPrefixOf "fl_" argType)) of+      (True, True) -> Argument (Self argType) argName ("F" ++ (tail argType))+      (True, False) -> Argument (Self argType) argName argType+      (False, True) -> Argument (Normal argType) argName ("F" ++ (tail argType))+      (False, False) -> Argument (Normal argType) argName argType++parseArgList = (many (letter <|> digit <|> char '_' <|> char '*' <|> char '&')) `sepBy` (skipMany1 space) >>= return . filter (/= "")++parseName = (many (letter <|> digit)) `sepBy` (char '_')++extractClassName' functionName@(x:xs) accum | (x == "Fl") = extractClassName' xs x+extractClassName' functionName@(x1:x2:xs) accum | (x1 == "") && (x2 /= "") = accum ++ x1 ++ "_"+extractClassName' functionName@(x:xs) accum | (x == "") && (null xs) = accum+extractClassName' functionName@(x:xs) accum | (x == "")  = extractClassName' xs (accum ++ "_")+extractClassName' functionName@(x:xs) accum | (x /= "") && (isUpper(head x))= extractClassName' xs (accum ++ "_" ++ x)+extractClassName' functionName@(x:xs) accum = extractClassName' xs accum+extractClassName' [] accum = accum++extractClassName functionName = extractClassName' functionName ""++parseTypeName = do string exportMacro+                   char '('+                   spaces+                   typeString <- parseArgList >>= return . intercalate " "+                   spaces+                   char ','+                   spaces+                   (className, functionName) <- parseName >>=+                                                return . (\f -> (extractClassName f,+                                                                 intercalate "_" f))+                   spaces+                   char ')'+                   let realName =  if ((not $ isInfixOf "New" functionName) &&+                                        isPrefixOf className functionName)+                                   then+                                       if (length className == 0)+                                       then functionName+                                       else drop (length $ className ++ "_") functionName+                                   else functionName+                   return $ FunctionName realName+                                         className+                                         (makeArgument className typeString functionName)+inBlock start end accumulatedInput level levelp p parsed =+    do { try (char start);+         inBlock' start end accumulatedInput level levelp p parsed+       }++inBlock' start end accumulatedInput level levelp p parsed =+      do { try (char end);+           if (levelp level)+           then+               case parse p "" accumulatedInput of+                 Right parsed -> return (Just parsed)+                 Left err -> return Nothing+           else return Nothing+         }+  <|> do { x <- inBlock start end accumulatedInput (level + 1) levelp p parsed;+           inBlock' start end "" level levelp p x+         }+  <|> do { x <- if (levelp level)+                then many (noneOf [start,end])+                else skipMany (noneOf [start,end]) >> return "";+           inBlock' start end (accumulatedInput ++ x) level levelp p parsed+         }++parseImplementation = do+  functionSignature <- parseTypeName+  spaces+  arguments <- parseArguments (className functionSignature)+  spaces+  actualFunctionName <- case functionSignature of+                          FunctionName _ _ (Argument (Self _) _ _) ->+                              do {skipFunctionBody; return Nothing}+                          FunctionName _ _ (Argument (Normal _) _ _) ->+                              (inBlock '{' '}' "" 0 (== 0) grabFlCall Nothing)+                             <|>+                             do { skipFunctionBody; return Nothing}+  case actualFunctionName of+    Just n -> return (arguments,functionSignature {realName = n})+    Nothing -> return (arguments, functionSignature)+  where+    skipFunctionBody = inBlock '{' '}' "" 0 (== 0) (many anyChar) Nothing+    grabFlCall = do+      manyTill (noneOf "{}") (string "static_cast");+      manyTill (noneOf "\n") (string "->")+      name <- manyTill (noneOf "{}") (try (string "("))+      return name++ignoreUntil e p = scan+    where+      scan = try (do {x <- e; return x})+             <|>+             do {p; x <- scan; return x}++parseCPP = do+  manyTill anyChar (try (string "EXPORT {"))+  impls <- many (try (ignoreUntil parseImplementation (noneOf "{}")))+  manyTill anyChar (char '}')+  return impls++parseArguments className = do char '('+                              spaces+                              arguments <- do+                                args <- parseArgList `sepBy` (char ',')+                                if (not (null (head args)))+                                then return $ map (uncurry (makeArgument className) . extractTypeName) args+                                else return []+                              spaces+                              char ')'+                              return arguments++parseTypeSignature = do spaces+                        typeName <- parseTypeName+                        arguments <- parseArguments (className typeName)+                        char ';'+                        spaces+                        return $ CPP (typeName, arguments)++replaceSquareBrackets = map translateSquareBracket+                        where+                          translateSquareBracket '[' = '('+                          translateSquareBracket ']' = ')'+                          translateSquareBracket x = x++parseAndProcess parser input f =+    case parse parser "" input of+      Right output -> f output+      Left err -> error (show err)+data ParseOutputType = Haskell (Maybe String, String, String,(String,String),[(String, (String,String))]) |+                       CPP (FunctionName, [Argument]) deriving Show++main = do (argType:arg:args) <- getArgs+          case argType of+            "string" ->+                parseAndProcess parseTypeSignature arg (putStrLn . outputDefaultImplementation)+            "" ->+                parseAndProcess parseTypeSignature arg (printHaskell . (toHaskell Nothing))+            prefix ->+                parseAndProcess parseTypeSignature arg (printHaskell . (toHaskell (Just prefix)))+testHaskellName input =+                parseAndProcess parseTypeSignature input (printHaskell . (toHaskell (Just "test")))+generateFunctionPointers :: [([Argument],FunctionName)] -> String+generateFunctionPointers impls = printf "struct blah {\n%s\n};" (intercalate ";\n" (map generateFunctionPointer impls))+generateFunctionPointer :: ([Argument], FunctionName) -> String+generateFunctionPointer (args, FunctionName _ _ name@(Argument argType argName argRealType)) = printf "%s (*%s)(%s)" (getArgumentType argType) ("f" ++ (tail argName)) (intercalate "," (map (ppArgument " ") args))+generateDerivedMethod :: ([Argument], FunctionName) -> String+generateDerivedMethod impl =+          let returnType = getArgumentType (argumentType . argument . snd $ impl)+              cppReturnType = if (isPrefixOf "fl" returnType)+                              then "F" ++ (tail returnType) ++ "*"+                              else returnType+              functionName = realName (snd impl)+              cppClass = className $ snd impl+              makeArgList prettyPrinter args = intercalate "," (map prettyPrinter args)+              cppArgList prettyPrinter = makeArgList prettyPrinter (case (fst impl) of+                                                                      ((Argument (Self _) _ _):args) -> args+                                                                      _ -> (fst impl))+              cppArgListSignature = cppArgList (ppCPPArgument " ")+              cppArgListPassing = cppArgList argumentName+              functionPointerArgList = case (fst impl) of+                                         ((Argument (Self s) _ _):args) ->+                                             case (makeArgList (\arg -> if (needsCasting arg)+                                                                        then backCast arg (argumentName arg)+                                                                        else (argumentName arg))+                                                   args) of+                                               as@(x:xs) -> "(" ++ s ++ ") this," ++ as+                                               _ ->"(" ++ s ++ ") this"+                                         _ -> makeArgList argumentName (fst impl)+              functionPointer = "f" ++ (tail (argumentName . argument . snd $ impl))+              callFunctionPointer :: String+              callFunctionPointer = printf "this->overriddenFuncs->%s(%s)" functionPointer functionPointerArgList+              returnResult :: String+              returnResult = if (returnType /= "void")+                             then+                                 printf "%s result = %s;\n return %s;"+                                        returnType+                                        callFunctionPointer+                                        (if (needsCasting (argument . snd $ impl))+                                         then cast (argument . snd $ impl) "result"+                                         else "result")+                             else+                                 printf "%s;" callFunctionPointer+              in+                printf "%s %s::%s(%s){\n if (this->overriddenFuncs->%s != NULL) {\n %s \n}\nelse {\n %s::%s(%s);\n}\n}\n" cppReturnType (cppClass ++ "Derived") functionName cppArgListSignature functionPointer returnResult cppClass functionName cppArgListPassing++printImplementation sig =  case parse parseTypeSignature "" sig of+                             Right output ->  outputDefaultImplementation output+                             Left err -> show err
+ src/C2HS.hs view
@@ -0,0 +1,238 @@+--  C->Haskell Compiler: Marshalling library+--+--  Copyright (c) [1999...2005] Manuel M T Chakravarty+--+--  Redistribution and use in source and binary forms, with or without+--  modification, are permitted provided that the following conditions are met:+-- +--  1. Redistributions of source code must retain the above copyright notice,+--     this list of conditions and the following disclaimer. +--  2. Redistributions in binary form must reproduce the above copyright+--     notice, this list of conditions and the following disclaimer in the+--     documentation and/or other materials provided with the distribution. +--  3. The name of the author may not be used to endorse or promote products+--     derived from this software without specific prior written permission. +--+--  THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR+--  IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES+--  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN+--  NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +--  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED+--  TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR+--  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF+--  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING+--  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS+--  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.+--+--- Description ---------------------------------------------------------------+--+--  Language: Haskell 98+--+--  This module provides the marshaling routines for Haskell files produced by +--  C->Haskell for binding to C library interfaces.  It exports all of the+--  low-level FFI (language-independent plus the C-specific parts) together+--  with the C->HS-specific higher-level marshalling routines.+--++module C2HS (++  -- * Re-export the language-independent component of the FFI +  module Foreign,++  -- * Re-export the C language component of the FFI+  module Foreign.C,++  -- * Composite marshalling functions+  withCStringLenIntConv, peekCStringLenIntConv, withIntConv, withFloatConv,+  peekIntConv, peekFloatConv, withBool, peekBool, withEnum, peekEnum,++  -- * Conditional results using 'Maybe'+  nothingIf, nothingIfNull,++  -- * Bit masks+  combineBitMasks, containsBitMask, extractBitMasks,++  -- * Conversion between C and Haskell types+  cIntConv, cFloatConv, cToBool, cFromBool, cToEnum, cFromEnum+) where +++import Foreign+import Foreign.C++import Control.Monad (liftM)+++-- Composite marshalling functions+-- -------------------------------++-- Strings with explicit length+--+withCStringLenIntConv :: Num n => String -> ((CString, n) -> IO a) -> IO a+withCStringLenIntConv s f    = withCStringLen s $ \(p, n) -> f (p, fromIntegral n)++peekCStringLenIntConv :: Integral n => (CString, n) -> IO String+peekCStringLenIntConv (s, n) = peekCStringLen (s, fromIntegral n)++-- Marshalling of numerals+--++withIntConv   :: (Storable b, Integral a, Integral b) +              => a -> (Ptr b -> IO c) -> IO c+withIntConv    = with . fromIntegral++withFloatConv :: (Storable b, RealFloat a, RealFloat b) +              => a -> (Ptr b -> IO c) -> IO c+withFloatConv  = with . realToFrac++peekIntConv   :: (Storable a, Integral a, Integral b) +              => Ptr a -> IO b+peekIntConv    = liftM fromIntegral . peek++peekFloatConv :: (Storable a, RealFloat a, RealFloat b) +              => Ptr a -> IO b+peekFloatConv  = liftM realToFrac . peek+++-- Everything else below is deprecated.+-- These functions are not used by code generated by c2hs.++{-# DEPRECATED withBool        "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED peekBool        "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED withEnum        "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED peekEnum        "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED nothingIf       "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED nothingIfNull   "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED combineBitMasks "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED containsBitMask "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED extractBitMasks "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED cIntConv        "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED cFloatConv      "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED cFromBool       "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED cToBool         "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED cToEnum         "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+{-# DEPRECATED cFromEnum       "The C2HS module will soon stop providing unnecessary\nutility functions. Please use standard FFI library functions instead." #-}+++-- Passing Booleans by reference+--++withBool :: (Integral a, Storable a) => Bool -> (Ptr a -> IO b) -> IO b+withBool  = with . fromBool++peekBool :: (Integral a, Storable a) => Ptr a -> IO Bool+peekBool  = liftM toBool . peek+++-- Passing enums by reference+--++withEnum :: (Enum a, Integral b, Storable b) => a -> (Ptr b -> IO c) -> IO c+withEnum  = with . cFromEnum++peekEnum :: (Enum a, Integral b, Storable b) => Ptr b -> IO a+peekEnum  = liftM cToEnum . peek+++-- Storing of 'Maybe' values+-- -------------------------++--TODO: kill off this orphan instance!++instance Storable a => Storable (Maybe a) where+  sizeOf    _ = sizeOf    (undefined :: Ptr ())+  alignment _ = alignment (undefined :: Ptr ())++  peek p = do+             ptr <- peek (castPtr p)+             if ptr == nullPtr+               then return Nothing+               else liftM Just $ peek ptr++  poke p v = do+               ptr <- case v of+                        Nothing -> return nullPtr+                        Just v' -> new v'+               poke (castPtr p) ptr+++-- Conditional results using 'Maybe'+-- ---------------------------------++-- Wrap the result into a 'Maybe' type.+--+-- * the predicate determines when the result is considered to be non-existing,+--   ie, it is represented by `Nothing'+--+-- * the second argument allows to map a result wrapped into `Just' to some+--   other domain+--+nothingIf       :: (a -> Bool) -> (a -> b) -> a -> Maybe b+nothingIf p f x  = if p x then Nothing else Just $ f x++-- |Instance for special casing null pointers.+--+nothingIfNull :: (Ptr a -> b) -> Ptr a -> Maybe b+nothingIfNull  = nothingIf (== nullPtr)+++-- Support for bit masks+-- ---------------------++-- Given a list of enumeration values that represent bit masks, combine these+-- masks using bitwise disjunction.+--+combineBitMasks :: (Num b, Enum a, Bits b) => [a] -> b+combineBitMasks = foldl (.|.) 0 . map (fromIntegral . fromEnum)++-- Tests whether the given bit mask is contained in the given bit pattern+-- (i.e., all bits set in the mask are also set in the pattern).+--+containsBitMask :: (Num a, Bits a, Enum b) => a -> b -> Bool+bits `containsBitMask` bm = let bm' = fromIntegral . fromEnum $ bm+                            in+                            bm' .&. bits == bm'++-- |Given a bit pattern, yield all bit masks that it contains.+--+-- * This does *not* attempt to compute a minimal set of bit masks that when+--   combined yield the bit pattern, instead all contained bit masks are+--   produced.+--+extractBitMasks :: (Num a, Bits a, Enum b, Bounded b) => a -> [b]+extractBitMasks bits = +  [bm | bm <- [minBound..maxBound], bits `containsBitMask` bm]+++-- Conversion routines+-- -------------------++-- |Integral conversion+--+cIntConv :: (Integral a, Integral b) => a -> b+cIntConv  = fromIntegral++-- |Floating conversion+--+cFloatConv :: (RealFloat a, RealFloat b) => a -> b+cFloatConv  = realToFrac++-- |Obtain C value from Haskell 'Bool'.+--+cFromBool :: Num a => Bool -> a+cFromBool  = fromBool++-- |Obtain Haskell 'Bool' from C value.+--+cToBool :: (Eq a, Num a) => a -> Bool+cToBool  = toBool++-- |Convert a C enumeration to Haskell.+--+cToEnum :: (Integral i, Enum e) => i -> e+cToEnum  = toEnum . fromIntegral++-- |Convert a Haskell enumeration to C.+--+cFromEnum :: (Enum e, Integral i) => e -> i+cFromEnum  = fromIntegral . fromEnum
+ src/Examples/arc.hs view
@@ -0,0 +1,99 @@+module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.FLTKHS+import Data.IORef+import Control.Monad++name :: [String]+name = ["X", "Y", "R", "start", "end", "rotate"]++drawArc :: IORef [Double] -> Ref Widget -> IO ()+drawArc myArgsRef widget = do+  myArgs <- readIORef myArgsRef+  rectangle' <- getRectangle widget+  let (x',y',w',h') = fromRectangle rectangle'+  flcPushClip rectangle'+  flcSetColor dark3Color+  flcRectf rectangle'+  flcPushMatrix+  if (myArgs !! 5 > 0)+    then do+    flcTranslate+      (ByXY+       (ByX ((fromIntegral x') + (fromIntegral w')/2))+       (ByY ((fromIntegral y') + (fromIntegral h')/2)))+    flcRotate (myArgs !! 5)+    flcTranslate+      (ByXY+       (ByX (-((fromIntegral x') + (fromIntegral w')/2)))+       (ByY (-((fromIntegral y') + (fromIntegral h')/2))))+    else return ()+  flcSetColor whiteColor+  flcTranslate (ByXY (ByX (fromIntegral x')) (ByY (fromIntegral $ y')))+  flcBeginComplexPolygon+  flcArcByRadius+    (ByXY (ByX $ myArgs !! 0) (ByY $ myArgs !! 1))+    (myArgs !! 2)+    (myArgs !! 3)+    (myArgs !! 4)+  flcGap+  flcArcByRadius (ByXY (ByX 140) (ByY 140)) 20 0 (-360)+  flcEndComplexPolygon+  flcSetColor redColor+  flcBeginLine+  flcArcByRadius+    (ByXY (ByX $ myArgs !! 0) (ByY $ myArgs !! 1))+    (myArgs !! 2)+    (myArgs !! 3)+    (myArgs !! 4)+  flcEndLine+  flcPopMatrix+  flcPopClip++setIndex :: Int -> [a] -> a -> [a]+setIndex idx' xs x =+  map+   (+    \(i,e) -> if (i == idx')+                 then x+                 else e+   )+   (zip [0..] xs)++sliderCb :: Ref Widget -> Int -> IORef [Double] -> Ref HorValueSlider -> IO ()+sliderCb widget sliderNumber myArgsRef slider' = do+  v' <- getValue slider'+  modifyIORef myArgsRef (\myArgs' -> setIndex sliderNumber myArgs' v')+  redraw widget++main :: IO ()+main = do+  myArgs' <- newIORef [140, 140, 50, 0, 360,0]+  window' <- doubleWindowNew (Size (Width 300) (Height 500)) Nothing Nothing+  begin window'+  widget <- widgetCustom+             (Rectangle+               (Position (X 10) (Y 10))+               (Size (Width 280) (Height 280)))+             Nothing+             defaultCustomWidgetFuncs {+                 drawCustom = Just (drawArc myArgs')+               }+  forM_ (take 6 (zip (iterate ((+) 25) 300) [0..])) $ \(y, sliderNumber') -> do+    s <- horValueSliderNew+         (toRectangle $ (50, y, 240, 25))+         (Just $ name !! sliderNumber')+    case sliderNumber' of+     sliderNumber'' | sliderNumber'' < 3 -> setMinimum s 0 >> setMaximum s 300+        | sliderNumber'' == 5 -> setMinimum s 0 >> setMaximum s 360+     _ -> setMinimum s (-360) >> setMaximum s 360+    setStep s 1+    _ <- readIORef myArgs' >>= \args' -> setValue s (args' !! sliderNumber')+    setAlign s alignLeft+    setCallback s (sliderCb widget sliderNumber' myArgs')+  end window'+  showWidget window'+  _ <- FL.run+  return ()
+ src/Examples/bitmap.hs view
@@ -0,0 +1,151 @@+module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.FLTKHS+import Data.IORef+import Control.Monad+import qualified Data.ByteString as B++sorceressWidth :: Int+sorceressWidth = 75++sorceressHeight :: Int+sorceressHeight = 75++sorceressBits :: B.ByteString+sorceressBits = B.pack [+   0xfc, 0x7e, 0x40, 0x20, 0x90, 0x00, 0x07, 0x80, 0x23, 0x00, 0x00, 0xc6,+   0xc1, 0x41, 0x98, 0xb8, 0x01, 0x07, 0x66, 0x00, 0x15, 0x9f, 0x03, 0x47,+   0x8c, 0xc6, 0xdc, 0x7b, 0xcc, 0x00, 0xb0, 0x71, 0x0e, 0x4d, 0x06, 0x66,+   0x73, 0x8e, 0x8f, 0x01, 0x18, 0xc4, 0x39, 0x4b, 0x02, 0x23, 0x0c, 0x04,+   0x1e, 0x03, 0x0c, 0x08, 0xc7, 0xef, 0x08, 0x30, 0x06, 0x07, 0x1c, 0x02,+   0x06, 0x30, 0x18, 0xae, 0xc8, 0x98, 0x3f, 0x78, 0x20, 0x06, 0x02, 0x20,+   0x60, 0xa0, 0xc4, 0x1d, 0xc0, 0xff, 0x41, 0x04, 0xfa, 0x63, 0x80, 0xa1,+   0xa4, 0x3d, 0x00, 0x84, 0xbf, 0x04, 0x0f, 0x06, 0xfc, 0xa1, 0x34, 0x6b,+   0x01, 0x1c, 0xc9, 0x05, 0x06, 0xc7, 0x06, 0xbe, 0x11, 0x1e, 0x43, 0x30,+   0x91, 0x05, 0xc3, 0x61, 0x02, 0x30, 0x1b, 0x30, 0xcc, 0x20, 0x11, 0x00,+   0xc1, 0x3c, 0x03, 0x20, 0x0a, 0x00, 0xe8, 0x60, 0x21, 0x00, 0x61, 0x1b,+   0xc1, 0x63, 0x08, 0xf0, 0xc6, 0xc7, 0x21, 0x03, 0xf8, 0x08, 0xe1, 0xcf,+   0x0a, 0xfc, 0x4d, 0x99, 0x43, 0x07, 0x3c, 0x0c, 0xf1, 0x9f, 0x0b, 0xfc,+   0x5b, 0x81, 0x47, 0x02, 0x16, 0x04, 0x31, 0x1c, 0x0b, 0x1f, 0x17, 0x89,+   0x4d, 0x06, 0x1a, 0x04, 0x31, 0x38, 0x02, 0x07, 0x56, 0x89, 0x49, 0x04,+   0x0b, 0x04, 0xb1, 0x72, 0x82, 0xa1, 0x54, 0x9a, 0x49, 0x04, 0x1d, 0x66,+   0x50, 0xe7, 0xc2, 0xf0, 0x54, 0x9a, 0x58, 0x04, 0x0d, 0x62, 0xc1, 0x1f,+   0x44, 0xfc, 0x51, 0x90, 0x90, 0x04, 0x86, 0x63, 0xe0, 0x74, 0x04, 0xef,+   0x31, 0x1a, 0x91, 0x00, 0x02, 0xe2, 0xc1, 0xfd, 0x84, 0xf9, 0x30, 0x0a,+   0x91, 0x00, 0x82, 0xa9, 0xc0, 0xb9, 0x84, 0xf9, 0x31, 0x16, 0x81, 0x00,+   0x42, 0xa9, 0xdb, 0x7f, 0x0c, 0xff, 0x1c, 0x16, 0x11, 0x00, 0x02, 0x28,+   0x0b, 0x07, 0x08, 0x60, 0x1c, 0x02, 0x91, 0x00, 0x46, 0x29, 0x0e, 0x00,+   0x00, 0x00, 0x10, 0x16, 0x11, 0x02, 0x06, 0x29, 0x04, 0x00, 0x00, 0x00,+   0x10, 0x16, 0x91, 0x06, 0xa6, 0x2a, 0x04, 0x00, 0x00, 0x00, 0x18, 0x24,+   0x91, 0x04, 0x86, 0x2a, 0x04, 0x00, 0x00, 0x00, 0x18, 0x27, 0x93, 0x04,+   0x96, 0x4a, 0x04, 0x00, 0x00, 0x00, 0x04, 0x02, 0x91, 0x04, 0x86, 0x4a,+   0x0c, 0x00, 0x00, 0x00, 0x1e, 0x23, 0x93, 0x04, 0x56, 0x88, 0x08, 0x00,+   0x00, 0x00, 0x90, 0x21, 0x93, 0x04, 0x52, 0x0a, 0x09, 0x80, 0x01, 0x00,+   0xd0, 0x21, 0x95, 0x04, 0x57, 0x0a, 0x0f, 0x80, 0x27, 0x00, 0xd8, 0x20,+   0x9d, 0x04, 0x5d, 0x08, 0x1c, 0x80, 0x67, 0x00, 0xe4, 0x01, 0x85, 0x04,+   0x79, 0x8a, 0x3f, 0x00, 0x00, 0x00, 0xf4, 0x11, 0x85, 0x06, 0x39, 0x08,+   0x7d, 0x00, 0x00, 0x18, 0xb7, 0x10, 0x81, 0x03, 0x29, 0x12, 0xcb, 0x00,+   0x7e, 0x30, 0x28, 0x00, 0x85, 0x03, 0x29, 0x10, 0xbe, 0x81, 0xff, 0x27,+   0x0c, 0x10, 0x85, 0x03, 0x29, 0x32, 0xfa, 0xc1, 0xff, 0x27, 0x94, 0x11,+   0x85, 0x03, 0x28, 0x20, 0x6c, 0xe1, 0xff, 0x07, 0x0c, 0x01, 0x85, 0x01,+   0x28, 0x62, 0x5c, 0xe3, 0x8f, 0x03, 0x4e, 0x91, 0x80, 0x05, 0x39, 0x40,+   0xf4, 0xc2, 0xff, 0x00, 0x9f, 0x91, 0x84, 0x05, 0x31, 0xc6, 0xe8, 0x07,+   0x7f, 0x80, 0xcd, 0x00, 0xc4, 0x04, 0x31, 0x06, 0xc9, 0x0e, 0x00, 0xc0,+   0x48, 0x88, 0xe0, 0x04, 0x79, 0x04, 0xdb, 0x12, 0x00, 0x30, 0x0c, 0xc8,+   0xe4, 0x04, 0x6d, 0x06, 0xb6, 0x23, 0x00, 0x18, 0x1c, 0xc0, 0x84, 0x04,+   0x25, 0x0c, 0xff, 0xc2, 0x00, 0x4e, 0x06, 0xb0, 0x80, 0x04, 0x3f, 0x8a,+   0xb3, 0x83, 0xff, 0xc3, 0x03, 0x91, 0x84, 0x04, 0x2e, 0xd8, 0x0f, 0x3f,+   0x00, 0x00, 0x5f, 0x83, 0x84, 0x04, 0x2a, 0x70, 0xfd, 0x7f, 0x00, 0x00,+   0xc8, 0xc0, 0x84, 0x04, 0x4b, 0xe2, 0x2f, 0x01, 0x00, 0x08, 0x58, 0x60,+   0x80, 0x04, 0x5b, 0x82, 0xff, 0x01, 0x00, 0x08, 0xd0, 0xa0, 0x84, 0x04,+   0x72, 0x80, 0xe5, 0x00, 0x00, 0x08, 0xd2, 0x20, 0x44, 0x04, 0xca, 0x02,+   0xff, 0x00, 0x00, 0x08, 0xde, 0xa0, 0x44, 0x04, 0x82, 0x02, 0x6d, 0x00,+   0x00, 0x08, 0xf6, 0xb0, 0x40, 0x02, 0x82, 0x07, 0x3f, 0x00, 0x00, 0x08,+   0x44, 0x58, 0x44, 0x02, 0x93, 0x3f, 0x1f, 0x00, 0x00, 0x30, 0x88, 0x4f,+   0x44, 0x03, 0x83, 0x23, 0x3e, 0x00, 0x00, 0x00, 0x18, 0x60, 0xe0, 0x07,+   0xe3, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x70, 0x70, 0xe4, 0x07, 0xc7, 0x1b,+   0xfe, 0x01, 0x00, 0x00, 0xe0, 0x3c, 0xe4, 0x07, 0xc7, 0xe3, 0xfe, 0x1f,+   0x00, 0x00, 0xff, 0x1f, 0xfc, 0x07, 0xc7, 0x03, 0xf8, 0x33, 0x00, 0xc0,+   0xf0, 0x07, 0xff, 0x07, 0x87, 0x02, 0xfc, 0x43, 0x00, 0x60, 0xf0, 0xff,+   0xff, 0x07, 0x8f, 0x06, 0xbe, 0x87, 0x00, 0x30, 0xf8, 0xff, 0xff, 0x07,+   0x8f, 0x14, 0x9c, 0x8f, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x07, 0x9f, 0x8d,+   0x8a, 0x0f, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x07, 0xbf, 0x0b, 0x80, 0x1f,+   0x00, 0x00, 0xff, 0xff, 0xff, 0x07, 0x7f, 0x3a, 0x80, 0x3f, 0x00, 0x80,+   0xff, 0xff, 0xff, 0x07, 0xff, 0x20, 0xc0, 0x3f, 0x00, 0x80, 0xff, 0xff,+   0xff, 0x07, 0xff, 0x01, 0xe0, 0x7f, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x07,+   0xff, 0x0f, 0xf8, 0xff, 0x40, 0xe0, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff,+   0xff, 0xff, 0x40, 0xf0, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff,+   0x41, 0xf0, 0xff, 0xff, 0xff, 0x07+   ]++data ToggleButtons = ToggleButtons {+    leftb :: Ref ToggleButton,+    rightb :: Ref ToggleButton,+    topb :: Ref ToggleButton,+    bottomb :: Ref ToggleButton,+    insideb :: Ref ToggleButton,+    overb :: Ref ToggleButton,+    inactb :: Ref ToggleButton+  }++buttonCb :: IORef (ToggleButtons, Ref Button, Ref DoubleWindow) -> Ref ToggleButton -> IO ()+buttonCb state' _ =+  do+    (toggleButtons', b, win) <- readIORef state'+    i <- newIORef []+    let addIf :: (ToggleButtons -> Ref ToggleButton) -> AlignType -> IO ()+        addIf b' alignType' = do+          v' <- getValue (b' toggleButtons')+          when v' (modifyIORef i ((++) [alignType']))+    addIf leftb AlignTypeLeft+    addIf rightb AlignTypeRight+    addIf topb AlignTypeTop+    addIf bottomb AlignTypeBottom+    addIf insideb AlignTypeInside+    addIf overb AlignTypeTextOverImage+    readIORef i >>= setAlign b . Alignments+    inactbValue <- getValue (inactb toggleButtons')+    if inactbValue then deactivate b+      else activate b+    redraw win++main :: IO ()+main = do+  window <- doubleWindowNew (Size (Width 400) (Height 400)) Nothing Nothing+  begin window+  button <- buttonNew+              (Rectangle+                (Position (X 140) (Y 160))+                (Size (Width 120) (Height 120)))+              (Just "Bitmap")+  bitmap <- bitmapNew+             (BitmapHs+               sorceressBits+               (Size+                 (Width sorceressWidth)+                 (Height sorceressHeight)))+  setImage button bitmap+  leftb' <- toggleButtonNew (Rectangle (Position (X 25) (Y 50)) (Size (Width 50) (Height 25))) (Just "left")+  rightb' <- toggleButtonNew (Rectangle (Position (X 75) (Y 50)) (Size (Width 50) (Height 25))) (Just "right")+  topb' <- toggleButtonNew (Rectangle (Position (X 125) (Y 50)) (Size (Width 50) (Height 25))) (Just "top")+  bottomb' <- toggleButtonNew (Rectangle (Position (X 175) (Y 50)) (Size (Width 50) (Height 25))) (Just "bottom")+  insideb' <- toggleButtonNew (Rectangle (Position (X 225) (Y 50)) (Size (Width 50) (Height 25))) (Just "inside")+  overb' <- toggleButtonNew (Rectangle (Position (X 25) (Y 75)) (Size (Width 100) (Height 25))) (Just "text over")+  inactb' <- toggleButtonNew (Rectangle (Position (X 125) (Y 75)) (Size (Width 100) (Height 25))) (Just "inactive")+  state' <- newIORef ((ToggleButtons leftb' rightb' topb' bottomb' insideb' overb' inactb'),+                      button,+                      window)+  setCallback leftb' $ buttonCb state'+  setCallback rightb' $ buttonCb state'+  setCallback topb' $ buttonCb state'+  setCallback bottomb' $ buttonCb state'+  setCallback insideb' $ buttonCb state'+  setCallback overb' $ buttonCb state'+  setCallback inactb' $ buttonCb state'+  setResizable window window+  end window+  showWidget window+  _ <- FL.run+  return ()
+ src/Examples/boxtype.hs view
@@ -0,0 +1,98 @@+module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.FLTKHS+import Data.IORef+import Control.Monad++windowWidth :: Int+windowWidth = 200+rowHeight :: Int+rowHeight = 50+numRows :: Int+numRows = 14+bt :: IORef Int -> String -> Boxtype -> Bool -> IO ()+bt n label' boxtype' square' = do+  n' <- readIORef n+  let (quotient',remainder') = quotRem n' 4+  modifyIORef n (+ 1)+  b' <- boxNewWithBoxtype+          boxtype'+          (Rectangle+            (Position (X (remainder' * windowWidth + 10)) (Y (quotient' * rowHeight + 10)))+            (Size+             (Width $ if square' then rowHeight - 20 else windowWidth - 20)+             (Height $ rowHeight - 20)))+          label'+          Nothing+  setLabelsize b' (FontSize 11)+  when square' $ setAlign b' alignRight+main :: IO ()+main = do+  window <- doubleWindowNew+             (Size (Width $ windowWidth * 4) (Height $ numRows * rowHeight))+             Nothing+             Nothing+  setBox window FlatBox+  FL.getSystemColors+  setColor window (Color 12)+  n' <- newIORef 0+  begin window+  bt n' "NoBox" NoBox False+  bt n' "FlatBox" FlatBox False+  modifyIORef n' (+ 2)+  bt n' "UpBox" UpBox False+  bt n' "DownBox" DownBox False+  bt n' "UpFrame" UpFrame False+  bt n' "DownFrame" DownFrame False+  bt n' "ThinUpBox" ThinUpBox False+  bt n' "ThinDownBox" ThinDownBox False+  bt n' "ThinUpFrame" ThinUpFrame False+  bt n' "ThinDownFrame" ThinDownFrame False+  bt n' "EngravedBox" EngravedBox False+  bt n' "EmbossedBox" EmbossedBox False+  bt n' "EngravedFrame" EngravedFrame False+  bt n' "EmbossedFrame" EmbossedFrame False+  bt n' "BorderBox" BorderBox False+  bt n' "ShadowBox" ShadowBox False+  bt n' "BorderFrame" BorderFrame False+  bt n' "ShadowFrame" ShadowFrame False+  bt n' "RoundedBox" RoundedBox False+  bt n' "RshadowBox" RshadowBox False+  bt n' "RoundedFrame" RoundedFrame False+  bt n' "RFlatBox" RFlatBox False+  bt n' "RoundUpBox" RoundUpBox False+  bt n' "RoundDownBox" RoundDownBox False+  bt n' "DiamondUpBox" DiamondUpBox False+  bt n' "DiamondDownBox" DiamondDownBox False+  bt n' "OvalBox" OvalBox False+  bt n' "OshadowBox" OshadowBox False+  bt n' "OvalFrame" OvalFrame False+  bt n' "FloatBox" FloatBox False+  bt n' "PlasticUpBox" PlasticUpBox False+  bt n' "PlasticDownBox" PlasticDownBox False+  bt n' "PlasticUpFrame" PlasticUpFrame False+  bt n' "PlasticDownFrame" PlasticDownFrame False+  bt n' "PlasticThinUpBox" PlasticThinUpBox False+  bt n' "PlasticThinDownBox" PlasticThinDownBox False+  modifyIORef n' (+ 2)+  bt n' "PlasticRoundUpBox" PlasticRoundUpBox False+  bt n' "PlasticRoundDownBox" PlasticRoundDownBox False+  modifyIORef n' (+ 2)+  bt n' "GtkUpBox" GtkUpBox False+  bt n' "GtkDownBox" GtkDownBox False+  bt n' "GtkUpFrame" GtkUpFrame False+  bt n' "GtkDownFrame" GtkDownFrame False+  bt n' "GtkThinUpBox" GtkThinUpBox False+  bt n' "GtkThinDownBox" GtkThinDownBox False+  bt n' "GtkThinUpFrame" GtkThinUpFrame False+  bt n' "GtkThinDownFrame" GtkThinDownFrame False+  bt n' "GtkRoundUpBox" GtkRoundUpBox False+  bt n' "GtkRoundDownBox" GtkRoundDownBox False+  bt n' "FreeBoxtype" FreeBoxtype False+  setResizable window window+  end window+  showWidget window+  _ <- FL.run+  return ()
+ src/Examples/browser.hs view
@@ -0,0 +1,127 @@+{-+This is a test of how the browser draws lines.+This is a second line.+This is a third.++That was a blank line above this.++@r@_Right justify+@c@_Center justify+@_Left justify++@bBold text+@iItalic text+@b@iBold Italic+@fFixed width+@f@bBold Fixed+@f@iItalic Fixed+@f@i@bBold Italic Fixed+@lLarge+@l@bLarge bold+@sSmall+@s@bSmall bold+@s@iSmall italic+@s@i@bSmall italic bold+@uunderscore+@C1RED+@C2Green+@C4Blue++	You should try different browser types:+	Fl_Browser+	Fl_Select_Browser+	Fl_Hold_Browser+	Fl_Multi_Browser+-}++module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.FLTKHS+import Control.Monad+import System.Environment++data CallbackType = Top | Middle | Bottom | Visible | Browser+bCb :: Ref SelectBrowser -> IO ()+bCb browser' = FL.eventClicks >>= setValue browser'++showCb :: CallbackType -> Ref IntInput -> Ref SelectBrowser -> IO ()+showCb buttontype' field' browser' = do+  line' <- getValue field'+  if (null line')+    then print "Please enter a number in the text field before clicking on the buttons."+    else do+    let lineNumber' = read line'+    case buttontype' of+     Top -> setTopline browser' lineNumber'+     Bottom -> setBottomline browser' lineNumber'+     Middle -> setMiddleline browser' lineNumber'+     _ -> makeVisible browser' lineNumber'++swapCb :: Ref SelectBrowser -> Ref Button -> IO ()+swapCb browser' _ =+  do+    browserSize' <- getSize browser'+    linesSelected' <- filterM (selected browser') [0..(browserSize' - 1)]+    case linesSelected' of+     (l1:l2:_) -> swap browser' l1 l2+     (l1:[]) -> swap browser' l1 (-1)+     _ -> swap browser' (-1) (-1)++sortCb :: Ref SelectBrowser -> Ref Button -> IO ()+sortCb browser' _ = sortWithSortType browser' SortAscending++btypeCb :: Ref SelectBrowser -> Ref Choice -> IO ()+btypeCb browser' btype' = do+  numLines' <- getSize browser'+  forM_ [1..(numLines' - 1)] (\l -> select browser' l False)+  _ <- select browser' 1 False -- leave focus box on first line+  choice' <- getText btype'+  case choice' of+   "Normal" -> setType browser' (fromIntegral $ fromEnum NormalBrowserType)+   "Select" -> setType browser' (fromIntegral $ fromEnum SelectBrowserType)+   "Hold" -> setType browser' (fromIntegral $ fromEnum HoldBrowserType)+   "Multi" -> setType browser' (fromIntegral $ fromEnum MultiBrowserType)+   _ -> return ()+  redraw browser'++main :: IO ()+main = do+  args <- getArgs+  if (null args) then print "Enter the path to a text file as an argument. As an example use this file (./src/Examples/browser.hs) to see what Fl_Browser can do."+    else do+     let fname = head args+     window <- doubleWindowNew (Size (Width 560) (Height 400)) Nothing (Just fname)+     browser' <- selectBrowserNew (Rectangle (Position (X 0) (Y 0)) (Size (Width 560) (Height 350))) Nothing+     setType browser' (fromIntegral $ fromEnum MultiBrowserType)+     setCallback browser' bCb+     loadStatus' <- load browser' fname+     if (loadStatus' == 0)+       then print ("Can't load " ++ fname)+       else do+       setPosition browser' 0+       field <- intInputNew (toRectangle (55,350,505,25)) (Just "Line #:")+       setCallback field (\_ -> showCb Browser field browser')+       top' <- buttonNew (toRectangle (0,375,80,25)) (Just "Top")+       setCallback top' (\_ -> showCb Top field browser')+       bottom' <- buttonNew (toRectangle (80,375,80,25)) (Just "Bottom")+       setCallback bottom' (\_ -> showCb Bottom field browser')+       middle' <- buttonNew (toRectangle (160,375,80,25)) (Just "Middle")+       setCallback middle' (\_ -> showCb Middle field browser')+       visible' <- buttonNew (toRectangle (240,375,80,25)) (Just "Make Vis.")+       setCallback visible' (\_ -> showCb Visible field browser')+       swap' <- buttonNew (toRectangle (320,375,80,25)) (Just "Swap")+       setCallback swap' $ swapCb browser'+       setTooltip swap' "Swaps two selected lines\n(Use CTRL-click to select two lines)"+       sort' <- buttonNew (toRectangle (400,375,80,25)) (Just "Sort")+       setCallback sort' (sortCb browser')+       btype <- choiceNew (toRectangle (480,375,80,25)) Nothing+       addName btype "Normal"+       addName btype "Select"+       addName btype "Hold"+       addName btype "Multi"+       setCallback btype $ btypeCb browser'+       _ <- setValue btype (MenuItemByIndex (MenuItemIndex 3))+       setResizable window browser'+       showWidget window+       _ <- FL.run+       return ()
+ src/Examples/clock.hs view
@@ -0,0 +1,22 @@+module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.FLTKHS++main :: IO ()+main = do+  w1 <- doubleWindowNew (Size (Width 220) (Height 220)) Nothing (Just "clock")+  begin w1+  c1 <- clockNew (toRectangle (0,0,220,220)) Nothing+  setResizable w1 c1+  end w1+  w2 <- doubleWindowNew (Size (Width 220) (Height 220)) Nothing (Just "Rounded Clock")+  begin w2+  c2 <- clockNew (toRectangle (0,0,220,220)) Nothing+  setResizable w2 c2+  end w2+  setXclass w1 "Fl_Clock"+  setXclass w2 "Fl_Clock"+  showWidget w1+  showWidget w2+  _ <- FL.run+  return ()
+ src/Examples/doublebuffer.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE FlexibleContexts, ScopedTypeVariables #-}+module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.FLTKHS+import Control.Monad+import Data.IORef++star :: Int -> Int -> Double -> IO ()+star w h n = do+  flcPushMatrix+  flcTranslate (ByXY (ByX (fromIntegral w / 2)) (ByY (fromIntegral h /2)))+  flcScaleWithY (ByXY (ByX (fromIntegral w / 2)) (ByY (fromIntegral h /2)))+  forM_ [0..n] $ \i -> do+    forM_ [(i+1)..n] $ \j -> do+      let i_vertex :: Double =  2 * pi * i/n + 0.1+          j_vertex :: Double =  2 * pi * j/n + 0.1+      flcBeginLine+      flcVertex (ByXY (ByX $ cos i_vertex) (ByY $ sin i_vertex))+      flcVertex (ByXY (ByX $ cos j_vertex) (ByY $ sin j_vertex))+      flcEndLine+  flcPopMatrix++sliderCb :: IORef (Double,Double) -> (Double -> (Double,Double) -> (Double,Double))-> Ref HorSlider -> IO ()+sliderCb sides' sidesf' slider' = do+  v' <- getValue slider'+  modifyIORef sides' (sidesf' v')+  (Just p') <- getParent slider'+  redraw p'++badDraw :: IORef (Double,Double) -> Int -> Int -> ((Double,Double) -> Double) -> IO ()+badDraw sides w h which = do+  flcSetColor blackColor >> flcRectf (toRectangle (0,0,w,h))+  flcSetColor whiteColor >> readIORef sides >>= star w h . which+++drawWindow :: forall a r1 r2 r3 r4.+              (+               FindOp a (DrawChild ())(Match r1),+               FindOp a (GetChild ()) (Match r2),+               FindOp a (GetH ())     (Match r3),+               FindOp a (GetW ())     (Match r4),+               Op (DrawChild ())  r1 a (Ref Widget -> IO ()),+               Op (GetChild ())   r2 a (Int -> IO (Ref Widget)),+               Op (GetH ())       r3 a (IO Int),+               Op (GetW ())       r4 a (IO Int)+              ) =>+              IORef (Double, Double) ->+              ((Double, Double) -> Double) ->+              Ref a ->+              IO ()+drawWindow sides' whichf' w' = do+  ww' <- getW w'+  wh' <- getH w'+  badDraw sides' ww' wh' whichf'+  c' <- getChild w' (0 :: Int)+  drawChild w' (c' :: Ref Widget)++main :: IO ()+main = do+  visual' <- FL.visual ModeDouble+  if (not visual') then print "Xdbe not supported, faking double buffer with pixmaps.\n" else return ()+  sides' <- newIORef (20,20)+  w01 <- windowNew (toSize (420,420)) Nothing (Just "Fl_Single_Window")+  setBox w01 FlatBox+  begin w01+  w1 <- singleWindowCustom+          (Size (Width 400) (Height 400))+          (Just (Position (X 10) (Y 10)))+          (Just "Single Window")+          defaultCustomWidgetFuncs {+            drawCustom = (Just $ drawWindow sides' fst)+          }+          defaultCustomWindowFuncs+  setBox w1 FlatBox+  setColor w1 blackColor+  setResizable w1 w1+  begin w1+  slider0 <- horSliderNew (toRectangle (20,370,360,25)) Nothing+  range slider0 2 30+  setStep slider0 1+  _ <- readIORef sides' >>= setValue slider0 . fst+  setCallback slider0 (sliderCb sides' (\v (_,s2) -> (v, s2)))+  end w1+  end w01+  w02 <- windowNew (Size (Width 420) (Height 420)) Nothing (Just "Fl_Double_Window")+  setBox w02 FlatBox+  begin w02+  w2 <- doubleWindowCustom+          (Size (Width 400) (Height 400))+          (Just $ Position (X 10) (Y 10))+          (Just "Fl_Double_Window")+          defaultCustomWidgetFuncs {+                drawCustom = Just (drawWindow sides' snd)+              }+          defaultCustomWindowFuncs+  setBox w2 FlatBox+  setColor w2 blackColor+  setResizable w2 w2+  begin w2+  slider1 <- horSliderNew (toRectangle $ (20,370,360,25)) Nothing+  range slider1 2 30+  setStep slider1 1+  _ <- readIORef sides' >>= setValue slider1 . fst+  setCallback slider1 (sliderCb sides' (\v (s1,_) -> (s1,v)))+  end w2+  end w02+  showWidget w01+  showWidget w1+  showWidget w02+  showWidget w2+  _ <- FL.run+  return ()
+ src/Examples/hello-world.hs view
@@ -0,0 +1,29 @@+module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.FLTKHS+++buttonCb :: Ref Button -> IO ()+buttonCb b' = do+  l' <- getLabel b'+  if (l' == "Hello world")+    then setLabel b' "Goodbye world"+    else setLabel b' "Hello world"++main :: IO ()+main = do+ window <- windowNew+           (Size (Width 100) (Height 75))+           Nothing+           Nothing+ begin window+ b' <- buttonNew+        (Rectangle (Position (X 10) (Y 30)) (Size (Width 95) (Height 30)))+        (Just "Hello world")+ setLabelsize b' (FontSize 10)+ setCallback b' buttonCb+ end window+ showWidget window+ _ <- FL.run+ return ()
+ src/Examples/make-tree.hs view
@@ -0,0 +1,21 @@+module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.FLTKHS+import Control.Monad++main :: IO ()+main = do+  win' <- windowNew (Size (Width 500) (Height 500)) Nothing (Just "FLTK Tree Window")+  begin win'+  tree' <- treeNew (toRectangle (50,50,200,200)) (Just "Tree")+  rootLabel tree' "Root Label With Items"+  prefs' <- treePrefsNew+  forM_ [0..(9 :: Int)] $ \_ -> do+    item' <- treeItemNew prefs'+    setLabel item' "test"+    addAt tree' "test" item'+  end win'+  showWidget win'+  _ <- FL.run+  return ()
+ src/Examples/table-simple.hs view
@@ -0,0 +1,78 @@+module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.FLTKHS+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations++maxRows :: Int+maxRows = 30+maxCols :: Int+maxCols = 26+tableData :: [[Int]]+tableData =+    let rowIndices = [0 .. (maxRows - 1)]+        colIndices = [0 .. (maxCols - 1)]+    in+      map (\r -> map (\c -> 1000 + (r * 1000) + c) colIndices) rowIndices+drawHeader :: Ref Table -> String -> Rectangle -> IO ()+drawHeader table s rectangle = do+  flcPushClip rectangle+  rhc <- getRowHeaderColor table+  flcDrawBox ThinUpBox rectangle rhc+  flcSetColor blackColor+  flcDrawInBox s rectangle alignCenter Nothing Nothing+  flcPopClip+drawData :: Ref Table -> String -> Rectangle -> IO ()+drawData table s rectangle = do+  flcPushClip rectangle+  flcSetColor whiteColor >> flcRectf rectangle+  flcSetColor gray0Color >> flcDrawInBox s rectangle alignCenter Nothing Nothing+  color' <- getColor table+  flcSetColor color' >> flcRect rectangle+  flcPopClip+drawCell :: Ref Table -> TableContext -> TableCoordinate -> Rectangle -> IO ()+drawCell table context (TableCoordinate (Row row) (Column col)) rectangle = do+  case context of+   ContextStartPage -> flcSetFont helvetica (FontSize 16)+   ContextColHeader ->+       let a = fromEnum 'A'+           currentLetter :: Char+           currentLetter = (toEnum $ fromEnum a + col)+       in+       drawHeader table [currentLetter] rectangle+   ContextRowHeader -> drawHeader table (show row) rectangle+   ContextCell -> drawData table (show $ tableData !! row !! col) rectangle+   _ -> return ()+initializeTable :: Ref Table -> IO ()+initializeTable table = do+  begin table+  setRows table maxRows+  setRowHeader table True+  setRowHeightAll table 20+  setRowResize table False+  setCols table maxCols+  setColHeader table True+  setColWidthAll table 80+  setColResize table True+  end table+main :: IO ()+main = do+  window <- doubleWindowNew+              (Size (Width 900) (Height 400))+              Nothing+              (Just "Simple Table")+  begin window+  table <- tableCustom+             (Rectangle+               (Position (X 10) (Y 10))+               (Size (Width 880) (Height 380)))+             Nothing+             defaultCustomWidgetFuncs+             defaultCustomTableFuncs {+               drawCellCustom = (Just drawCell)+             }+  initializeTable table+  setResizable window table+  end window+  showWidget window+  _ <- FL.run+  return ()
+ src/Examples/table-sort.hs view
@@ -0,0 +1,241 @@+{-# LANGUAGE CPP #-}+module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Control.Monad+import Graphics.UI.FLTK.LowLevel.FLTKHS+import Data.IORef+import Data.List+import Data.Function+import System.Process+dirCommand :: ([Char], [[Char]])+dirHeaders :: [[Char]]+#ifdef ming32_HOST_OS+dirCommand = ("dir", [])+dirHeaders = ["Perms", "#L", "Own", "Group", "Size", "Date", "", "", "Filename"]+#else+dirCommand = ("ls", ["-l"])+dirHeaders = ["Date", "Time", "Size", "Filename", "", "", "", "", ""]+#endif+margin :: Int+margin = 20+headerFontFace :: Font+headerFontFace = helveticaBold+headerFontSize :: FontSize+headerFontSize = FontSize 16+rowFontFace :: Font+rowFontFace = helvetica+rowFontSize :: FontSize+rowFontSize = FontSize 16++data TableState = TableState {+  sortReverse :: IORef Bool,+  sortLastCol :: IORef Int,+  rowData :: IORef [[String]]+  }++drawSortArrow :: Rectangle -> Bool -> IO ()+drawSortArrow (Rectangle (Position (X x') (Y y')) (Size (Width w') (Height h'))) sortReverse' =+  let xlft = x' + (w'-6) - 8+      xctr = x' + (w'-6) - 4+      xrit = x' + (w'-6) - 0+      ytop = y' + (truncate ((fromIntegral h' / 2) :: Double)) - 4+      ybot = y' + (truncate ((fromIntegral h' / 2) :: Double)) + 4+  in+   if sortReverse'+   then do+     flcSetColor whiteColor+     flcLine (Position (X xrit) (Y ytop)) (Position (X xctr) (Y ybot))+     flcSetColorWithC 41+     flcLine (Position (X xlft) (Y ytop)) (Position (X xrit) (Y ytop))+     flcLine (Position (X xlft) (Y ytop)) (Position (X xctr) (Y ybot))+   else do+     flcSetColor whiteColor+     flcLine (Position (X xrit) (Y ybot)) (Position (X xctr) (Y ybot))+     flcLine (Position (X xrit) (Y ybot)) (Position (X xlft) (Y ybot))+     flcSetColorWithC 41+     flcLine (Position (X xlft) (Y ybot)) (Position (X xctr) (Y ytop))++drawCell ::  TableState -> Ref TableRow -> TableContext -> TableCoordinate -> Rectangle -> IO ()+drawCell tableState table tc (TableCoordinate (Row row') (Column col')) rectangle' =+  let (x',y',w',h') = fromRectangle rectangle'+  in do+    sortReverse' <- readIORef (sortReverse tableState)+    sortLastCol' <- readIORef (sortLastCol tableState)+    rowData' <- readIORef (rowData tableState)+    numCols <- getCols table+    numRows <- getRows table+    if (row' < numRows && col' < numCols)+      then case tc of+            ContextColHeader -> do+              flcPushClip rectangle'+              flcDrawBox ThinUpBox rectangle' backgroundColor+              if (col' < 9)+                then do+                  flcSetColor blackColor+                  flcDrawInBox+                    (dirHeaders !! col')+                    (toRectangle ((x'+2),y',w',h'))+                    alignLeft+                    Nothing+                    Nothing+                  if (col' == sortLastCol')+                    then drawSortArrow rectangle' sortReverse'+                    else return ()+                else return ()+              flcPopClip+            ContextCell -> do+              flcPushClip rectangle'+              bgColor <- do+                isSelected' <- getRowSelected table row'+                case isSelected' of+                  Right is' -> if is'+                               then getSelectionColor table+                               else return whiteColor+                  Left _ -> error $ "Row: " ++ (show row') ++ " is out of range."+              flcSetColor bgColor+              flcRectf rectangle'+              flcSetFont rowFontFace rowFontSize+              flcSetColor blackColor+              let currentRow = rowData' !! row'+              flcDrawInBox+                (indexOr "" col' currentRow)+                (toRectangle $ (x'+2,y',w',h'))+                alignLeft+                Nothing+                Nothing+              flcSetColor light2Color+              flcRect rectangle'+              flcPopClip+            _ -> return ()+      else return ()+setIndex :: Int -> [a] -> (a -> a) -> [a]+setIndex idx' xs f =+  map+   (+    \(i,e) -> if (i == idx')+                 then f e+                 else e+   )+   (zip [0..] xs)++indexOr :: a -> Int -> [a] -> a+indexOr fallback idx xs =+  if (idx < length xs)+  then xs !! idx+  else fallback++eventCallback :: TableState -> Ref TableRow -> IO ()+eventCallback tableState table = do+  (Column  col') <- callbackCol table+  context' <- callbackContext table+  case context' of+   ContextColHeader -> do+     event' <- FL.event+     mouseButton' <- FL.eventButton+     if (event' == Release && mouseButton' == Mouse_Left)+       then do+         sortLastCol' <- readIORef (sortLastCol tableState)+         if (sortLastCol' == col')+           then readIORef (sortReverse tableState) >>= writeIORef (sortReverse tableState) . toggle+           else writeIORef (sortReverse tableState) False+         sortReverse' <- readIORef (sortReverse tableState)+         rowData' <- readIORef (rowData tableState) >>= return . zip [(0 :: Int)..]+         let sorted = sortBy (compare `on` (indexOr "" col'. snd)) rowData'+         writeIORef+           (rowData tableState)+           (if sortReverse'+            then (reverse $ map snd sorted)+            else map snd sorted)+         writeIORef (sortLastCol tableState) col'+         redraw table+         else return ()+   _ -> return ()+  where toggle True = False+        toggle False = True++autowidth :: Ref TableRow -> Int -> [[String]] -> IO ()+autowidth table pad rowData' = do+  flcSetFont headerFontFace headerFontSize+  mapM_+    (\(colNum, colName) -> do+        (Size (Width w') _) <- flcMeasure colName Nothing+        setColWidth table colNum (w' + pad)+    )+    (zip [0 ..] dirHeaders)+  flcSetFont rowFontFace rowFontSize+  mapM_+    (\row' -> do+      mapM_+        (\(colIdx,col) -> do+            (Size (Width wc') _) <- flcMeasure col Nothing+            colWidth' <- getColWidth table colIdx+            if (wc' + pad > colWidth')+              then setColWidth table colIdx (wc' + pad)+              else return ()+        )+        (zip [0..] row')+    )+    rowData'+  -- need to do { table_resized(); redraw(); }+  -- but table_resized() is unexposed.+  -- setting the row_header flag induces this.+  getRowHeader table >>= setRowHeader table++resize_window :: Ref DoubleWindow -> Ref TableRow -> IO ()+resize_window window table = do+  let width = (4 :: Int)+  numCols <- getCols table+  colWidthTotal <- liftM sum $ mapM (getColWidth table) [0..(numCols - 1)]+  let totalWidth = width + colWidthTotal + (margin * 2)+  appWidth <- FL.w+  if (totalWidth < 200 || totalWidth > appWidth)+    then return ()+    else do+      x' <- getX window+      y' <- getY window+      h' <- getH window+      resize window $ toRectangle (x',y',totalWidth,h')++main :: IO ()+main = do+  window <- doubleWindowNew+              (Size (Width 900) (Height 500))+              Nothing+              (Just "Table Sorting")+  windowW <- getW window+  windowH <- getH window+  rows <- uncurry readProcess dirCommand "" >>= return . map words . lines+  rowData' <- newIORef rows+  sortReverse' <- newIORef False+  sortLastCol' <- newIORef (-1)+  let tableState = TableState sortReverse' sortLastCol' rowData'+  begin window+  table <- tableRowNew+             (Rectangle+               (Position (X margin) (Y margin))+               (Size (Width $ windowW - margin * 2)+                     (Height $ windowH - margin * 2)))+             Nothing+             defaultCustomWidgetFuncs+             (defaultCustomTableFuncs {+                drawCellCustom = Just $ drawCell tableState+             })+  setColHeader table True+  setColResize table True+  setSelectionColor table yellowColor+  setWhen table [WhenRelease]+  readIORef rowData' >>= setRows table . length+  readIORef rowData' >>= setCols table . maximum . map length+  setRowHeightAll table 18+  readIORef rowData' >>= autowidth table 20+  setTooltip table "Click on column headings to toggle column sorting"+  setColor table whiteColor+  setCallback table (eventCallback tableState)+  end window+  setResizable window table+  resize_window window table+  _ <- showWidget window+  _ <- FL.run+  return ()
+ src/Examples/table-spreadsheet-with-keyboard-nav.hs view
@@ -0,0 +1,292 @@+{-# LANGUAGE ScopedTypeVariables #-}+module Main where+import           Data.IORef+import qualified Graphics.UI.FLTK.LowLevel.FL              as FL+import           Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import           Graphics.UI.FLTK.LowLevel.Fl_Types+import           Graphics.UI.FLTK.LowLevel.FLTKHS++maxCols, maxRows :: Int+maxCols = 26+maxRows = 500++data SpreadsheetProperties =+  SpreadsheetProperties+  {+    rowEdit      :: Int+  , colEdit      :: Int+  , sLeftTop     :: TableCoordinate+  , sRightBottom :: TableCoordinate+  , values       :: [[Int]]+  }++setIndex :: Int -> (a -> a) -> [a] -> [a]+setIndex idx' f xs =+  map+   (+    \(i,e) -> if (i == idx')+                 then f e+                 else e+   )+   (zip [0..] xs)++setValueHide :: IORef SpreadsheetProperties -> Ref Table -> Ref IntInput -> IO ()+setValueHide sp' table' intInput' = do+  props' <- readIORef sp'+  inputValue' <- getValue intInput' >>= return . read+  let updatedValues' = setIndex+                         (rowEdit props')+                         (setIndex+                           (colEdit props')+                           (const inputValue'))+                         (values props')+      updatedProperties' = props' {+          values = updatedValues'+        }+  writeIORef sp' updatedProperties'+  hide intInput'+  window' <- getWindow table'+  setCursor window' CursorDefault++startEditing :: IORef SpreadsheetProperties -> Ref IntInput -> Ref Table -> Int -> Int -> IO ()+startEditing props' intInput' table' row' col' = do+  modifyIORef props' (\p' -> p' {rowEdit = row', colEdit = col'})+  _p <- readIORef props'+  setSelection table' (rowEdit _p) (colEdit _p) (rowEdit _p) (colEdit _p)+  rectangle' <- findCell table' ContextCell (TableCoordinate (Row (rowEdit _p)) (Column  (colEdit _p)))+  case rectangle' of+    Just rect' -> do+      resize intInput' rect'+      let cellContents = (values _p) !! (rowEdit _p) !! (colEdit _p)+      _ <- setValue intInput' (show cellContents) Nothing+      _ <- setPosition intInput' 0 (Just (length $ show cellContents))+      showWidget intInput'+      _ <- takeFocus intInput'+      return ()+    _ -> return ()++doneEditing :: IORef SpreadsheetProperties -> Ref IntInput -> Ref Table -> IO ()+doneEditing props' intInput' table' = do+  _p <- readIORef props'+  visible' <- getVisible intInput'+  if visible'+   then setValueHide props' table' intInput'+   else return ()++eventCallback :: IORef SpreadsheetProperties -> Ref IntInput -> Ref Table -> IO ()+eventCallback props' intInput' table' = do+  _p <- readIORef props'+  (Row r') <- callbackRow table'+  (Column c') <- callbackCol table'+  context' <- callbackContext table'+  numRows' <- getRows table'+  numCols' <- getCols table'+  case context' of+    ContextCell -> do+      event' <- FL.event+      case event' of+        Push -> do+          doneEditing props' intInput' table'+          if (r' /= (numRows' -1) && c' /= (numCols' -1))+            then startEditing props' intInput' table' r' c'+            else return ()+          return ()+        Keydown -> do+          eventKey' <- FL.eventKey+          if (eventKey' == (SpecialKeyType Kb_Escape))+            then return ()+            else if (r' == numRows' - 1 || c' == numCols' -1)+                 then return ()+                 else do+                   doneEditing props' intInput' table'+                   setSelection table' r' c' r' c'+                   startEditing props' intInput' table' r' c'+                   newEvent <- FL.event+                   if (newEvent == Keydown)+                     then handle intInput' newEvent >> return ()+                     else return ()+                   return ()+        _  -> return ()+    _c -> if (any (== _c) [ContextTable, ContextRowHeader, ContextColHeader])+          then doneEditing props' intInput' table'+          else return ()++setBySlider :: Ref ValueSlider -> Ref Table -> (Ref Table -> Int -> IO ()) -> IO ()+setBySlider slider' table' f = do+  v' <- getValue slider'+  f table' (truncate $ v'+1)+  redraw table'++setColsCb :: Ref Table -> Ref ValueSlider -> IO ()+setColsCb table' slider' = setBySlider slider' table' setCols++setRowsCb :: Ref Table -> Ref ValueSlider -> IO ()+setRowsCb table' slider' = setBySlider slider' table' setRows++drawCell :: IORef SpreadsheetProperties -> Ref IntInput -> Ref Table -> TableContext -> TableCoordinate -> Rectangle -> IO ()+drawCell props' intInput' table' context' (TableCoordinate (Row row') (Column col')) rectangle' = do+  _p <- readIORef props'+  numRows' <- getRows table'+  numCols' <- getCols table'+  case context' of+   ContextStartPage -> do+     (p1,p2) <- getSelection table'+     modifyIORef props' (\p -> p {sLeftTop = p1, sRightBottom = p2})+   ContextColHeader -> do+     flcSetFont helveticaBold (FontSize 14)+     flcPushClip rectangle'+     getColHeaderColor table' >>= flcDrawBox ThinUpBox rectangle'+     flcSetColor blackColor+     if (col' == numCols' - 1)+       then flcDrawInBox "TOTAL" rectangle' alignCenter Nothing Nothing+       else flcDrawInBox [toEnum $ fromEnum 'A' + col'] rectangle' alignCenter Nothing Nothing+     flcPopClip+   ContextRowHeader -> do+     flcSetFont helveticaBold (FontSize 14)+     flcPushClip rectangle'+     getRowHeaderColor table' >>= flcDrawBox ThinUpBox rectangle'+     flcSetColor blackColor+     if (row' == numRows' - 1)+       then flcDrawInBox "TOTAL" rectangle' alignCenter Nothing Nothing+       else flcDrawInBox (show $ row' + 1) rectangle' alignCenter Nothing Nothing+     flcPopClip+   ContextCell-> do+     visible' <- getVisible intInput'+     let (TableCoordinate (Row sTop') (Column sLeft')) = sLeftTop _p+         (TableCoordinate (Row sBottom') (Column sRight')) = sRightBottom _p+     if (row' == (rowEdit _p) && col' == (colEdit _p) && visible')+       then return ()+       else do+            if (row' >= sTop' && row' <= sBottom' && col' >= sLeft' && col' <= sRight')+              then flcDrawBox ThinUpBox rectangle' yellowColor+              else if (col' < numCols' - 1 && row' < numRows' - 1)+                   then do+                     selected' <- isSelected table' (TableCoordinate (Row row') (Column col'))+                     flcDrawBox ThinUpBox rectangle' (if selected' then yellowColor else whiteColor)+                   else flcDrawBox ThinUpBox rectangle' (Color 0xbbddbb00)+            flcPushClip rectangle'+            flcSetColor blackColor+            if (col' == numCols' - 1 || row' == numRows' - 1)+              then do+                flcSetFont helveticaBold (FontSize 14)+                let shownValues = map (take (numCols'- 1)) $ take (numRows' -1) (values _p)+                let s' = if (col' == numCols' - 1 && row' == numRows' - 1)+                         then (show . sum . map sum) shownValues+                         else if (col' == numCols' - 1)+                              then (show $ sum $ shownValues !! row')+                              else if (row' == numRows' - 1)+                                   then (show . sum . map (\r -> r !! col')) shownValues+                                   else ""+                let (x',y',w',h') = fromRectangle rectangle'+                flcDrawInBox s' (toRectangle (x'+3,y'+3,w'-6,h'-6)) alignRight Nothing Nothing+              else do+                flcSetFont helvetica (FontSize 14)+                let s' = show $ (values _p) !! row' !! col'+                let (x',y',w',h') = fromRectangle rectangle'+                flcDrawInBox s' (toRectangle (x'+3,y'+3,w'-6,h'-6)) alignRight Nothing Nothing+            flcPopClip+   ContextRCResize -> do+     visible' <- getVisible intInput'+     if (not visible')+       then return ()+       else do+         cellRectangle' <- findCell table' ContextTable (TableCoordinate (Row row') (Column  col'))+         case cellRectangle' of+           Just cr' -> if (cr' == rectangle')+                       then return ()+                       else resize intInput' cr'+           Nothing -> return ()+   _  -> return ()++main :: IO ()+main = do+  FL.setOption FL.OptionArrowFocus True+  win' <- doubleWindowNew+           (Size (Width 922) (Height 382))+           Nothing+           (Just "Fl_Table Spreadsheet with Keyboard Navigation")+  winWidth' <- getW win'+  winHeight' <- getH win'+  let values' =+        map+          (\r' ->+            map+             (\c' -> (r'+2) * (c'+3))+             [0 .. (maxCols -1)]+          )+          [0.. (maxRows - 1)]+  props' <- newIORef $+              SpreadsheetProperties+                0+                0+                (TableCoordinate (Row 0) (Column 0))+                (TableCoordinate (Row 0) (Column 0))+                values'+  let tableWidth' = winWidth' - 80+      tableHeight' = winHeight' - 80+  intInput' <- intInputNew+                (toRectangle+                 (+                  (truncate $ ((fromIntegral tableWidth' / 2) :: Double)),+                  (truncate $ ((fromIntegral tableHeight' / 2) :: Double)),+                  0,+                  0+                 )+                )+                Nothing+  hide intInput'+  setWhen intInput' [WhenEnterKeyAlways]+  setMaximumSize intInput' 5++  spreadsheet' <- tableCustom+                    (toRectangle (20,20,tableWidth', tableHeight'))+                    Nothing+                    defaultCustomWidgetFuncs+                    defaultCustomTableFuncs {+                        drawCellCustom = (Just $ drawCell props' intInput')+                      }+  whens' <- getWhen spreadsheet'+  setWhen spreadsheet' $ [WhenNotChanged] ++ whens'+  setSelection spreadsheet' 0 0 0 0+  setCallback intInput' (setValueHide props' spreadsheet')+  setCallback spreadsheet' (eventCallback props' intInput')+  setTooltip spreadsheet' "Use keyboard to navigate cells:\n Arrow keys or Tab/Shift-Tab"+  -- Table rows+  setRowHeader spreadsheet' True+  setRowHeaderWidth spreadsheet' 70+  setRowResize spreadsheet' True+  setRows spreadsheet' 11+  setRowHeightAll spreadsheet' 25+  -- Table cols+  setColHeader spreadsheet' True+  setColHeaderHeight spreadsheet' 25+  setColResize spreadsheet' True+  setCols spreadsheet' 11+  setColWidthAll spreadsheet' 70++  begin win'+  -- Rows slider+  setRows' <- valueSliderNew (toRectangle (winWidth'-40,20,20,winHeight'-80)) Nothing+  setType setRows' (fromIntegral $ fromEnum VertNiceSliderType)+  bounds setRows' 2 (fromIntegral maxRows)+  setStep setRows' 1+  numRows' <- getRows spreadsheet'+  _ <- setValue setRows' (fromIntegral $ numRows'-1)+  setCallback setRows' (setRowsCb spreadsheet')+  setWhen setRows' [WhenChanged]+  clearVisibleFocus setRows'+   -- Cols slider+  setCols' <- valueSliderNew (toRectangle (20,winHeight'-40,winWidth'-80,20)) Nothing+  setType setCols' (fromIntegral $ fromEnum HorNiceSliderType)+  bounds setCols' 2 (fromIntegral maxCols)+  setStep setCols' 1+  numCols' <- getCols spreadsheet'+  _ <- setValue setCols' (fromIntegral $ numCols'-1)+  setCallback setCols' (setColsCb spreadsheet')+  setWhen setCols' [WhenChanged]+  clearVisibleFocus setCols'+  end win'+  setResizable win' spreadsheet'+  showWidget win'+  _ <- FL.run+  return ()
+ src/Examples/textdisplay-with-colors.hs view
@@ -0,0 +1,23 @@+module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.FLTKHS+main :: IO ()+main = do+  let stes = [(StyleTableEntry (Just redColor) (Just courier) (Just $ FontSize 18)),+              (StyleTableEntry (Just darkYellowColor) (Just courier) (Just $ FontSize 18)),+              (StyleTableEntry (Just darkGreenColor) (Just courier) (Just $ FontSize 18)),+              (StyleTableEntry (Just blueColor) (Just courier) (Just $ FontSize 18))]+  win <- windowNew (toSize (640,480)) Nothing (Just $ "Simple Text Display With Colors")+  disp <- textDisplayNew (toRectangle (20,20,640-40,480-40)) Nothing+  tbuff <- textBufferNew Nothing Nothing+  sbuff <- textBufferNew Nothing Nothing+  setBuffer disp tbuff+  highlightData disp sbuff (indexStyleTableEntries stes) Nothing+  setText tbuff "Red Line 1\nYel Line 2\nGrn Line 3\nBlu Line 4\nRed Line 5\nYel Line 6\nGrn Line 7\nBlu Line 8\n"+  setText sbuff "AAAAAAAAAA\nBBBBBBBBBB\nCCCCCCCCCC\nDDDDDDDDDD\nAAAAAAAAAA\nBBBBBBBBBB\nCCCCCCCCCC\nDDDDDDDDDD\n"+  setResizable win disp+  showWidget win+  _ <- FL.run+  return ()
+ src/Examples/texteditor-simple.hs view
@@ -0,0 +1,15 @@+module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.FLTKHS++main :: IO ()+main = do+  win <- doubleWindowNew (toSize (640,480)) Nothing (Just "Simple Fl_Text_Editor")+  buff <- textBufferNew Nothing Nothing+  edit <- textEditorNew (toRectangle (20,20,(640-40),(480-40))) Nothing+  setBuffer edit buff+  showWidget win+  setText buff "line 0\nline 1\nline 2\nline 3\nline 4\nline 5\nline 6\nline 7\nline 8\nline 9\nline 10\nline 11\nline 12\nline 13\nline 14\nline 15\nline 16\nline 17\nline 18\nline 19\nline 20\nline 21\nline 22\nline 23\n"+  _ <- FL.run+  return ()
+ src/Examples/tree-simple.hs view
@@ -0,0 +1,48 @@+module Main where+import qualified Graphics.UI.FLTK.LowLevel.FL as FL+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.FLTKHS++treeCallback :: Ref Tree -> IO ()+treeCallback tree' = do+  (Just item') <- getCallbackItem tree'+  reason' <- getCallbackReason tree'+  label' <- getLabel item'+  case reason' of+    TreeReasonSelected -> do+      (Just path') <- itemPathname tree' item'+      print $ "TreeCallback: Item selected =" ++ label' ++ "Full pathname=" ++ path' ++ "\n"+    TreeReasonDeselected ->+      print $ "TreeCallback: Item deselected =" ++ label' ++ "\n"+    TreeReasonOpened ->+      print $ "TreeCallback: Item opened =" ++ label' ++ "\n"+    TreeReasonClosed ->+      print $ "TreeCallback: Item closed =" ++ label' ++ "\n"+    _ -> print ""+main :: IO ()+main = do+  _ <- FL.setScheme "gtk+"+  window <- windowNew (toSize (250,400)) Nothing (Just "Simple Tree")+  begin window+  windowWidth' <- getW window+  windowHeight' <- getH window+  tree <- treeNew (toRectangle (10,10,windowWidth' - 20,windowHeight' - 20)) Nothing+  setShowroot tree False+  _ <- add tree "Flintstones/Fred"+  _ <- add tree "Flintstones/Wilma"+  _ <- add tree "Flintstones/Pebbles"+  _ <- add tree "Simpsons/Homer"+  _ <- add tree "Simpsons/Marge"+  _ <- add tree "Simpsons/Bart"+  _ <- add tree "Simpsons/Lisa"+  _ <- add tree "Pathnames/\\/bin"+  _ <- add tree "Pathnames/\\/usr\\/sbin"+  _ <- add tree "Pathnames/C:\\\\Program Files"+  _ <- add tree "Pathnames/C:\\\\Documents and Settings"+  close tree (TreeItemNameLocator (TreeItemName "Simpsons"))+  close tree (TreeItemNameLocator (TreeItemName "Pathnames"))+  setCallback tree treeCallback+  end window+  showWidget window+  _ <- FL.run+  return ()
+ src/Graphics/UI/FLTK/LowLevel/Adjuster.chs view
@@ -0,0 +1,53 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Adjuster+    (+     -- * Constructor+     adjusterNew,+     -- *  Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_AdjusterC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Adjuster_New as adjusterNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Adjuster_New_WithLabel as adjusterNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+adjusterNew :: Rectangle -> Maybe String -> IO (Ref Adjuster)+adjusterNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> adjusterNew' x_pos y_pos width height >>=+                             toRef+        Just l -> adjusterNewWithLabel' x_pos y_pos width height l >>=+                               toRef++{# fun Fl_Adjuster_Destroy as adjusterDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Adjuster orig impl where+  runOp _ _ adjuster = swapRef adjuster $ \adjusterPtr -> do+    adjusterDestroy' adjusterPtr+    return nullPtr++{# fun unsafe Fl_Adjuster_soft as soft' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetSoft ()) Adjuster orig impl where+  runOp _ _ adjuster = withRef adjuster $ \adjusterPtr -> soft' adjusterPtr+{# fun unsafe Fl_Adjuster_set_soft as setSoft' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetSoft ()) Adjuster orig impl where+  runOp _ _ adjuster soft = withRef adjuster $ \adjusterPtr -> setSoft' adjusterPtr soft++-- $functions+-- @+-- destroy :: 'Ref' 'Adjuster' -> 'IO' ()+--+-- getSoft :: 'Ref' 'Adjuster' -> 'IO' 'Int'+--+-- setSoft :: 'Ref' 'Adjuster' -> 'Int' -> 'IO' ()+-- @
+ src/Graphics/UI/FLTK/LowLevel/Bitmap.chs view
@@ -0,0 +1,77 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Bitmap+ (+  bitmapNew+ )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_BitmapC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun unsafe Fl_Bitmap_New as flBitmapNew' { id `Ptr CChar',`Int',`Int' } -> `Ptr ()' id #}+bitmapNew :: BitmapHs -> IO (Ref Bitmap)+bitmapNew bitmap = withBitmap bitmap (\ptr width' height' -> flBitmapNew' ptr width' height' >>= toRef)+{# fun unsafe Fl_Bitmap_Destroy as flBitmapDestroy' { id `Ptr ()' } -> `()' id #}+instance (impl ~ (IO ())) => Op (Destroy ()) Bitmap orig impl where+  runOp _ _ bitmap = withRef bitmap $ \bitmapPtr -> flBitmapDestroy' bitmapPtr+{# fun unsafe Fl_Bitmap_w as w' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetW ()) Bitmap orig impl where+  runOp _ _ bitmap = withRef bitmap $ \bitmapPtr -> w' bitmapPtr+{# fun unsafe Fl_Bitmap_h as h' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetH ()) Bitmap orig impl where+  runOp _ _ bitmap = withRef bitmap $ \bitmapPtr -> h' bitmapPtr+{# fun unsafe Fl_Bitmap_d as d' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetD ()) Bitmap orig impl where+  runOp _ _ bitmap = withRef bitmap $ \bitmapPtr -> d' bitmapPtr+{# fun unsafe Fl_Bitmap_ld as ld' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetLd ()) Bitmap orig impl where+  runOp _ _ bitmap = withRef bitmap $ \bitmapPtr -> ld' bitmapPtr+{# fun unsafe Fl_Bitmap_count as count' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetCount ()) Bitmap orig impl where+  runOp _ _ bitmap = withRef bitmap $ \bitmapPtr -> count' bitmapPtr+{# fun unsafe Fl_Bitmap_copy_with_w_h as copyWithWH' { id `Ptr ()',`Int',`Int' } -> `Ptr ()' id #}+{# fun unsafe Fl_Bitmap_copy as copy' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( Maybe Size -> IO (Ref Bitmap))) => Op (Copy ()) Bitmap orig impl where+  runOp _ _ bitmap size' = case size' of+    Just (Size (Width w) (Height h)) -> withRef bitmap $ \bitmapPtr -> copyWithWH' bitmapPtr w h >>= toRef+    Nothing -> withRef bitmap $ \bitmapPtr -> copy' bitmapPtr >>= toRef+{# fun unsafe Fl_Bitmap_color_average as colorAverage' { id `Ptr ()',cFromColor `Color',`Float' } -> `()' #}+instance (impl ~ (Color -> Float ->  IO ())) => Op (ColorAverage ()) Bitmap orig impl where+  runOp _ _ bitmap c i = withRef bitmap $ \bitmapPtr -> colorAverage' bitmapPtr c i+{# fun unsafe Fl_Bitmap_inactive as inactive' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Inactive ()) Bitmap orig impl where+  runOp _ _ bitmap = withRef bitmap $ \bitmapPtr -> inactive' bitmapPtr+{# fun unsafe Fl_Bitmap_desaturate as desaturate' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Desaturate ()) Bitmap orig impl where+  runOp _ _ bitmap = withRef bitmap $ \bitmapPtr -> desaturate' bitmapPtr++{# fun unsafe Fl_Bitmap_draw_with_cx_cy as drawWithCxCy' { id `Ptr ()',`Int',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+{# fun unsafe Fl_Bitmap_draw_with_cx as drawWithCx' { id `Ptr ()',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+{# fun unsafe Fl_Bitmap_draw_with_cy as drawWithCy' { id `Ptr ()',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+{# fun unsafe Fl_Bitmap_draw_with as drawWith' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' #}+instance (impl ~ (Position -> Size -> Maybe X -> Maybe Y -> IO ())) => Op (DrawResize ()) Bitmap orig impl where+  runOp _ _ bitmap (Position (X x) (Y y)) (Size (Width w) (Height h)) xOffset yOffset =+    case (xOffset, yOffset) of+      (Just (X xOff), Just (Y yOff)) ->+        withRef bitmap $ \bitmapPtr -> drawWithCxCy' bitmapPtr x y w h (fromIntegral xOff) (fromIntegral yOff)+      (Just (X xOff), Nothing) ->+        withRef bitmap $ \bitmapPtr -> drawWithCx' bitmapPtr x y w h (fromIntegral xOff)+      (Nothing, Just (Y yOff)) ->+        withRef bitmap $ \bitmapPtr -> drawWithCy' bitmapPtr x y w h (fromIntegral yOff)+      (Nothing, Nothing) ->+        withRef bitmap $ \bitmapPtr -> drawWith' bitmapPtr x y w h++{# fun unsafe Fl_Bitmap_draw as draw' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ (Position ->  IO ())) => Op (Draw ()) Bitmap orig impl where+  runOp _ _ image (Position (X x_pos') (Y y_pos')) = withRef image $ \imagePtr -> draw' imagePtr x_pos' y_pos'+{# fun unsafe Fl_Bitmap_uncache as uncache' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Uncache ()) Bitmap orig impl where+  runOp _ _ bitmap = withRef bitmap $ \bitmapPtr -> uncache' bitmapPtr
+ src/Graphics/UI/FLTK/LowLevel/Box.chs view
@@ -0,0 +1,72 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Box+    (+     -- * Constructor+     boxNew,+     boxNewWithBoxtype+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_BoxC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Widget++{# fun Fl_Box_New as boxNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Box_New_WithLabel as boxNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_OverriddenBox_New_WithLabel as overriddenBoxNewWithLabel' { `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenBox_New as overriddenBoxNew' { `Int',`Int',`Int',`Int', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_Box_New_WithBoxtype as boxNewWithBoxtype' {cFromEnum `Boxtype',  `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_OverriddenBox_New_WithBoxtype as overriddenBoxNewWithBoxtype' {cFromEnum `Boxtype',  `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+boxNew :: Rectangle -> Maybe String -> Maybe (CustomWidgetFuncs Box) -> IO (Ref Box)+boxNew rectangle l' funcs' =+  widgetMaker+    rectangle+    l'+    funcs'+    boxNew'+    boxNewWithLabel'+    overriddenBoxNew'+    overriddenBoxNewWithLabel'++boxNewWithBoxtype :: Boxtype -> Rectangle -> String -> Maybe (CustomWidgetFuncs Box) -> IO (Ref Box)+boxNewWithBoxtype boxtype' rectangle' l' funcs' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle'+    in case funcs' of+        Just fs -> do+          ptr <- customWidgetFunctionStruct fs+          overriddenBoxNewWithBoxtype' boxtype' x_pos y_pos width height l' (castPtr ptr) >>= toRef+        Nothing ->+          boxNewWithBoxtype' boxtype' x_pos y_pos width height l' >>= toRef++{#fun Fl_Box_handle as boxHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Box orig impl where+  runOp _ _ box event = withRef box (\p -> boxHandle' p (fromIntegral . fromEnum $ event))+++-- $functions+-- @+--+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Box"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Browser.chs view
@@ -0,0 +1,366 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Browser+    (+     -- * Constructor+     browserNew,+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_BrowserC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Widget++{# fun Fl_Browser_New as browserNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Browser_New_WithLabel as browserNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_OverriddenBrowser_New_WithLabel as overriddenBrowserNewWithLabel' { `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenBrowser_New as overriddenBrowserNew' { `Int',`Int',`Int',`Int', id `Ptr ()'} -> `Ptr ()' id #}+browserNew :: Rectangle -> Maybe String -> Maybe (CustomWidgetFuncs Browser) -> IO (Ref Browser)+browserNew rectangle l' funcs' =+  widgetMaker+    rectangle+    l'+    funcs'+    browserNew'+    browserNewWithLabel'+    overriddenBrowserNew'+    overriddenBrowserNewWithLabel'++{#fun Fl_Browser_handle as browserHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Browser orig impl where+  runOp _ _ browser event = withRef browser (\p -> browserHandle' p (fromIntegral . fromEnum $ event))+{# fun unsafe Fl_Browser_Destroy as browserDestroy' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (Destroy ()) Browser orig impl where+  runOp _ _ browser = swapRef browser $ \browserPtr -> do+    browserDestroy' browserPtr+    return nullPtr+{# fun unsafe Fl_Browser_remove as remove' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (Remove ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> remove' browserPtr line+{# fun unsafe Fl_Browser_add as add' { id `Ptr ()',`String' } -> `()' #}+instance (impl ~ (String ->  IO ())) => Op (Add ()) Browser orig impl where+  runOp _ _ browser newtext = withRef browser $ \browserPtr -> add' browserPtr newtext+{# fun unsafe Fl_Browser_insert as insert' { id `Ptr ()',`Int',`String' } -> `()' #}+instance (impl ~ (Int -> String ->  IO ())) => Op (Insert ()) Browser orig impl where+  runOp _ _ browser line newtext = withRef browser $ \browserPtr -> insert' browserPtr line newtext+{# fun unsafe Fl_Browser_move as move' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ (Int -> Int ->  IO ())) => Op (Move ()) Browser orig impl where+  runOp _ _ browser to from = withRef browser $ \browserPtr -> move' browserPtr to from+{# fun unsafe Fl_Browser_load as load' { id `Ptr ()',`String' } -> `Int' #}+instance (impl ~ (String ->  IO (Int))) => Op (Load ()) Browser orig impl where+  runOp _ _ browser filename = withRef browser $ \browserPtr -> load' browserPtr filename+{# fun unsafe Fl_Browser_swap as swap' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ (Int -> Int ->  IO ())) => Op (Swap ()) Browser orig impl where+  runOp _ _ browser a b = withRef browser $ \browserPtr -> swap' browserPtr a b+{# fun unsafe Fl_Browser_clear as clear' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Clear ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> clear' browserPtr+{# fun unsafe Fl_Browser_size as size' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetSize ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> size' browserPtr+{# fun unsafe Fl_Browser_set_size as setSize' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ (Int -> Int ->  IO ())) => Op (SetSize ()) Browser orig impl where+  runOp _ _ browser w h = withRef browser $ \browserPtr -> setSize' browserPtr w h+{# fun unsafe Fl_Browser_topline as topline' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetTopline ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> topline' browserPtr+{# fun unsafe Fl_Browser_lineposition as lineposition' { id `Ptr ()',`Int', cFromEnum `LinePosition' } -> `()' #}+instance (impl ~ (Int -> LinePosition ->  IO ())) => Op (Lineposition ()) Browser orig impl where+  runOp _ _ browser line pos = withRef browser $ \browserPtr -> lineposition' browserPtr line pos+{# fun unsafe Fl_Browser_set_topline as setTopline' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetTopline ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> setTopline' browserPtr line+{# fun unsafe Fl_Browser_bottomline as bottomline' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetBottomline ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> bottomline' browserPtr line+{# fun unsafe Fl_Browser_middleline as middleline' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetMiddleline ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> middleline' browserPtr line+{# fun unsafe Fl_Browser_select_with_val as select' { id `Ptr ()',`Int', cFromBool `Bool' } -> `Int' #}+instance (impl ~ (Int -> Bool -> IO (Int))) => Op (Select ()) Browser orig impl where+  runOp _ _ browser selectType line = withRef browser $ \browserPtr -> select' browserPtr selectType line+{# fun unsafe Fl_Browser_selected as selected' { id `Ptr ()',`Int' } -> `Bool' cToBool #}+instance (impl ~ (Int ->  IO (Bool))) => Op (Selected ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> selected' browserPtr line+{# fun unsafe Fl_Browser_show_with_line as showWithLine' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (ShowWidgetLine ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> showWithLine' browserPtr line+{# fun unsafe Fl_Browser_show as show' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (ShowWidget ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> show' browserPtr+{# fun unsafe Fl_Browser_hide_with_line as hideWithLine' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (HideLine ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> hideWithLine' browserPtr line+{# fun unsafe Fl_Browser_hide as hide' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Hide ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> hide' browserPtr+{# fun unsafe Fl_Browser_visible as visible' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Int))) => Op (Visible ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> visible' browserPtr line+{# fun unsafe Fl_Browser_value as value' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetValue ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> value' browserPtr+{# fun unsafe Fl_Browser_set_value as setValue' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetValue ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> setValue' browserPtr line+{# fun unsafe Fl_Browser_text as text' { id `Ptr ()',`Int' } -> `String' #}+instance (impl ~ (Int ->  IO (String))) => Op (GetText ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> text' browserPtr line+{# fun unsafe Fl_Browser_set_text as setText' { id `Ptr ()',`Int',`String' } -> `()' #}+instance (impl ~ (Int -> String ->  IO ())) => Op (SetText ()) Browser orig impl where+  runOp _ _ browser line newtext = withRef browser $ \browserPtr -> setText' browserPtr line newtext+{# fun unsafe Fl_Browser_format_char as formatChar' { id `Ptr ()' } -> `CChar' id #}+instance (impl ~ ( IO (Char))) => Op (GetFormatChar ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> formatChar' browserPtr >>= return . castCCharToChar+{# fun unsafe Fl_Browser_set_format_char as setFormatChar' { id `Ptr ()', id `CChar' } -> `()' #}+instance (impl ~ (Char ->  IO ())) => Op (SetFormatChar ()) Browser orig impl where+  runOp _ _ browser c = withRef browser $ \browserPtr -> setFormatChar' browserPtr (castCharToCChar c)+{# fun unsafe Fl_Browser_column_char as columnChar' { id `Ptr ()' } -> `CChar' id #}+instance (impl ~ ( IO (Char))) => Op (GetColumnChar ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> columnChar' browserPtr >>= return . castCCharToChar+{# fun unsafe Fl_Browser_set_column_char as setColumnChar' { id `Ptr ()',id `CChar' } -> `()' #}+instance (impl ~ (Char ->  IO ())) => Op (SetColumnChar ()) Browser orig impl where+  runOp _ _ browser c = withRef browser $ \browserPtr -> setColumnChar' browserPtr (castCharToCChar c)+{# fun unsafe Fl_Browser_column_widths as columnWidths' { id `Ptr ()' } -> `Ptr CInt' id #}+instance (impl ~ ( IO [Int])) => Op (GetColumnWidths ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> do+    ptr <- columnWidths' browserPtr+    if (ptr == nullPtr)+      then return []+      else go ptr []+    where+      go ptr accum = do+        curr <- peek ptr+        if (curr == 0)+          then return accum+          else go (ptr `plusPtr` (sizeOf (undefined :: CInt))) (accum ++ [fromIntegral curr])++{# fun unsafe Fl_Browser_set_column_widths as setColumnWidths' { id `Ptr ()', id `Ptr CInt' } -> `()' #}+instance (impl ~ ([Int] ->  IO ())) => Op (SetColumnWidths ()) Browser orig impl where+  runOp _ _ browser arr =+    withRef browser $ \browserPtr -> do+      ptr <- newArray ((map fromIntegral arr) :: [CInt])+      setColumnWidths' browserPtr (castPtr ptr)+{# fun unsafe Fl_Browser_displayed as displayed' { id `Ptr ()',`Int' } -> `Bool' cToBool #}+instance (impl ~ (Int ->  IO (Bool))) => Op (Displayed ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> displayed' browserPtr line+{# fun unsafe Fl_Browser_make_visible as makeVisible' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (MakeVisible ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> makeVisible' browserPtr line+{# fun unsafe Fl_Browser_set_icon as setIcon' { id `Ptr ()',`Int',id `Ptr ()' } -> `()' #}+instance (impl ~ (Int -> Ref Image ->  IO ())) => Op (SetIcon ()) Browser orig impl where+  runOp _ _ browser line icon = withRef browser $ \browserPtr -> withRef icon $ \iconPtr -> setIcon' browserPtr line iconPtr+{# fun unsafe Fl_Browser_icon as icon' { id `Ptr ()',`Int' } -> `Ptr ()' id #}+instance (impl ~ (Int ->  IO (Ref Image))) => Op (GetIcon ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> icon' browserPtr line >>= toRef+{# fun unsafe Fl_Browser_remove_icon as removeIcon' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (RemoveIcon ()) Browser orig impl where+  runOp _ _ browser line = withRef browser $ \browserPtr -> removeIcon' browserPtr line+{# fun unsafe Fl_Browser_deselect as deselect' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (Deselect ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> deselect' browserPtr+{# fun unsafe Fl_Browser_deselect_with_docallbacks as deselectWithDocallbacks' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Int))) => Op (DeselectAndCallback ()) Browser orig impl where+  runOp _ _ browser docallbacks = withRef browser $ \browserPtr -> deselectWithDocallbacks' browserPtr docallbacks+{# fun unsafe Fl_Browser_position as position' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetPosition ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> position' browserPtr+{# fun unsafe Fl_Browser_set_position as setPosition' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetPosition ()) Browser orig impl where+  runOp _ _ browser pos = withRef browser $ \browserPtr -> setPosition' browserPtr pos+{# fun unsafe Fl_Browser_hposition as hposition' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetHposition ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> hposition' browserPtr+{# fun unsafe Fl_Browser_set_hposition as setHposition' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetHposition ()) Browser orig impl where+  runOp _ _ browser int = withRef browser $ \browserPtr -> setHposition' browserPtr int+{# fun unsafe Fl_Browser_has_scrollbar as hasScrollbar' { id `Ptr ()' } -> `ScrollbarMode' cToEnum #}+instance (impl ~ ( IO (ScrollbarMode))) => Op (GetHasScrollbar ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> hasScrollbar' browserPtr+{# fun unsafe Fl_Browser_set_has_scrollbar as setHasScrollbar' { id `Ptr ()', cFromEnum `ScrollbarMode' } -> `()' #}+instance (impl ~ (ScrollbarMode->  IO ())) => Op (SetHasScrollbar ()) Browser orig impl where+  runOp _ _ browser mode = withRef browser $ \browserPtr -> setHasScrollbar' browserPtr mode+{# fun unsafe Fl_Browser_textfont as textfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ ( IO (Font))) => Op (GetTextfont ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> textfont' browserPtr+{# fun unsafe Fl_Browser_set_textfont as setTextfont' { id `Ptr ()',cFromFont `Font' } -> `()' #}+instance (impl ~ (Font ->  IO ())) => Op (SetTextfont ()) Browser orig impl where+  runOp _ _ browser font = withRef browser $ \browserPtr -> setTextfont' browserPtr font+{# fun unsafe Fl_Browser_textsize as textsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ ( IO (FontSize))) => Op (GetTextsize ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> textsize' browserPtr >>= return . FontSize+{# fun unsafe Fl_Browser_set_textsize as setTextsize' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ())) => Op (SetTextsize ()) Browser orig impl where+  runOp _ _ browser (FontSize newsize) = withRef browser $ \browserPtr -> setTextsize' browserPtr newsize+{# fun unsafe Fl_Browser_textcolor as textcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetTextcolor ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> textcolor' browserPtr+{# fun unsafe Fl_Browser_set_textcolor as setTextcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetTextcolor ()) Browser orig impl where+  runOp _ _ browser col = withRef browser $ \browserPtr -> setTextcolor' browserPtr col+{# fun unsafe Fl_Browser_scrollbar_size as scrollbarSize' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetScrollbarSize ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> scrollbarSize' browserPtr+{# fun unsafe Fl_Browser_set_scrollbar_size as setScrollbarSize' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetScrollbarSize ()) Browser orig impl where+  runOp _ _ browser newsize = withRef browser $ \browserPtr -> setScrollbarSize' browserPtr newsize+{# fun unsafe Fl_Browser_scrollbar_width as scrollbarWidth' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetScrollbarWidth ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> scrollbarWidth' browserPtr+{# fun unsafe Fl_Browser_set_scrollbar_width as setScrollbarWidth' { id `Ptr ()', `Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetScrollbarWidth ()) Browser orig impl where+  runOp _ _ browser width = withRef browser $ \browserPtr -> setScrollbarWidth' browserPtr width+{# fun unsafe Fl_Browser_sort_with_flags as sortWithFlags' {id `Ptr ()', cFromEnum `SortType'} -> `()' #}+instance (impl ~ (SortType -> IO ())) => Op (SortWithSortType ()) Browser orig impl where+  runOp _ _ browser sorttype' = withRef browser $ \browserPtr -> sortWithFlags' browserPtr sorttype'+{# fun unsafe Fl_Browser_sort as sort' {id `Ptr ()'} -> `()' #}+instance (impl ~ IO ()) => Op (Sort ()) Browser orig impl where+  runOp _ _ browser = withRef browser $ \browserPtr -> sort' browserPtr+++-- $functions+-- @+--+-- add :: 'Ref' 'Browser' -> 'String' -> 'IO' ()+--+-- clear :: 'Ref' 'Browser' -> 'IO' ()+--+-- deselect :: 'Ref' 'Browser' -> 'IO' 'Int'+--+-- deselectAndCallback :: 'Ref' 'Browser' -> 'Int' -> 'IO' 'Int'+--+-- destroy :: 'Ref' 'Browser' -> 'IO' ()+--+-- displayed :: 'Ref' 'Browser' -> 'Int' -> 'IO' 'Bool'+--+-- getColumnChar :: 'Ref' 'Browser' -> 'IO' 'Char'+--+-- getColumnWidths :: 'Ref' 'Browser' -> 'IO' ['Int']+--+-- getFormatChar :: 'Ref' 'Browser' -> 'IO' 'Char'+--+-- getHasScrollbar :: 'Ref' 'Browser' -> 'IO' 'ScrollbarMode'+--+-- getHposition :: 'Ref' 'Browser' -> 'IO' 'Int'+--+-- getIcon :: 'Ref' 'Browser' -> 'Int' -> 'IO' ('Ref' 'Image')+--+-- getPosition :: 'Ref' 'Browser' -> 'IO' 'Int'+--+-- getScrollbarSize :: 'Ref' 'Browser' -> 'IO' 'Int'+--+-- getScrollbarWidth :: 'Ref' 'Browser' -> 'IO' 'Int'+--+-- getSize :: 'Ref' 'Browser' -> 'IO' 'Int'+--+-- getText :: 'Ref' 'Browser' -> 'Int' -> 'IO' 'String'+--+-- getTextcolor :: 'Ref' 'Browser' -> 'IO' 'Color'+--+-- getTextfont :: 'Ref' 'Browser' -> 'IO' 'Font'+--+-- getTextsize :: 'Ref' 'Browser' -> 'IO' 'FontSize'+--+-- getTopline :: 'Ref' 'Browser' -> 'IO' 'Int'+--+-- getValue :: 'Ref' 'Browser' -> 'IO' 'Int'+--+-- handle :: 'Ref' 'Browser' -> 'Event' -> 'IO' 'Int'+--+-- hide :: 'Ref' 'Browser' -> 'IO' ()+--+-- hideLine :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- insert :: 'Ref' 'Browser' -> 'Int' -> 'String' -> 'IO' ()+--+-- lineposition :: 'Ref' 'Browser' -> 'Int' -> 'LinePosition' -> 'IO' ()+--+-- load :: 'Ref' 'Browser' -> 'String' -> 'IO' 'Int'+--+-- makeVisible :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- move :: 'Ref' 'Browser' -> 'Int' -> 'Int' -> 'IO' ()+--+-- remove :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- removeIcon :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- select :: 'Ref' 'Browser' -> 'Int' -> 'Bool' -> 'IO' 'Int'+--+-- selected :: 'Ref' 'Browser' -> 'Int' -> 'IO' 'Bool'+--+-- setBottomline :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- setColumnChar :: 'Ref' 'Browser' -> 'Char' -> 'IO' ()+--+-- setColumnWidths :: 'Ref' 'Browser' -> ['Int'] -> 'IO' ()+--+-- setFormatChar :: 'Ref' 'Browser' -> 'Char' -> 'IO' ()+--+-- setHasScrollbar :: 'Ref' 'Browser' -> 'ScrollbarMode' -> 'IO' ()+--+-- setHposition :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- setIcon :: 'Ref' 'Browser' -> 'Int' -> 'Ref' 'Image' -> 'IO' ()+--+-- setMiddleline :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- setPosition :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- setScrollbarSize :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- setScrollbarWidth :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- setSize :: 'Ref' 'Browser' -> 'Int' -> 'Int' -> 'IO' ()+--+-- setText :: 'Ref' 'Browser' -> 'Int' -> 'String' -> 'IO' ()+--+-- setTextcolor :: 'Ref' 'Browser' -> 'Color' -> 'IO' ()+--+-- setTextfont :: 'Ref' 'Browser' -> 'Font' -> 'IO' ()+--+-- setTextsize :: 'Ref' 'Browser' -> 'FontSize' -> 'IO' ()+--+-- setTopline :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- setValue :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- showWidget :: 'Ref' 'Browser' -> 'IO' ()+--+-- showWidgetLine :: 'Ref' 'Browser' -> 'Int' -> 'IO' ()+--+-- sort :: 'Ref' 'Browser' -> 'IO' ()+--+-- sortWithSortType :: 'Ref' 'Browser' -> 'SortType' -> 'IO' ()+--+-- swap :: 'Ref' 'Browser' -> 'Int' -> 'Int' -> 'IO' ()+--+-- visible :: 'Ref' 'Browser' -> 'Int' -> 'IO' 'Int'+--+-- @+++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Group"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Browser"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Button.chs view
@@ -0,0 +1,212 @@+{-# LANGUAGE CPP, EmptyDataDecls, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Button+    (+     buttonCustom,+     buttonNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Fl_Button functions+     --+     -- $Fl_Buttonfunctions+    )+where+#include "Fl_C.h"+#include "Fl_ButtonC.h"+#include "Fl_WidgetC.h"+#include "Fl_GroupC.h"+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Widget+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Button_New as widgetNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Button_New_WithLabel as widgetNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_OverriddenButton_New_WithLabel as overriddenWidgetNewWithLabel' { `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenButton_New as overriddenWidgetNew' { `Int',`Int',`Int',`Int', id `Ptr ()'} -> `Ptr ()' id #}+buttonCustom :: Rectangle -> Maybe String -> Maybe (CustomWidgetFuncs Button) -> IO (Ref Button)+buttonCustom rectangle l' funcs' =+  widgetMaker+    rectangle+    l'+    funcs'+    widgetNew'+    widgetNewWithLabel'+    overriddenWidgetNew'+    overriddenWidgetNewWithLabel'++buttonNew :: Rectangle -> Maybe String -> IO (Ref Button)+buttonNew rectangle l' =+  widgetMaker+    rectangle+    l'+    Nothing+    widgetNew'+    widgetNewWithLabel'+    overriddenWidgetNew'+    overriddenWidgetNewWithLabel'++{# fun Fl_Button_Destroy as widgetDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (( IO ()))) => Op (Destroy ()) Button orig impl where+  runOp _ _ button = swapRef button $+                 \buttonPtr ->+                  widgetDestroy' buttonPtr >>+                  return nullPtr+{# fun Fl_Button_draw_super as drawSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (( IO ()))) => Op (DrawSuper ()) Button orig impl where+  runOp _ _ button = withRef button $ \buttonPtr -> drawSuper' buttonPtr+{# fun Fl_Button_handle_super as handleSuper' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ ((Int ->  IO (Int)))) => Op (HandleSuper ()) Button orig impl where+  runOp _ _ button event = withRef button $ \buttonPtr -> handleSuper' buttonPtr event+{#fun Fl_Button_handle as buttonHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ ((Event -> IO Int))) => Op (Handle ()) Button orig impl where+  runOp _ _ button event = withRef button (\p -> buttonHandle' p (fromIntegral . fromEnum $ event))+{# fun Fl_Button_resize_super as resizeSuper' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ ((Rectangle -> IO ()))) => Op (ResizeSuper ()) Button orig impl where+  runOp _ _ button rectangle =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in withRef button $ \buttonPtr -> resizeSuper' buttonPtr x_pos y_pos width height+{# fun Fl_Button_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ ((Rectangle -> IO ()))) => Op (Resize ()) Button orig impl where+  runOp _ _ button rectangle = withRef button $ \buttonPtr -> do+                                 let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+                                 resize' buttonPtr x_pos y_pos w_pos h_pos+{# fun Fl_Button_hide_super as hideSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (( IO ()))) => Op (HideSuper ()) Button orig impl where+  runOp _ _ button = withRef button $ \buttonPtr -> hideSuper' buttonPtr+{# fun Fl_Button_hide as hide' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (( IO ()))) => Op (Hide ()) Button orig impl where+  runOp _ _ button = withRef button $ \buttonPtr -> hide' buttonPtr+{# fun Fl_Button_show_super as showSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (( IO ()))) => Op (ShowWidgetSuper ()) Button orig impl where+  runOp _ _ button = withRef button $ \buttonPtr -> showSuper' buttonPtr+{# fun Fl_Button_show as buttonShow' {id `Ptr ()'} -> `()' supressWarningAboutRes #}+instance (impl ~ ((IO ()))) => Op (ShowWidget ()) Button orig impl where+  runOp _ _ button = withRef button $ (\p -> buttonShow' p)+{# fun unsafe Fl_Button_value as value' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (( IO (Bool)))) => Op (GetValue ()) Button orig impl where+  runOp _ _ b = withRef b $ \bPtr -> value' bPtr+{# fun unsafe Fl_Button_set_value as setValue' { id `Ptr ()', fromBool `Bool' } -> `Bool' toBool #}+instance (impl ~ ((Bool ->  IO (Bool)))) => Op (SetValue ()) Button orig impl where+  runOp _ _ b v = withRef b $ \bPtr -> setValue' bPtr v+{# fun unsafe Fl_Button_set as set' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (( IO (Bool)))) => Op (Set ()) Button orig impl where+  runOp _ _ b = withRef b $ \bPtr -> set' bPtr+{# fun unsafe Fl_Button_clear as clear' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (( IO (Bool)))) => Op (Clear ()) Button orig impl where+  runOp _ _ b = withRef b $ \bPtr -> clear' bPtr+{# fun unsafe Fl_Button_setonly as setonly' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (( IO ()))) => Op (Setonly ()) Button orig impl where+  runOp _ _ b = withRef b $ \bPtr -> setonly' bPtr+{# fun unsafe Fl_Button_get_shortcut as getShortcut' { id `Ptr ()' } -> `FlShortcut' fromIntegral #}+instance (impl ~ (( IO (FlShortcut)))) => Op (GetShortcut ()) Button orig impl where+  runOp _ _ b = withRef b $ \bPtr -> getShortcut' bPtr+{# fun unsafe Fl_Button_set_shortcut as setShortcut' { id `Ptr ()',fromIntegral `Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ ((Int ->  IO ()))) => Op (SetShortcut ()) Button orig impl where+  runOp _ _ b s = withRef b $ \bPtr -> setShortcut' bPtr s+{# fun unsafe Fl_Button_down_box as downBox' { id `Ptr ()' } -> `Boxtype' cToEnum #}+instance (impl ~ (( IO (Boxtype)))) => Op (GetDownBox ()) Button orig impl where+  runOp _ _ b = withRef b $ \bPtr -> downBox' bPtr+{# fun unsafe Fl_Button_set_down_box as setDownBox' { id `Ptr ()',cFromEnum `Boxtype' } -> `()' supressWarningAboutRes #}+instance (impl ~ ((Boxtype ->  IO ()))) => Op (SetDownBox ()) Button orig impl where+  runOp _ _ b boxtype = withRef b $ \bPtr -> setDownBox' bPtr boxtype+{# fun unsafe Fl_Button_down_color as downColor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ (( IO (Color)))) => Op (GetDownColor ()) Button orig impl where+  runOp _ _ b = withRef b $ \bPtr -> downColor' bPtr+{# fun unsafe Fl_Button_set_down_color as setDownColor' { id `Ptr ()',cFromColor `Color' } -> `()' supressWarningAboutRes #}+instance (impl ~ ((Color ->  IO ()))) => Op (SetDownColor ()) Button orig impl where+  runOp _ _ b c = withRef b $ \bPtr -> setDownColor' bPtr c+{# fun Fl_Button_draw_box as buttonDrawBox' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+{# fun Fl_Button_draw_box_with_tc as buttonDrawBoxWithTC' { id `Ptr ()', cFromEnum `Boxtype', cFromColor`Color' } -> `()' supressWarningAboutRes #}+{# fun Fl_Button_draw_box_with_txywhc as buttonDrawBoxWithTXywhC' { id `Ptr ()', cFromEnum `Boxtype', `Int',`Int',`Int',`Int', cFromColor `Color' } -> `()' supressWarningAboutRes #}+instance (impl ~ ((IO ()))) => Op (DrawBox ()) Button orig impl where+  runOp _ _ button = withRef button $ \buttonPtr -> buttonDrawBox' buttonPtr+instance (impl ~ (( Boxtype -> Color -> Maybe Rectangle -> IO ()))) => Op (DrawBoxWithBoxtype ()) Button orig impl where+  runOp _ _ button bx c Nothing =+              withRef button $ \buttonPtr -> buttonDrawBoxWithTC' buttonPtr bx c+  runOp _ _ button bx c (Just r) =+              withRef button $ \buttonPtr -> do+                let (x_pos,y_pos,w_pos,h_pos) = fromRectangle r+                buttonDrawBoxWithTXywhC' buttonPtr bx x_pos y_pos w_pos h_pos c+{# fun Fl_Button_draw_backdrop as buttonDrawBackdrop' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (DrawBackdrop ()) Button orig impl where+  runOp _ _ button = withRef button $ \buttonPtr -> buttonDrawBackdrop' buttonPtr+{# fun Fl_Button_draw_focus as buttonDrawFocus' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+{# fun Fl_Button_draw_focus_with_txywh as buttonDrawFocusWithTXywh' { id `Ptr ()', cFromEnum `Boxtype', `Int', `Int', `Int', `Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Maybe (Boxtype, Rectangle) -> IO ())) => Op (DrawFocus ()) Button orig impl where+  runOp _ _ button Nothing =+                withRef button $ \ buttonPtr -> buttonDrawFocus' buttonPtr+  runOp _ _ button (Just (bx, r)) =+                withRef button $ \buttonPtr -> do+                  let (x_pos,y_pos,w_pos,h_pos) = fromRectangle r+                  buttonDrawFocusWithTXywh' buttonPtr bx x_pos y_pos w_pos h_pos++-- $Fl_Buttonfunctions+-- @+-- clear :: 'Ref' 'Button' -> 'IO' 'Bool'+--+-- destroy :: 'Ref' 'Button' -> 'IO' ()+--+-- drawBackdrop :: 'Ref' 'Button' -> 'IO' ()+--+-- drawBox :: 'Ref' 'Button' -> 'IO' ()+--+-- drawBoxWithBoxtype :: 'Ref' 'Button' -> 'Boxtype' -> 'Color' -> 'Maybe' 'Rectangle' -> 'IO' ()+--+-- drawFocus :: 'Ref' 'Button' -> 'Maybe' ('Boxtype', 'Rectangle') -> 'IO' ()+--+-- drawSuper :: 'Ref' 'Button' -> 'IO' ()+--+-- getDownBox :: 'Ref' 'Button' -> 'IO' 'Boxtype'+--+-- getDownColor :: 'Ref' 'Button' -> 'IO' 'Color'+--+-- getShortcut :: 'Ref' 'Button' -> 'IO' 'FlShortcut'+--+-- getValue :: 'Ref' 'Button' -> 'IO' 'Bool'+--+-- handle :: 'Ref' 'Button' -> 'Event' -> 'IO' 'Int'+--+-- handleSuper :: 'Ref' 'Button' -> 'Int' -> 'IO' 'Int'+--+-- hide :: 'Ref' 'Button' -> 'IO' ()+--+-- hideSuper :: 'Ref' 'Button' -> 'IO' ()+--+-- resize :: 'Ref' 'Button' -> 'Rectangle' -> 'IO' ()+--+-- resizeSuper :: 'Ref' 'Button' -> 'Rectangle' -> 'IO' ()+--+-- set :: 'Ref' 'Button' -> 'IO' 'Bool'+--+-- setDownBox :: 'Ref' 'Button' -> 'Boxtype' -> 'IO' ()+--+-- setDownColor :: 'Ref' 'Button' -> 'Color' -> 'IO' ()+--+-- setShortcut :: 'Ref' 'Button' -> 'Int' -> 'IO' ()+--+-- setValue :: 'Ref' 'Button' -> 'Bool' -> 'IO' 'Bool'+--+-- setonly :: 'Ref' 'Button' -> 'IO' ()+--+-- showWidget :: 'Ref' 'Button' -> 'IO' ()+--+-- showWidgetSuper :: 'Ref' 'Button' -> 'IO' ()+--+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Button"+-- @
+ src/Graphics/UI/FLTK/LowLevel/CheckButton.chs view
@@ -0,0 +1,55 @@+{-# LANGUAGE CPP, EmptyDataDecls, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.CheckButton+    (+     checkButtonNew+     -- * Hierarchy+     --+     -- $hierarchy+     -- * CheckButton+     --+     -- $CheckButtonfunctions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Check_ButtonC.h"+#include "Fl_WidgetC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Check_Button_New as widgetNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Check_Button_New_WithLabel as widgetNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+checkButtonNew :: Rectangle -> Maybe String -> IO (Ref CheckButton)+checkButtonNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> widgetNew' x_pos y_pos width height >>= toRef+        Just l -> widgetNewWithLabel' x_pos y_pos width height l >>= toRef++{# fun Fl_Check_Button_Destroy as widgetDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Destroy ()) CheckButton orig impl where+  runOp _ _ button = swapRef button $+                    \buttonPtr ->+                     widgetDestroy' buttonPtr >>+                     return nullPtr++-- $CheckButtonfunctions+--+-- @+-- destroy :: 'Ref' 'CheckButton' -> 'IO' ()++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Button"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.CheckButton"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Choice.chs view
@@ -0,0 +1,81 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables  #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Choice+    (+     -- * Constructor+     choiceNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Choice+     --+     -- $Choicefunctions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_ChoiceC.h"+#include "Fl_WidgetC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.MenuItem+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Choice_New as choiceNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Choice_New_WithLabel as choiceNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+choiceNew :: Rectangle -> Maybe String -> IO (Ref Choice)+choiceNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> choiceNew' x_pos y_pos width height >>=+                             toRef+        Just l -> choiceNewWithLabel' x_pos y_pos width height l >>=+                               toRef+{# fun Fl_Choice_Destroy as widgetDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Choice orig impl where+  runOp _ _ menu_ = swapRef menu_ $+                          \menu_Ptr ->+                             widgetDestroy' menu_Ptr >>+                             return nullPtr+{# fun unsafe Fl_Choice_value as value' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetValue ()) Choice orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> value' menu_Ptr+{# fun unsafe Fl_Choice_set_value_with_item as valueWithItem' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+{# fun unsafe Fl_Choice_set_value_with_index as valueWithIndex' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (MenuItemReference -> IO (Int))) => Op (SetValue ()) Choice orig impl where+  runOp _ _ menu_ menu_item_reference =+    withRef menu_ $ \menu_Ptr ->+        case menu_item_reference of+          (MenuItemByIndex (MenuItemIndex index')) -> valueWithIndex' menu_Ptr index'+          (MenuItemByPointer (MenuItemPointer menu_item)) ->+              withRef menu_item $ \menu_itemPtr ->+                  valueWithItem' menu_Ptr menu_itemPtr+{#fun Fl_Choice_handle as menu_Handle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Choice orig impl where+  runOp _ _ menu_ event = withRef menu_ (\p -> menu_Handle' p (fromIntegral . fromEnum $ event))++-- $Choicefunctions+--+-- @+-- destroy :: 'Ref' 'Choice' -> 'IO' ()+--+-- getValue :: 'Ref' 'Choice' -> 'IO' 'Int'+--+-- handle :: 'Ref' 'Choice' -> 'Event' -> 'IO' 'Int'+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.MenuPrim"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Choice"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Clock.chs view
@@ -0,0 +1,111 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Clock+  (+    ClockType(..),+    clockNew,+    clockNewWithType,+    Hour(..),+    Minute(..),+    Second(..),+    ClockByTime (..),+    ClockSinceEpoch(..),+    ClockSetTimeType(..)+    -- * Hierarchy+    --+    -- $hierarchy++    -- * Clock+    --+    -- $Clockfunctions+  )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_ClockC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch+import Data.Char+#c+enum ClockType {+  SquareClock = FL_SQUARE_CLOCK,+  RoundClock = FL_ROUND_CLOCK,+  AnalogClock = FL_ANALOG_CLOCK,+  DigitalClock = FL_DIGITAL_CLOCK+};+#endc+{# enum ClockType {} #}+newtype Hour = Hour Int+newtype Minute = Minute Int+newtype Second = Second Int+data ClockByTime = ClockByTime Hour Minute Second+data ClockSinceEpoch = ClockSinceEpoch Second+data ClockSetTimeType = ClockSetByTime ClockByTime | ClockSetSinceEpoch ClockSinceEpoch+{# fun Fl_Clock_New as clockNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Clock_New_WithLabel as clockNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_Clock_New_WithClockType as clockNewWithClockType' { id `CUChar', `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+clockNew :: Rectangle -> Maybe String -> IO (Ref Clock)+clockNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> clockNew' x_pos y_pos width height >>=+                             toRef+        Just l -> clockNewWithLabel' x_pos y_pos width height l >>=+                             toRef+clockNewWithType :: ClockType -> Rectangle -> String -> IO (Ref Clock)+clockNewWithType clocktype' rectangle' label' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle'+    in+     clockNewWithClockType' (castCharToCUChar . chr . fromEnum $ clocktype') x_pos y_pos width height label'  >>= toRef++{# fun Fl_Clock_set_value_with_hms as setValueWithhms' {id `Ptr ()', `Int', `Int', `Int'} -> `()' #}+{# fun Fl_Clock_set_value as setValue' {id `Ptr ()', id `CULong'} -> `()' #}+instance (impl ~ (ClockSetTimeType -> IO ())) => Op (SetValue()) Clock orig impl where+  runOp _ _ clock' clockvalue = withRef clock' $ \clockPtr ->+    case clockvalue of+     ClockSetByTime (ClockByTime (Hour h)(Minute m) (Second s)) -> setValueWithhms' clockPtr h m s+     ClockSetSinceEpoch (ClockSinceEpoch (Second s)) -> setValue' clockPtr (fromIntegral s)++{# fun Fl_Clock_value as getValue' {id `Ptr ()'} -> `CULong' id #}+instance (impl ~ (IO ClockSinceEpoch)) => Op (GetValueSinceEpoch ()) Clock orig impl where+  runOp _ _ clock' = withRef clock' $ \clockPtr ->+    getValue' clockPtr >>= return . ClockSinceEpoch . Second . fromIntegral++{# fun Fl_Clock_hour   as clockHour'   {id `Ptr ()'} -> `Int'  #}+{# fun Fl_Clock_minute as clockMinute' {id `Ptr ()'} -> `Int'  #}+{# fun Fl_Clock_second as clockSecond' {id `Ptr ()'} -> `Int'  #}+instance (impl ~ (IO ClockByTime)) => Op (GetValue ()) Clock orig impl where+  runOp _ _ clock' = withRef clock' $ \clockPtr -> do+    hour' <- clockHour' clockPtr+    minute' <- clockMinute' clockPtr+    second' <- clockSecond' clockPtr+    return $ ClockByTime (Hour hour') (Minute minute') (Second second')++{#fun Fl_Clock_handle as menu_Handle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Clock orig impl where+  runOp _ _ menu_ event = withRef menu_ (\p -> menu_Handle' p (fromIntegral . fromEnum $ event))++-- $Clockfunctions+--+-- @+--+-- getValue :: 'Ref' 'Clock' -> 'IO' 'ClockByTime'+--+-- getValueSinceEpoch :: 'Ref' 'Clock' -> 'IO' 'ClockSinceEpoch'+--+-- handle :: 'Ref' 'Clock' -> 'Event' -> 'IO' 'Int'+--+-- setValue :: 'Ref' 'Clock' -> 'ClockSetTimeType' -> 'IO' ()++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Clock"+-- @
+ src/Graphics/UI/FLTK/LowLevel/CopySurface.chs view
@@ -0,0 +1,58 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.CopySurface+       (+         copySurfaceNew+         -- * Hierarchy+         --+         -- $hierarchy++         -- * CopySurface+         --+         -- $CopySurfacefunctions+       )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Copy_SurfaceC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Copy_Surface_New as copySurfaceNew' {`Int', `Int'} -> `Ptr ()' id #}+copySurfaceNew :: Size -> IO (Ref CopySurface)+copySurfaceNew (Size (Width w') (Height h')) = copySurfaceNew' w' h' >>= toRef++{# fun Fl_Copy_Surface_Destroy as copySurfaceDestroy' {id `Ptr ()'} -> `()' #}+instance (impl ~ (IO ())) => Op (Destroy ()) CopySurface orig impl where+  runOp _ _ copy_surface = withRef copy_surface $ \copy_surfacePtr -> copySurfaceDestroy' copy_surfacePtr++{# fun unsafe Fl_Copy_Surface_class_name as className' { id `Ptr () ' } -> `String' #}+instance (impl ~ (IO (String))) => Op (ClassName ()) Image orig impl where+  runOp _ _ copy_surface = withRef copy_surface $ \copy_surfacePtr -> className' copy_surfacePtr++{# fun unsafe Fl_Copy_Surface_set_current as setCurrent' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (SetCurrent ()) CopySurface orig impl where+  runOp _ _ copy_surface = withRef copy_surface $ \copy_surfacePtr -> setCurrent' copy_surfacePtr++{# fun unsafe Fl_Copy_Surface_draw as draw' { id `Ptr ()',id `Ptr ()',`Int',`Int' } -> `()' #}+instance (Parent a Widget, impl ~ ( Ref a  -> Position -> IO ())) => Op (Draw ()) CopySurface orig impl where+  runOp _ _ copy_surface widget (Position (X delta_x) (Y delta_y)) = withRef copy_surface $ \copy_surfacePtr -> withRef widget $ \widgetPtr -> draw' copy_surfacePtr widgetPtr delta_x delta_y++-- $CopySurfacefunctions+--+-- @+-- destroy :: 'Ref' 'CopySurface' -> 'IO' ()+--+-- draw:: ('Parent' a 'Widget') => 'Ref' 'CopySurface' -> 'Ref' a -> 'Position' -> 'IO' ())+--+-- setCurrent :: 'Ref' 'CopySurface' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.CopySurface"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Counter.chs view
@@ -0,0 +1,98 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Counter+    (+     -- * Constructor+     counterNew+     -- * Hierarchy+     --+     -- $hierarchy++    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_CounterC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Counter_New as counterNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Counter_New_WithLabel as counterNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+counterNew :: Rectangle -> Maybe String -> IO (Ref Counter)+counterNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> counterNew' x_pos y_pos width height >>=+                             toRef+        Just l -> counterNewWithLabel' x_pos y_pos width height l >>=+                               toRef++{# fun Fl_Counter_Destroy as counterDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Counter orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+    counterDestroy' winPtr+    return nullPtr++{#fun Fl_Counter_handle as counterHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Counter orig impl where+  runOp _ _ counter event = withRef counter (\p -> counterHandle' p (fromIntegral . fromEnum $ event))+{# fun unsafe Fl_Counter_lstep as lstep' { id `Ptr ()',`Double' } -> `()' #}+instance (impl ~ (Double ->  IO ())) => Op (SetLstep ()) Counter orig impl where+  runOp _ _ counter lstep = withRef counter $ \counterPtr -> lstep' counterPtr lstep+{# fun unsafe Fl_Counter_set_textfont as setTextfont' { id `Ptr ()',cFromFont `Font' } -> `()' #}+instance (impl ~ (Font ->  IO ())) => Op (SetTextfont ()) Counter orig impl where+  runOp _ _ counter text = withRef counter $ \counterPtr -> setTextfont' counterPtr text+{# fun unsafe Fl_Counter_textfont as textfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ ( IO (Font))) => Op (GetTextfont ()) Counter orig impl where+  runOp _ _ counter = withRef counter $ \counterPtr -> textfont' counterPtr+{# fun unsafe Fl_Counter_set_textsize as setTextsize' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ())) => Op (SetTextsize ()) Counter orig impl where+  runOp _ _ counter (FontSize text) = withRef counter $ \counterPtr -> setTextsize' counterPtr text+{# fun unsafe Fl_Counter_textsize as textsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ ( IO (FontSize))) => Op (GetTextsize ()) Counter orig impl where+  runOp _ _ counter = withRef counter $ \counterPtr -> textsize' counterPtr >>= return . FontSize+{# fun unsafe Fl_Counter_set_textcolor as setTextcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetTextcolor ()) Counter orig impl where+  runOp _ _ counter text = withRef counter $ \counterPtr -> setTextcolor' counterPtr text+{# fun unsafe Fl_Counter_textcolor as textcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetTextcolor ()) Counter orig impl where+  runOp _ _ counter = withRef counter $ \counterPtr -> textcolor' counterPtr++-- $Counterfunctions+--+-- @+-- destroy :: 'Ref' 'Counter' -> 'IO' ()+--+-- getTextcolor :: 'Ref' 'Counter' -> 'IO' 'Color'+--+-- getTextfont :: 'Ref' 'Counter' -> 'IO' 'Font'+--+-- getTextsize :: 'Ref' 'Counter' -> 'IO' 'FontSize'+--+-- handle :: 'Ref' 'Counter' -> 'Event' -> 'IO' 'Int'+--+-- setLstep :: 'Ref' 'Counter' -> 'Double' -> 'IO' ()+--+-- setTextcolor :: 'Ref' 'Counter' -> 'Color' -> 'IO' ()+--+-- setTextfont :: 'Ref' 'Counter' -> 'Font' -> 'IO' ()+--+-- setTextsize :: 'Ref' 'Counter' -> 'FontSize' -> 'IO' ()+--+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Counter"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Dial.chs view
@@ -0,0 +1,91 @@+{-# LANGUAGE TypeFamilies,CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Dial+    (+     -- * Constructor+     dialNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Dial functions+     --+     -- $Dialfunctions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_DialC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Dial_New as dialNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Dial_New_WithLabel as dialNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+dialNew :: Rectangle -> Maybe String -> IO (Ref Dial)+dialNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> dialNew' x_pos y_pos width height >>=+                             toRef+        Just l -> dialNewWithLabel' x_pos y_pos width height l >>=+                               toRef++{# fun Fl_Dial_Destroy as dialDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Dial orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+    dialDestroy' winPtr+    return nullPtr++{# fun unsafe Fl_Dial_set_angle1 as setAngle1' { id `Ptr ()',id `CShort' } -> `()' #}+instance (impl ~ ( Angle -> IO ())) => Op (SetAngle1 ()) Dial orig impl where+  runOp _ _ dial (Angle a) = withRef dial $ \dialPtr -> setAngle1' dialPtr a+{# fun unsafe Fl_Dial_set_angle2 as setAngle2' { id `Ptr ()',id `CShort' } -> `()' #}+instance (impl ~ ( Angle -> IO ())) => Op (SetAngle2 ()) Dial orig impl where+  runOp _ _ dial (Angle a) = withRef dial $ \dialPtr -> setAngle2' dialPtr a+{# fun unsafe Fl_Dial_angle1 as angle1' { id `Ptr ()' } -> `CShort' id #}+instance (impl ~ ( IO (Angle))) => Op (GetAngle1 ()) Dial orig impl where+  runOp _ _ dial = withRef dial $ \dialPtr -> angle1' dialPtr >>= return . Angle+{# fun unsafe Fl_Dial_angle2 as angle2' { id `Ptr ()' } -> `CShort' id #}+instance (impl ~ ( IO (Angle))) => Op (GetAngle2 ()) Dial orig impl where+  runOp _ _ dial = withRef dial $ \dialPtr -> angle2' dialPtr >>= return . Angle+{#fun Fl_Dial_handle as dialHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Dial orig impl where+  runOp _ _ dial event = withRef dial (\p -> dialHandle' p (fromIntegral . fromEnum $ event))+instance (impl ~ ( Angle -> Angle -> IO ())) => Op (SetAngles ()) Dial orig impl where+  runOp _ _ dial a1' a2' = do+    setAngle1 dial a1'+    setAngle2 dial a2'++-- $Dialfunctions+--+-- @+-- destroy :: 'Ref' 'Dial' -> 'IO' ()+--+-- getAngle1 :: 'Ref' 'Dial' -> 'IO' 'Angle'+--+-- getAngle2 :: 'Ref' 'Dial' -> 'IO' 'Angle'+--+-- handle :: 'Ref' 'Dial' -> 'Event' -> 'IO' 'Int'+--+-- setAngle1 :: 'Ref' 'Dial' -> 'Angle' -> 'IO' ()+--+-- setAngle2 :: 'Ref' 'Dial' -> 'Angle' -> 'IO' ()+--+-- setAngles :: 'Ref' 'Dial' -> 'Angle' -> 'Angle' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Dial"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Dispatch.hs view
@@ -0,0 +1,143 @@+{-# LANGUAGE GADTs, UndecidableInstances, MultiParamTypeClasses, FunctionalDependencies, FlexibleInstances, FlexibleContexts, ScopedTypeVariables, OverlappingInstances, EmptyDataDecls #-}+module Graphics.UI.FLTK.LowLevel.Dispatch+       (+         -- * FindOp+         FindOp,+         -- * Functions+         Functions,+         -- * Match+         Match,+         -- * NoFunction+         NoFunction,+         -- * Op+         Op,+         -- * dispatch+         dispatch,+         -- * runOp+         runOp,+         -- * castTo+         castTo,+         -- * safeCast+         safeCast,+         -- * Parent+         Parent+       )+where+import Graphics.UI.FLTK.LowLevel.Fl_Types++-- Type level function where `b` is Same+-- if `x` and `y` are equal and `Different`+-- if not.+data Same+data Different+class TypeEqual x y b | x y -> b+instance TypeEqual a a Same+instance Different ~ b => TypeEqual x y b++-- Move down a nested type hierarchy+-- eg. Tail (w (x (y (z ())))) (x (y (z ())))+class Tail aas as | aas -> as+instance Tail (a as) as+instance (r ~ ()) => Tail () r++-- Test whether a given nested type contains+-- a type+-- eg. Contains (w (x (y (z ())))) (y ()) Same+--     Contains (w (x (y (z ())))) (a ()) Different+class Contains' a b match r | a b match -> r+instance (Tail aas as, Contains as b r) => Contains' aas b Different r+instance (r ~ Same) => Contains' a b Same r++class Contains as a r | as a -> r+instance (TypeEqual (a ()) b match, Contains' (a as) b match r) => Contains (a as) b r+instance Contains () b Different++-- | Move down the "object" hierarchy+-- | eg. Downcast Rectangle Shape+class Downcast aas as | aas -> as+instance Downcast (a as) as+instance (as ~ Base) => Downcast Base as++-- | See 'FindOp' for more details.+data Match a+-- | See 'FindOp' for more details.+data NoFunction a++class FindOp' a b c r | a b c -> r+instance (Downcast aas as, FindOp as f r) => FindOp' aas f Different r+instance (r ~ (Match a)) => FindOp' a b Same r++-- | @FindOp@ searches a class hierarchy for a member function (an  Op-eration)+-- and returns the first class in the hierarchy that support it.+--+-- Given a class hierarchy starting at @a@ and member function @b@ find @c@, the+-- closest ancestor to @a@ (possibly @a@) that has that function.+--+-- If found @r@ is @Match c@, if not found @r@ is @NoFunction b@.+class FindOp a b c | a b -> c+instance (Functions (a as) fs, Contains fs f match, FindOp' (a as) f match r) => FindOp (a as) f r+instance FindOp Base f (NoFunction f)++-- | Find the first "object" of the given type+-- | in the hierarchy.+data InHierarchy+data NotInHierarchy a b++class FindInHierarchy' orig a b c r | orig a b c -> r+instance (Downcast aas as, FindInHierarchy orig as o r) => FindInHierarchy' orig aas o Different r+instance (r ~ InHierarchy) => FindInHierarchy' orig a b Same r++class FindInHierarchy orig a b c | orig a b -> c+instance (TypeEqual as oos match, FindInHierarchy' orig as oos match r) => FindInHierarchy orig as oos r+instance (r ~ NotInHierarchy orig o) => FindInHierarchy orig Base o r+instance FindInHierarchy orig Base Base InHierarchy++++-- | A class with a single instance that is found only if @b@ is an ancestor of @a@.+--+-- Used by some 'Op' implementations to enforce that certain parameters have to be+-- at least a @b@.+class Parent a b+instance (FindInHierarchy a a b InHierarchy) => Parent a b++-- | Associate a "class" with it's member functions+class Functions a b | a -> b+-- | The Base of the hierarchy has no functions+instance Functions Base ()++-- | Implementations of methods on various types+--  of objects.+--+--     * @op@ - name of the function+--     * @obj@ - the class that implements @op@+--     * @origObj@ - the class in the hierarchy where the search for @op@ started.+--       Kept around in case the type in needed. The best example is `setCallback`+--       whose implementation is usually found much lower in the hierarchy but where+--       we also want to enforce that the implementation take the type of the widget calling+--       it.+--     * @impl@ - a function that takes the a 'Ref' @origobj@, casted down to 'Ref' @obj@ and+-- whatever other parameters the instance specifies.+class Op op obj origObj impl where+  runOp :: op -> origObj -> (Ref obj) -> impl++-- | Cast any reference to any other reference. Unsafe, intended to be used by 'Op'.+castTo :: Ref a -> Ref r+castTo (Ref x) = (Ref x)++-- | Cast any reference to one of its ancestors.+safeCast :: (Parent a r) => Ref a -> Ref r+safeCast (Ref x) = (Ref x)++-- | Given some member function @op@ and a 'Ref' to some class @origObj@ return+-- the implementation of @op@. See 'Op' for more details.+--+-- Every FLTK function called on some 'Ref' uses this function to figure out+-- what arguments it needs.+dispatch :: forall op obj origObj impl.+            (+              FindOp origObj op (Match obj),+              Op op obj origObj impl+            ) =>+            op -> Ref origObj -> impl+dispatch op refOrig = runOp op (undefined :: origObj) ((castTo refOrig) :: Ref obj)
+ src/Graphics/UI/FLTK/LowLevel/DoubleWindow.chs view
@@ -0,0 +1,147 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.DoubleWindow+  (+    doubleWindowNew,+    doubleWindowCustom+    -- * Hierarchy+    --+    -- $hierarchy++    -- * DoubleWindow functions+    --+    -- $DoubleWindowfunctions+  )+where+#include "Fl_C.h"+#include "Fl_Double_WindowC.h"+import Foreign+import Foreign.C+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Widget+import Graphics.UI.FLTK.LowLevel.Window+import C2HS hiding (cFromEnum, toBool,cToEnum)+++{# fun Fl_OverriddenDouble_Window_New as overriddenWindowNew' {`Int',`Int', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenDouble_Window_NewXY as overriddenWindowNewXY' {`Int',`Int', `Int', `Int', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenDouble_Window_NewXY_WithLabel as overriddenWindowNewXYWithLabel' { `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenDouble_Window_New_WithLabel as overriddenWindowNewWithLabel' { `Int',`Int', `String', id `Ptr ()'} -> `Ptr ()' id #}+doubleWindowCustom :: Size -> Maybe Position -> Maybe String -> CustomWidgetFuncs DoubleWindow -> CustomWindowFuncs DoubleWindow -> IO (Ref DoubleWindow)+doubleWindowCustom size position title customWidgetFuncs' customWindowFuncs' =+  windowMaker+    size+    position+    title+    customWidgetFuncs'+    customWindowFuncs'+    overriddenWindowNew'+    overriddenWindowNewWithLabel'+    overriddenWindowNewXY'+    overriddenWindowNewXYWithLabel'++doubleWindowNew :: Size -> Maybe Position -> Maybe String -> IO (Ref DoubleWindow)+doubleWindowNew size position title =+  windowMaker+    size+    position+    title+    (defaultCustomWidgetFuncs :: CustomWidgetFuncs DoubleWindow)+    (defaultCustomWindowFuncs :: CustomWindowFuncs DoubleWindow)+    overriddenWindowNew'+    overriddenWindowNewWithLabel'+    overriddenWindowNewXY'+    overriddenWindowNewXYWithLabel'++{# fun Fl_Double_Window_Destroy as windowDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) DoubleWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> windowDestroy' winPtr++{# fun Fl_Double_Window_draw_super as drawSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (DrawSuper ()) DoubleWindow orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> drawSuper' windowPtr++{# fun Fl_Double_Window_handle_super as handleSuper' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Int))) => Op (HandleSuper ()) DoubleWindow orig impl where+  runOp _ _ window event = withRef window $ \windowPtr -> handleSuper' windowPtr event++{# fun Fl_Double_Window_resize_super as resizeSuper' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rectangle -> IO ())) => Op (ResizeSuper ()) DoubleWindow orig impl where+  runOp _ _ window rectangle =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in withRef window $ \windowPtr -> resizeSuper' windowPtr x_pos y_pos width height++{# fun Fl_Double_Window_show_super as showSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (ShowWidgetSuper ()) DoubleWindow orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> showSuper' windowPtr++{# fun Fl_Double_Window_hide_super as hideSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (HideSuper ()) DoubleWindow orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> hideSuper' windowPtr++{# fun Fl_Double_Window_hide as hide' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Hide ()) DoubleWindow orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> hide' windowPtr++{# fun Fl_Double_Window_flush_super as flushSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (FlushSuper ()) DoubleWindow orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> flushSuper' windowPtr++{# fun Fl_Double_Window_show as windowShow' {id `Ptr ()'} -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (ShowWidget ()) DoubleWindow orig impl where+  runOp _ _ window = withRef window (\p -> windowShow' p)++{#fun Fl_Double_Window_handle as windowHandle'+      { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) DoubleWindow orig impl where+  runOp _ _ window event = withRef window (\p -> windowHandle' p (fromIntegral . fromEnum $ event))++{# fun Fl_Double_Window_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rectangle -> IO ())) => Op (Resize ()) DoubleWindow orig impl where+  runOp _ _ window rectangle = withRef window $ \windowPtr -> do+                                 let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+                                 resize' windowPtr x_pos y_pos w_pos h_pos+-- $DoubleWindowfunctions+-- @+--+-- destroy :: 'Ref' 'DoubleWindow' -> 'IO' ()+--+-- drawSuper :: 'Ref' 'DoubleWindow' -> 'IO' ()+--+-- flushSuper :: 'Ref' 'DoubleWindow' -> 'IO' ()+--+-- handle :: 'Ref' 'DoubleWindow' -> 'Event' -> 'IO' 'Int'+--+-- handleSuper :: 'Ref' 'DoubleWindow' -> 'Int' -> 'IO' 'Int'+--+-- hide :: 'Ref' 'DoubleWindow' -> 'IO' ()+--+-- hideSuper :: 'Ref' 'DoubleWindow' -> 'IO' ()+--+-- resize :: 'Ref' 'DoubleWindow' -> 'Rectangle' -> 'IO' ()+--+-- resizeSuper :: 'Ref' 'DoubleWindow' -> 'Rectangle' -> 'IO' ()+--+-- showWidget :: 'Ref' 'DoubleWindow' -> 'IO' ()+--+-- showWidgetSuper :: 'Ref' 'DoubleWindow' -> 'IO' ()+-- @+++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Group"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Window"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.DoubleWindow"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Draw.chs view
@@ -0,0 +1,658 @@+{-# LANGUAGE CPP, FlexibleContexts #-}+module Graphics.UI.FLTK.LowLevel.Draw+       (+       flcSetColor,+       flcSetColorWithC,+       flcSetColorWithRgb,+       flcColor,+       flcPushClip,+       flcPushNoClip,+       flcPopClip,+       flcNotClipped,+       flcClipBox,+       flcRestoreClip,+       flcSetClipRegion,+       flcClipRegion,+       flcPoint,+       flcLineStyle,+       flcRect,+       flcRectWithColor,+       flcRectf,+       flcRectfWithColor,+       flcRectfWithRgb,+       flcLine,+       flcLineWithX2Y2,+       flcLoop,+       flcLoopWithX3Y3,+       flcPolygon,+       flcPolygonWithX3Y3,+       flcXyline,+       flcXylineWithX2,+       flcXylineWithY2X3,+       flcYxlineWithY1,+       flcYxlineWithY2X2,+       flcYxlineWithY2X3,+       flcArcByWidthHeight,+       flcPie,+       flcPushMatrix,+       flcPopMatrix,+       flcScaleWithY,+       flcScale,+       flcTranslate,+       flcRotate,+       flcMultMatrix,+       flcBeginPoints,+       flcBeginLine,+       flcBeginLoop,+       flcBeginPolygon,+       flcVertex,+       flcCurve,+       flcArcByRadius,+       flcCircle,+       flcEndPoints,+       flcEndLine,+       flcEndLoop,+       flcEndPolygon,+       flcBeginComplexPolygon,+       flcGap,+       flcEndComplexPolygon,+       flcTransformX,+       flcTransformY,+       flcTransformDx,+       flcTransformDy,+       flcTransformedVertex,+       flcSetFont,+       flcFont,+       flcSize,+       flcHeight,+       flcSetHeight,+       flcDescent,+       flcWidth,+       flcWidthWithN,+       flcWidthWithC,+       flcTextExtents,+       flcTextExtentsWithN,+       flcLatin1ToLocal,+       flcLatin1ToLocalWithN,+       flcLocalToLatin1,+       flcLocalToLatin1WithN,+       flcMacRomanToLocal,+       flcMacRomanToLocalWithN,+       flcLocalToMacRoman,+       flcLocalToMacRomanWithN,+       flcDraw,+       flcDrawWithAngle,+       flcDrawWithN,+       flcDrawWithNAngle,+       flcRtlDraw,+       flcMeasure,+       flcDrawInBoxWithImageReference,+       flcDrawInBox,+       flcFrame,+       flcFrame2,+       flcDrawBox,+       flcDrawImageBuf,+       flcDrawImageMonoBuf,+       flcCanDoAlphaBlending,+       flcReadImage,+       flcDrawPixmapWithColor,+       flcDrawPixmap,+       flcDrawPixmapWithCdataColor,+       flcDrawPixmapWithCdata,+       flcMeasurePixmap,+       flcMeasurePixmapWithCdata,+       flcShortcutLabel,+       flcOldShortcut,+       flcOverlayRect,+       flcOverlayClear,+       flcCursorWithFgBg,+       flcCursorWithFg,+       flcCursorWithBg,+       flcCursor,+       flcSetStatus,+       flcSetSpotWithWin,+       flcSetSpot,+       flcResetSpot,+       flcDrawSymbol+    )+where+#include "Fl_C.h"+#include "Fl_DrawC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Data.ByteString+import Data.ByteString.Unsafe++#c+enum LineStyle {+  SolidLineStyle  = FL_SOLID,+  SolidDash       = FL_DASH,+  SolidDot        = FL_DOT,+  SolidDashDot    = FL_DASHDOT,+  SolidDashDotDot = FL_DASHDOTDOT,++  SolidCapFlat    = FL_CAP_FLAT,+  SolidCapRound   = FL_CAP_ROUND,+  SolidCapSquare  = FL_CAP_SQUARE,++  SolidJoinMiter  = FL_JOIN_MITER,+  SolidJoinRound  = FL_JOIN_ROUND,+  SolidJoinBevel  = FL_JOIN_BEVEL+};+#endc+{#enum LineStyle {} deriving (Show) #}++{# fun unsafe flc_set_color as flcSetColor' { cFromColor `Color' } -> `()' #}+flcSetColor :: Color ->  IO ()+flcSetColor c = flcSetColor' c++{# fun unsafe flc_set_color_with_c as flcSetColorWithC' { `Int' } -> `()' #}+flcSetColorWithC :: Int ->  IO ()+flcSetColorWithC c = flcSetColorWithC' c++{# fun unsafe flc_set_color_with_rgb as flcSetColorWithRgb' { `Word8',`Word8',`Word8' } -> `()' #}+flcSetColorWithRgb :: RGB ->  IO ()+flcSetColorWithRgb (r', g' , b') = flcSetColorWithRgb' r' g' b'++{# fun unsafe flc_color as flcColor' {  } -> `Color' cToColor #}+flcColor ::  IO (Color)+flcColor  = flcColor'++{# fun unsafe flc_push_clip as flcPushClip' { `Int',`Int',`Int',`Int' } -> `()' #}+flcPushClip :: Rectangle ->  IO ()+flcPushClip rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcPushClip' x_pos' y_pos' width' height'++{# fun unsafe flc_push_no_clip as flcPushNoClip' {  } -> `()' #}+flcPushNoClip ::  IO ()+flcPushNoClip  = flcPushNoClip'++{# fun unsafe flc_pop_clip as flcPopClip' {  } -> `()' #}+flcPopClip ::  IO ()+flcPopClip  = flcPopClip'++{# fun unsafe flc_not_clipped as flcNotClipped' { `Int',`Int',`Int',`Int' } -> `Int' #}+flcNotClipped :: Rectangle ->  IO (Int)+flcNotClipped rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcNotClipped' x_pos' y_pos' width' height'++{# fun unsafe flc_clip_box as flcClipBox' { `Int',`Int',`Int',`Int',alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv* } -> `Int' #}+flcClipBox :: Rectangle ->  IO (Int,Rectangle)+flcClipBox rectangle  =+    let (x_pos', y_pos', width', height') = fromRectangle rectangle+    in+      do+        (result, _x', _y', _w', _h') <- flcClipBox' x_pos' y_pos' width' height'+        return $ (result, toRectangle (_x', _y', _w', _h'))++{# fun unsafe flc_restore_clip as flcRestoreClip' {  } -> `()' #}+flcRestoreClip ::  IO ()+flcRestoreClip  = flcRestoreClip'++{# fun unsafe flc_set_clip_region as flcSetClipRegion' { id `Ptr ()' } -> `()' #}+flcSetClipRegion :: Ref Region ->  IO ()+flcSetClipRegion r = withRef r $ \rPtr -> flcSetClipRegion' rPtr++{# fun unsafe flc_clip_region as flcClipRegion' {  } -> `Ptr ()' id #}+flcClipRegion ::  IO (Ref Region)+flcClipRegion  = flcClipRegion' >>= toRef++{# fun unsafe flc_point as flcPoint' { `Int',`Int' } -> `()' #}+flcPoint :: Position ->  IO ()+flcPoint (Position (X x_pos') (Y y_pos')) = flcPoint' x_pos' y_pos'++{# fun unsafe flc_line_style_with_width_dashes as flcLineStyleWithWidthDashes' {cFromEnum `LineStyle', `Int', id `Ptr CChar' } -> `()' #}+flcLineStyle :: LineStyle -> Maybe Int -> Maybe String -> IO ()+flcLineStyle style width' dashes' = do+  let _width = maybe 0 id width'+  _dashes <- maybe (return nullPtr) newCString dashes'+  flcLineStyleWithWidthDashes' style _width _dashes++{# fun unsafe flc_rect as flcRect' { `Int',`Int',`Int',`Int' } -> `()' #}+flcRect :: Rectangle ->  IO ()+flcRect rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcRect' x_pos' y_pos' width' height'++{# fun unsafe flc_rect_with_color as flcRectWithColor' { `Int',`Int',`Int',`Int',cFromColor `Color' } -> `()' #}+flcRectWithColor :: Rectangle -> Color ->  IO ()+flcRectWithColor rectangle c = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcRectWithColor' x_pos' y_pos' width' height' c++{# fun unsafe flc_rectf as flcRectf' { `Int',`Int',`Int',`Int' } -> `()' #}+flcRectf :: Rectangle ->  IO ()+flcRectf rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcRectf' x_pos' y_pos' width' height'++{# fun unsafe flc_rectf_with_color as flcRectfWithColor' { `Int',`Int',`Int',`Int',cFromColor `Color' } -> `()' #}+flcRectfWithColor :: Rectangle -> Color ->  IO ()+flcRectfWithColor rectangle c = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcRectfWithColor' x_pos' y_pos' width' height' c++{# fun unsafe flc_rectf_with_rgb as flcRectfWithRgb' { `Int',`Int',`Int',`Int',`Word8',`Word8',`Word8' } -> `()' #}+flcRectfWithRgb :: Rectangle -> RGB ->  IO ()+flcRectfWithRgb rectangle (r', g' , b') = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcRectfWithRgb' x_pos' y_pos' width' height' r' g' b'++{# fun unsafe flc_line as flcLine' { `Int',`Int',`Int',`Int' } -> `()' #}+flcLine :: Position -> Position ->  IO ()+flcLine (Position (X x_pos') (Y y_pos'))(Position (X x_pos'') (Y y_pos''))  = flcLine' x_pos' y_pos' x_pos'' y_pos''++{# fun unsafe flc_line_with_x2_y2 as flcLineWithX2Y2' { `Int',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+flcLineWithX2Y2 :: Position -> Int -> Int -> Int -> Int ->  IO ()+flcLineWithX2Y2 (Position (X x_pos') (Y y_pos')) x1 y1 x2 y2 = flcLineWithX2Y2' x_pos' y_pos' x1 y1 x2 y2++{# fun unsafe flc_loop as flcLoop' { `Int',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+flcLoop :: Position -> Int -> Int -> Int -> Int ->  IO ()+flcLoop (Position (X x_pos') (Y y_pos')) x1 y1 x2 y2 = flcLoop' x_pos' y_pos' x1 y1 x2 y2++{# fun unsafe flc_loop_with_x3_y3 as flcLoopWithX3Y3' { `Int',`Int',`Int',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+flcLoopWithX3Y3 :: Position -> Int -> Int -> Int -> Int -> Int -> Int ->  IO ()+flcLoopWithX3Y3 (Position (X x_pos') (Y y_pos')) x1 y1 x2 y2 x3 y3 = flcLoopWithX3Y3' x_pos' y_pos' x1 y1 x2 y2 x3 y3++{# fun unsafe flc_polygon as flcPolygon' { `Int',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+flcPolygon :: Position -> Int -> Int -> Int -> Int ->  IO ()+flcPolygon (Position (X x_pos') (Y y_pos')) x1 y1 x2 y2 = flcPolygon' x_pos' y_pos' x1 y1 x2 y2++{# fun unsafe flc_polygon_with_x3_y3 as flcPolygonWithX3Y3' { `Int',`Int',`Int',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+flcPolygonWithX3Y3 :: Position -> Int -> Int -> Int -> Int -> Int -> Int ->  IO ()+flcPolygonWithX3Y3 (Position (X x_pos') (Y y_pos')) x1 y1 x2 y2 x3 y3 = flcPolygonWithX3Y3' x_pos' y_pos' x1 y1 x2 y2 x3 y3++{# fun unsafe flc_xyline as flcXyline' { `Int',`Int',`Int' } -> `()' #}+flcXyline :: Position -> Int ->  IO ()+flcXyline (Position (X x_pos') (Y y_pos')) x1 = flcXyline' x_pos' y_pos' x1++{# fun unsafe flc_xyline_with_x2 as flcXylineWithX2' { `Int',`Int',`Int',`Int' } -> `()' #}+flcXylineWithX2 :: Position -> Int -> Int ->  IO ()+flcXylineWithX2 (Position (X x_pos') (Y y_pos')) x1 y2 = flcXylineWithX2' x_pos' y_pos' x1 y2++{# fun unsafe flc_xyline_with_y2_x3 as flcXylineWithY2X3' { `Int',`Int',`Int',`Int',`Int' } -> `()' #}+flcXylineWithY2X3 :: Position -> Int -> Int -> Int ->  IO ()+flcXylineWithY2X3 (Position (X x_pos') (Y y_pos')) x1 y2 x3 = flcXylineWithY2X3' x_pos' y_pos' x1 y2 x3++{# fun unsafe flc_yxline_with_y1 as flcYxlineWithY1' { `Int',`Int',`Int' } -> `()' #}+flcYxlineWithY1 :: Position -> Int ->  IO ()+flcYxlineWithY1 (Position (X x_pos') (Y y_pos')) y1 = flcYxlineWithY1' x_pos' y_pos' y1++{# fun unsafe flc_yxline_with_y2_x2 as flcYxlineWithY2X2' { `Int',`Int',`Int',`Int' } -> `()' #}+flcYxlineWithY2X2 :: Position -> Int -> Int ->  IO ()+flcYxlineWithY2X2 (Position (X x_pos') (Y y_pos')) y1 x2 = flcYxlineWithY2X2' x_pos' y_pos' y1 x2++{# fun unsafe flc_yxline_with_y2_x3 as flcYxlineWithY2X3' { `Int',`Int',`Int',`Int',`Int' } -> `()' #}+flcYxlineWithY2X3 :: Position -> Int -> Int -> Int ->  IO ()+flcYxlineWithY2X3 (Position (X x_pos') (Y y_pos')) y1 x2 y3 = flcYxlineWithY2X3' x_pos' y_pos' y1 x2 y3++{# fun unsafe flc_arc_by_width_height as flcArcByWidthHeight' { `Int',`Int',`Int',`Int',`Double',`Double' } -> `()' #}+flcArcByWidthHeight :: Rectangle -> Double -> Double ->  IO ()+flcArcByWidthHeight rectangle a1 a2 = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcArcByWidthHeight' x_pos' y_pos' width' height' a1 a2++{# fun unsafe flc_pie as flcPie' { `Int',`Int',`Int',`Int',`Double',`Double' } -> `()' #}+flcPie :: Rectangle -> Double -> Double ->  IO ()+flcPie rectangle a1 a2 = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcPie' x_pos' y_pos' width' height' a1 a2++{# fun unsafe flc_push_matrix as flcPushMatrix' {  } -> `()' #}+flcPushMatrix ::  IO ()+flcPushMatrix  = flcPushMatrix'++{# fun unsafe flc_pop_matrix as flcPopMatrix' {  } -> `()' #}+flcPopMatrix ::  IO ()+flcPopMatrix  = flcPopMatrix'++{# fun unsafe flc_scale_with_y as flcScaleWithY' { `Double',`Double' } -> `()' #}+flcScaleWithY :: ByXY ->  IO ()+flcScaleWithY (ByXY (ByX by_x') (ByY by_y')) = flcScaleWithY' by_x' by_y'++{# fun unsafe flc_scale as flcScale' { `Double' } -> `()' #}+flcScale :: ByX ->  IO ()+flcScale (ByX by_x') = flcScale' by_x'++{# fun unsafe flc_translate as flcTranslate' { `Double',`Double' } -> `()' #}+flcTranslate :: ByXY ->  IO ()+flcTranslate (ByXY (ByX by_x') (ByY by_y')) = flcTranslate' by_x' by_y'++{# fun unsafe flc_rotate as flcRotate' { `Double' } -> `()' #}+flcRotate :: Double ->  IO ()+flcRotate d = flcRotate' d++{# fun unsafe flc_mult_matrix as flcMultMatrix' { `Double',`Double',`Double',`Double',`Double',`Double' } -> `()' #}+flcMultMatrix :: Double -> Double -> Double -> Double -> ByXY ->  IO ()+flcMultMatrix a b c d (ByXY (ByX by_x') (ByY by_y')) = flcMultMatrix' a b c d by_x' by_y'++{# fun unsafe flc_begin_points as flcBeginPoints' {  } -> `()' #}+flcBeginPoints ::  IO ()+flcBeginPoints  = flcBeginPoints'++{# fun unsafe flc_begin_line as flcBeginLine' {  } -> `()' #}+flcBeginLine ::  IO ()+flcBeginLine  = flcBeginLine'++{# fun unsafe flc_begin_loop as flcBeginLoop' {  } -> `()' #}+flcBeginLoop ::  IO ()+flcBeginLoop  = flcBeginLoop'++{# fun unsafe flc_begin_polygon as flcBeginPolygon' {  } -> `()' #}+flcBeginPolygon ::  IO ()+flcBeginPolygon  = flcBeginPolygon'++{# fun unsafe flc_vertex as flcVertex' { `Double',`Double' } -> `()' #}+flcVertex :: ByXY ->  IO ()+flcVertex (ByXY (ByX by_x') (ByY by_y')) = flcVertex' by_x' by_y'++{# fun unsafe flc_curve as flcCurve' { `Double',`Double',`Double',`Double',`Double',`Double',`Double',`Double' } -> `()' #}+flcCurve :: Double -> Double -> Double -> Double -> Double -> Double -> Double -> Double ->  IO ()+flcCurve x0 y0 x1 y1 x2 y2 x3 y3 = flcCurve' x0 y0 x1 y1 x2 y2 x3 y3++{# fun unsafe flc_arc_by_radius as flcArcByRadius' { `Double',`Double',`Double',`Double',`Double' } -> `()' #}+flcArcByRadius :: ByXY -> Double -> Double -> Double ->  IO ()+flcArcByRadius (ByXY (ByX by_x') (ByY by_y')) r start' end' = flcArcByRadius' by_x' by_y' r start' end'++{# fun unsafe flc_circle as flcCircle' { `Double',`Double',`Double' } -> `()' #}+flcCircle :: ByXY -> Double ->  IO ()+flcCircle (ByXY (ByX by_x') (ByY by_y')) r = flcCircle' by_x' by_y' r++{# fun unsafe flc_end_points as flcEndPoints' {  } -> `()' #}+flcEndPoints ::  IO ()+flcEndPoints  = flcEndPoints'++{# fun unsafe flc_end_line as flcEndLine' {  } -> `()' #}+flcEndLine ::  IO ()+flcEndLine  = flcEndLine'++{# fun unsafe flc_end_loop as flcEndLoop' {  } -> `()' #}+flcEndLoop ::  IO ()+flcEndLoop  = flcEndLoop'++{# fun unsafe flc_end_polygon as flcEndPolygon' {  } -> `()' #}+flcEndPolygon ::  IO ()+flcEndPolygon  = flcEndPolygon'++{# fun unsafe flc_begin_complex_polygon as flcBeginComplexPolygon' {  } -> `()' #}+flcBeginComplexPolygon ::  IO ()+flcBeginComplexPolygon  = flcBeginComplexPolygon'++{# fun unsafe flc_gap as flcGap' {  } -> `()' #}+flcGap ::  IO ()+flcGap  = flcGap'++{# fun unsafe flc_end_complex_polygon as flcEndComplexPolygon' {  } -> `()' #}+flcEndComplexPolygon ::  IO ()+flcEndComplexPolygon  = flcEndComplexPolygon'++{# fun unsafe flc_transform_x as flcTransformX' { `Double',`Double' } -> `Double' #}+flcTransformX :: ByXY ->  IO (Double)+flcTransformX (ByXY (ByX by_x') (ByY by_y')) = flcTransformX' by_x' by_y'++{# fun unsafe flc_transform_y as flcTransformY' { `Double',`Double' } -> `Double' #}+flcTransformY :: ByXY ->  IO (Double)+flcTransformY (ByXY (ByX by_x') (ByY by_y')) = flcTransformY' by_x' by_y'++{# fun unsafe flc_transform_dx as flcTransformDx' { `Double',`Double' } -> `Double' #}+flcTransformDx :: ByXY ->  IO (Double)+flcTransformDx (ByXY (ByX by_x') (ByY by_y')) = flcTransformDx' by_x' by_y'++{# fun unsafe flc_transform_dy as flcTransformDy' { `Double',`Double' } -> `Double' #}+flcTransformDy :: ByXY ->  IO (Double)+flcTransformDy (ByXY (ByX by_x') (ByY by_y')) = flcTransformDy' by_x' by_y'++{# fun unsafe flc_transformed_vertex as flcTransformedVertex' { `Double',`Double' } -> `()' #}+flcTransformedVertex :: Double -> Double ->  IO ()+flcTransformedVertex xf yf = flcTransformedVertex' xf yf++{# fun unsafe flc_set_font as flcSetFont' { cFromFont `Font',id `CInt' } -> `()' #}+flcSetFont :: Font -> FontSize ->  IO ()+flcSetFont face (FontSize fsize) = flcSetFont' face fsize++{# fun unsafe flc_font as flcFont' {  } -> `Font' cToFont #}+flcFont ::  IO (Font)+flcFont  = flcFont'++{# fun unsafe flc_size as flcSize' {  } -> `CInt' id #}+flcSize ::  IO (FontSize)+flcSize  = flcSize' >>= return . FontSize++{# fun unsafe flc_height as flcHeight' {  } -> `Int' #}+flcHeight ::  IO (Int)+flcHeight  = flcHeight'++{# fun unsafe flc_set_height as flcSetHeight' { `Int',`Int' } -> `Int' #}+flcSetHeight :: Int -> Int ->  IO (Int)+flcSetHeight font' size' = flcSetHeight' font' size'++{# fun unsafe flc_descent as flcDescent' {  } -> `Int' #}+flcDescent ::  IO (Int)+flcDescent  = flcDescent'++{# fun unsafe flc_width as flcWidth' { `String' } -> `Double' #}+flcWidth :: String ->  IO (Double)+flcWidth txt = flcWidth' txt++{# fun unsafe flc_width_with_n as flcWidthWithN' { `String',`Int' } -> `Double' #}+flcWidthWithN :: String -> Int ->  IO (Double)+flcWidthWithN txt n = flcWidthWithN' txt n++{# fun unsafe flc_width_with_c as flcWidthWithC' { `Int' } -> `Double' #}+flcWidthWithC :: Int ->  IO (Double)+flcWidthWithC c = flcWidthWithC' c++{# fun unsafe flc_text_extents as flcTextExtents' { `String',alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv* } -> `()' #}+flcTextExtents :: String -> IO (Rectangle)+flcTextExtents s  = flcTextExtents' s >>= \(rectangle') -> return $ (toRectangle rectangle')++{# fun unsafe flc_text_extents_with_n as flcTextExtentsWithN' { `String',`Int',alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv* } -> `()' #}+flcTextExtentsWithN :: String -> Int ->  IO (Rectangle)+flcTextExtentsWithN t n  = flcTextExtentsWithN' t n >>= \(rectangle') -> return $ (toRectangle rectangle')++{# fun unsafe flc_latin1_to_local as flcLatin1ToLocal' { `String' } -> `String' #}+flcLatin1ToLocal :: String ->  IO (String)+flcLatin1ToLocal t = flcLatin1ToLocal' t++{# fun unsafe flc_latin1_to_local_with_n as flcLatin1ToLocalWithN' { `String',`Int' } -> `String' #}+flcLatin1ToLocalWithN :: String -> Int ->  IO (String)+flcLatin1ToLocalWithN t n = flcLatin1ToLocalWithN' t n++{# fun unsafe flc_local_to_latin1 as flcLocalToLatin1' { `String' } -> `String' #}+flcLocalToLatin1 :: String ->  IO (String)+flcLocalToLatin1 t = flcLocalToLatin1' t++{# fun unsafe flc_local_to_latin1_with_n as flcLocalToLatin1WithN' { `String',`Int' } -> `String' #}+flcLocalToLatin1WithN :: String -> Int ->  IO (String)+flcLocalToLatin1WithN t n = flcLocalToLatin1WithN' t n++{# fun unsafe flc_mac_roman_to_local as flcMacRomanToLocal' { `String' } -> `String' #}+flcMacRomanToLocal :: String ->  IO (String)+flcMacRomanToLocal t = flcMacRomanToLocal' t++{# fun unsafe flc_mac_roman_to_local_with_n as flcMacRomanToLocalWithN' { `String',`Int' } -> `String' #}+flcMacRomanToLocalWithN :: String -> Int ->  IO (String)+flcMacRomanToLocalWithN t n = flcMacRomanToLocalWithN' t n++{# fun unsafe flc_local_to_mac_roman as flcLocalToMacRoman' { `String' } -> `String' #}+flcLocalToMacRoman :: String ->  IO (String)+flcLocalToMacRoman t = flcLocalToMacRoman' t++{# fun unsafe flc_local_to_mac_roman_with_n as flcLocalToMacRomanWithN' { `String',`Int' } -> `String' #}+flcLocalToMacRomanWithN :: String -> Int ->  IO (String)+flcLocalToMacRomanWithN t n = flcLocalToMacRomanWithN' t n++{# fun unsafe flc_draw as flcDraw' { `String',`Int',`Int' } -> `()' #}+flcDraw :: String -> Position ->  IO ()+flcDraw str (Position (X x_pos') (Y y_pos')) = flcDraw' str x_pos' y_pos'++{# fun unsafe flc_draw_with_angle as flcDrawWithAngle' { `Int',`String',`Int',`Int' } -> `()' #}+flcDrawWithAngle :: Int -> String -> Position ->  IO ()+flcDrawWithAngle angle str (Position (X x_pos') (Y y_pos')) = flcDrawWithAngle' angle str x_pos' y_pos'++{# fun unsafe flc_draw_with_n as flcDrawWithN' { `String',`Int',`Int',`Int' } -> `()' #}+flcDrawWithN :: String -> Int -> Position ->  IO ()+flcDrawWithN str n (Position (X x_pos') (Y y_pos')) = flcDrawWithN' str n x_pos' y_pos'++{# fun unsafe flc_draw_with_n_angle as flcDrawWithNAngle' { `Int',`String',`Int',`Int',`Int' } -> `()' #}+flcDrawWithNAngle :: Int -> String -> Int -> Position ->  IO ()+flcDrawWithNAngle angle str n (Position (X x_pos') (Y y_pos')) = flcDrawWithNAngle' angle str n x_pos' y_pos'++{# fun unsafe flc_rtl_draw as flcRtlDraw' { `String',`Int',`Int',`Int' } -> `()' #}+flcRtlDraw :: String -> Int -> Position ->  IO ()+flcRtlDraw str n (Position (X x_pos') (Y y_pos')) = flcRtlDraw' str n x_pos' y_pos'++{# fun unsafe flc_measure_with_draw_symbols as flcMeasureWithDrawSymbols' { `String',alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv*,`Int' } -> `()' #}+flcMeasure :: String -> Maybe Bool -> IO (Size)+flcMeasure str draw_symbols =+    let _draw_symbols = maybe 0 fromBool draw_symbols in+    flcMeasureWithDrawSymbols' str _draw_symbols >>= \(size') -> return $ (toSize size')++{# fun flc_draw_with_img_draw_symbols as flcDrawWithImgDrawSymbols' { `String',`Int',`Int',`Int',`Int',`Int', id `Ptr ()',`Bool' } -> `()' #}+{# fun flc_draw_with_callthis_img_draw_symbols as flcDrawWithCallthisImgDrawSymbols' { `String',`Int',`Int',`Int',`Int',`Int', id `FunPtr DrawCallbackPrim', id `Ptr ()',`Bool' } -> `()' #}+flcDrawInBoxWithImageReference' ::  String -> Rectangle -> Alignments -> Maybe DrawCallback -> Ptr () -> Maybe Bool -> IO ()+flcDrawInBoxWithImageReference' string' rectangle' align' draw_callback' image_ptr draw_flags' =+  let (x_pos', y_pos', width', height') = fromRectangle rectangle' in+  case draw_callback' of+  Nothing -> flcDrawWithImgDrawSymbols' string' x_pos' y_pos' width' height' (alignmentsToInt align') image_ptr (maybe False id draw_flags')++  Just c' -> do+             fptr <- toDrawCallback c'+             flcDrawWithCallthisImgDrawSymbols' string' x_pos' y_pos' width' height' (alignmentsToInt align') fptr image_ptr (maybe False id draw_flags')+flcDrawInBoxWithImageReference :: (Parent a Image) => String -> Rectangle -> Alignments -> Maybe DrawCallback -> Ref a -> Maybe Bool -> IO ()+flcDrawInBoxWithImageReference string' rectangle' align' draw_callback' image' draw_flags'+  = withRef image' $ \imagePtr' -> flcDrawInBoxWithImageReference' string' rectangle' align' draw_callback' imagePtr' draw_flags'++flcDrawInBox :: String -> Rectangle -> Alignments -> Maybe DrawCallback -> Maybe Bool -> IO ()+flcDrawInBox string' rectangle' align' draw_callback' draw_flags'+  = flcDrawInBoxWithImageReference' string' rectangle' align' draw_callback' (castPtr nullPtr) draw_flags'++{# fun unsafe flc_frame as flcFrame' { `String',`Int',`Int',`Int',`Int' } -> `()' #}+flcFrame :: String -> Rectangle ->  IO ()+flcFrame s rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcFrame' s x_pos' y_pos' width' height'++{# fun unsafe flc_frame2 as flcFrame2' { `String',`Int',`Int',`Int',`Int' } -> `()' #}+flcFrame2 :: String -> Rectangle ->  IO ()+flcFrame2 s rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcFrame2' s x_pos' y_pos' width' height'++{# fun unsafe flc_draw_box as flcDrawBox' { cFromEnum `Boxtype',`Int',`Int',`Int',`Int',cFromColor `Color' } -> `()' #}+flcDrawBox :: Boxtype -> Rectangle -> Color ->  IO ()+flcDrawBox boxtype rectangle color' = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcDrawBox' boxtype x_pos' y_pos' width' height' color'++{# fun unsafe flc_draw_image_buf_with_d_l as flcDrawImageBufWithDL' { id `Ptr CUChar',`Int',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+flcDrawImageBuf :: ByteString -> Rectangle -> Delta -> LineDelta -> IO ()+flcDrawImageBuf buf rectangle d l =+  let (x_pos', y_pos', width', height') = fromRectangle rectangle+  in unsafeUseAsCString+       buf+       (\cs ->+         case (d,l) of+           (Just d', Nothing) -> flcDrawImageBufWithDL' (castPtr cs) x_pos' y_pos' width' height' d' 0+           (Nothing, Just l') -> flcDrawImageBufWithDL' (castPtr cs) x_pos' y_pos' width' height' 0 l'+           (Nothing, Nothing) -> flcDrawImageBufWithDL' (castPtr cs) x_pos' y_pos' width' height' 0 0+           (Just d', Just l') -> flcDrawImageBufWithDL' (castPtr cs) x_pos' y_pos' width' height' d' l')++{# fun unsafe flc_draw_image_mono_buf_with_d_l as flcDrawImageMonoBufWithDL' { id `Ptr CUChar',`Int',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+flcDrawImageMonoBuf :: ByteString -> Rectangle -> Delta -> LineDelta ->  IO ()+flcDrawImageMonoBuf buf rectangle d l =+  let (x_pos', y_pos', width', height') = fromRectangle rectangle+  in unsafeUseAsCString+       buf+       (\cs ->+         case (d,l) of+           (Just d', Nothing) -> flcDrawImageMonoBufWithDL' (castPtr cs) x_pos' y_pos' width' height' d' 0+           (Nothing, Just l') -> flcDrawImageMonoBufWithDL' (castPtr cs) x_pos' y_pos' width' height' 0 l'+           (Nothing, Nothing) -> flcDrawImageMonoBufWithDL' (castPtr cs) x_pos' y_pos' width' height' 0 0+           (Just d', Just l') -> flcDrawImageMonoBufWithDL' (castPtr cs) x_pos' y_pos' width' height' d' l')++{# fun unsafe flc_can_do_alpha_blending as flcCanDoAlphaBlending' {  } -> `Bool' cToBool #}+flcCanDoAlphaBlending ::  IO (Bool)+flcCanDoAlphaBlending  = flcCanDoAlphaBlending'++{# fun unsafe flc_read_image_with_alpha as flcReadImageWithAlpha' { id `Ptr CUChar', `Int',`Int',`Int',`Int',`Bool' } -> `Ptr CUChar' id #}+flcReadImage :: Rectangle -> Bool -> IO (ByteString)+flcReadImage rectangle alpha =+  let (x_pos', y_pos', width', height') = fromRectangle rectangle+      buffer_size = width' * height' * (if alpha then 4 else 3)+  in+    do+      buffer <- flcReadImageWithAlpha' nullPtr x_pos' y_pos' width' height' alpha+      bs <- packCStringLen ((castPtr buffer), buffer_size)+      free buffer+      return bs++{# fun unsafe flc_draw_pixmap_with_color as flcDrawPixmapWithColor' { id `(Ptr (Ptr CChar))',`Int',`Int',cFromColor `Color' } -> `Int' #}+flcDrawPixmapWithColor :: PixmapHs -> Position -> Color ->  IO (Int)+flcDrawPixmapWithColor pixmap (Position (X x_pos') (Y y_pos')) color' =+    withPixmap pixmap $ \pptr -> flcDrawPixmapWithColor' pptr x_pos' y_pos' color'++{# fun unsafe flc_draw_pixmap as flcDrawPixmap' { id `(Ptr(Ptr CChar))',`Int',`Int' } -> `Int' #}+flcDrawPixmap :: PixmapHs -> Position ->  IO (Int)+flcDrawPixmap pixmap (Position (X x_pos') (Y y_pos')) =+    withPixmap pixmap $ \pptr -> flcDrawPixmap' pptr x_pos' y_pos'++{# fun unsafe flc_draw_pixmap_with_cdata_color as flcDrawPixmapWithCdataColor' { id `(Ptr (Ptr CChar))',`Int',`Int',cFromColor `Color' } -> `Int' #}+flcDrawPixmapWithCdataColor :: PixmapHs -> Position -> Color ->  IO (Int)+flcDrawPixmapWithCdataColor pixmap (Position (X x_pos') (Y y_pos')) color' =+    withPixmap pixmap $ \pptr -> flcDrawPixmapWithCdataColor' pptr x_pos' y_pos' color'++{# fun unsafe flc_draw_pixmap_with_cdata as flcDrawPixmapWithCdata' { id `(Ptr (Ptr CChar))',`Int',`Int' } -> `Int' #}+flcDrawPixmapWithCdata :: PixmapHs -> Position ->  IO (Int)+flcDrawPixmapWithCdata pixmap (Position (X x_pos') (Y y_pos')) =+    withPixmap pixmap $ \pptr -> flcDrawPixmapWithCdata' pptr x_pos' y_pos'++{# fun unsafe flc_measure_pixmap as flcMeasurePixmap' { id `(Ptr (Ptr CChar))',alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv* } -> `Int' #}+flcMeasurePixmap :: PixmapHs ->  IO (Int,Size)+flcMeasurePixmap pixmap =+    withPixmap pixmap $ \pptr ->+        flcMeasurePixmap' pptr >>= \(result, width', height') ->+            return $ (result, toSize (width', height'))++{# fun unsafe flc_measure_pixmap_with_cdata as flcMeasurePixmapWithCdata' { id `(Ptr (Ptr CChar))',alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv* } -> `Int' #}+flcMeasurePixmapWithCdata :: PixmapHs ->  IO (Int,Size)+flcMeasurePixmapWithCdata pixmap  =+    withPixmap pixmap (\pptr -> do+                         (result, width', height') <- flcMeasurePixmapWithCdata' pptr+                         return (result, toSize (width', height'))+                      )++{# fun unsafe flc_shortcut_label as flcShortcutLabel' { `Int' } -> `String' #}+flcShortcutLabel :: Int ->  IO (String)+flcShortcutLabel shortcut = flcShortcutLabel' shortcut++{# fun unsafe flc_old_shortcut as flcOldShortcut' { `String' } -> `Int' #}+flcOldShortcut :: String -> IO (Int)+flcOldShortcut s = flcOldShortcut' s++{# fun unsafe flc_overlay_rect as flcOverlayRect' { `Int',`Int',`Int',`Int' } -> `()' #}+flcOverlayRect :: Rectangle ->  IO ()+flcOverlayRect rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcOverlayRect' x_pos' y_pos' width' height'++{# fun unsafe flc_overlay_clear as flcOverlayClear' {  } -> `()' #}+flcOverlayClear ::  IO ()+flcOverlayClear  = flcOverlayClear'++{# fun unsafe flc_cursor_with_fg_bg as flcCursorWithFgBg' { cFromEnum `Cursor',cFromColor `Color',cFromColor `Color' } -> `()' #}+flcCursorWithFgBg :: Cursor -> Color -> Color ->  IO ()+flcCursorWithFgBg cursore fg bg = flcCursorWithFgBg' cursore fg bg++{# fun unsafe flc_cursor_with_fg as flcCursorWithFg' { cFromEnum `Cursor',cFromColor `Color' } -> `()' #}+flcCursorWithFg :: Cursor -> Color ->  IO ()+flcCursorWithFg cursor fg = flcCursorWithFg' cursor fg++{# fun unsafe flc_cursor_with_bg as flcCursorWithBg' { cFromEnum `Cursor',cFromColor `Color' } -> `()' #}+flcCursorWithBg :: Cursor -> Color ->  IO ()+flcCursorWithBg cursor bg = flcCursorWithBg' cursor bg++{# fun unsafe flc_cursor as flcCursor' { cFromEnum `Cursor' } -> `()' #}+flcCursor :: Cursor ->  IO ()+flcCursor cursor = flcCursor' cursor++{# fun unsafe flc_set_status as flcSetStatus' { `Int',`Int',`Int',`Int' } -> `()' #}+flcSetStatus :: Rectangle ->  IO ()+flcSetStatus rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcSetStatus' x_pos' y_pos' width' height'++{# fun unsafe flc_set_spot_with_win as flcSetSpotWithWin' { `Int',`Int',`Int',`Int',`Int',`Int',id `Ptr ()' } -> `()' #}+flcSetSpotWithWin :: (Parent a Window) => Int -> Int -> Rectangle -> Ref a -> IO ()+flcSetSpotWithWin font' size' rectangle win = let (x_pos', y_pos', width', height') = fromRectangle rectangle in withRef win $ \winPtr -> flcSetSpotWithWin' font' size' x_pos' y_pos' width' height' winPtr++{# fun unsafe flc_set_spot as flcSetSpot' { `Int',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+flcSetSpot :: Int -> Int -> Rectangle ->  IO ()+flcSetSpot font' size' rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcSetSpot' font' size' x_pos' y_pos' width' height'++{# fun unsafe flc_reset_spot as flcResetSpot' {  } -> `()' #}+flcResetSpot ::  IO ()+flcResetSpot  = flcResetSpot'++{# fun unsafe flc_draw_symbol as flcDrawSymbol' { `String',`Int',`Int',`Int',`Int',cFromColor `Color' } -> `Int' #}+flcDrawSymbol :: String -> Rectangle -> Color ->  IO (Int)+flcDrawSymbol label rectangle color' = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcDrawSymbol' label x_pos' y_pos' width' height' color'
+ src/Graphics/UI/FLTK/LowLevel/FL.chs view
@@ -0,0 +1,770 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+module Graphics.UI.FLTK.LowLevel.FL+    (+     Option(..),+     run,+     check,+     ready,+     option,+     setOption,+     addAwakeHandler,+     getAwakeHandler_,+     display,+     ownColormap,+     getSystemColors,+     foreground,+     background,+     background2,+     setScheme,+     isScheme,+     setFirstWindow,+     nextWindow,+     setGrab,+     getMouse,+     eventStates,+     extract,+     extractEventStates,+     handle,+     handle_,+     belowmouse,+     setBelowmouse,+     setPushed,+     setFocus,+     setHandler,+     paste,+     toRectangle,+     fromRectangle,+     screenBounds,+     screenDPI,+     screenWorkArea,+     setColorRgb,+     toAttribute,+     release,+     setVisibleFocus,+     visibleFocus,+     setDndTextOps,+     dndTextOps,+     deleteWidget,+     doWidgetDeletion,+     watchWidgetPointer,+     releaseWidgetPointer,+     clearWidgetPointer,+     version,+     help,+     visual,+#if !defined(__APPLE__)+     glVisual,+     glVisualWithAlist,+#endif+     scheme,+     wait,+     setWait,+     readqueue,+     addTimeout,+     repeatTimeout,+     hasTimeout,+     removeTimeout,+     addCheck,+     hasCheck,+     removeCheck,+     addIdle,+     hasIdle,+     removeIdle,+     damage,+     redraw,+     flush,+     firstWindow,+     modal,+     grab,+     getKey,+     compose,+     composeReset,+     testShortcut,+     enableIm,+     disableIm,+     pushed,+     focus,+     copy,+     copyWithDestination,+     pasteWithSource,+     dnd,+     x,+     y,+     w,+     h,+     screenCount,+     setColor,+     getColor,+     getColorRgb,+#if !defined(__APPLE__)+     removeFromColormap,+#endif+     -- * Box+     BoxtypeSpec,+     getBoxtype,+     setBoxtype,+     boxDx,+     boxDy,+     boxDw,+     boxDh,+     drawBoxActive,+     -- * Fonts+     getFontName,+     getFont,+     getFontSizes,+     setFontByString,+     setFontByFont,+     setFonts,+     setFontsWithString,+     -- * Events+     event,+     eventShift,+     eventCtrl,+     eventCommand,+     eventAlt,+     eventButtons,+     eventButton1,+     eventButton2,+     eventButton3,+     eventX,+     eventY,+     eventXRoot,+     eventYRoot,+     eventDx,+     eventDy,+     eventClicks,+     setEventClicks,+     eventIsClick,+     setEventIsClick,+     eventButton,+     eventState,+     containsEventState,+     eventKey,+     eventOriginalKey,+     eventKeyPressed,+     eventInsideRegion,+     eventInsideWidget,+     eventDispatch,+     setEventDispatch,+     eventText,+     eventLength,+    )+where+#include "Fl_C.h"+import C2HS hiding (cFromEnum, cToBool,cToEnum)+import Data.IORef+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy hiding (+                                                   setVisibleFocus,+                                                   handle,+                                                   redraw,+                                                   flush,+                                                   testShortcut,+                                                   copy,+                                                   setColor,+                                                   getColor,+                                                   focus,+                                                   display+                                                  )+import Graphics.UI.FLTK.LowLevel.Dispatch+import qualified System.IO.Unsafe as Unsafe (unsafePerformIO)+#c+ enum Option {+   OptionArrowFocus = OPTION_ARROW_FOCUS,+   OptionVisibleFocus = OPTION_VISIBLE_FOCUS,+   OptionDndText = OPTION_DND_TEXT,+   OptionShowTooltips = OPTION_SHOW_TOOLTIPS,+   OptionLast = OPTION_LAST+ };+#endc++{#enum Option {} deriving (Show) #}++ptrToGlobalEventHandler :: IORef (FunPtr GlobalEventHandlerPrim)+ptrToGlobalEventHandler = Unsafe.unsafePerformIO $ do+                            initialHandler <- toGlobalEventHandlerPrim (\_ -> return (-1))+                            newIORef initialHandler++type EventDispatchPrim = (CInt ->+                          Ptr () ->+                          IO CInt)+foreign import ccall "wrapper"+        wrapEventDispatchPrim :: EventDispatchPrim ->+                                 IO (FunPtr EventDispatchPrim)+foreign import ccall "dynamic"+        unwrapEventDispatchPrim :: FunPtr EventDispatchPrim -> EventDispatchPrim++run :: IO Int+run = {#call Fl_run as fl_run #} >>= return . fromIntegral++check :: IO Int+check = {#call Fl_check as fl_check #} >>= return . fromIntegral++ready :: IO Int+ready = {#call Fl_ready as fl_ready #} >>= return . fromIntegral+++option :: Option -> IO Bool+option o = {#call Fl_option as fl_option #} (cFromEnum o) >>= \(c::CInt) -> return $ cToBool $ ((fromIntegral c) :: Int)++setOption :: Option -> Bool -> IO ()+setOption o t = {#call Fl_set_option as fl_set_option #} (cFromEnum o) (Graphics.UI.FLTK.LowLevel.Utils.cFromBool t)++unsafeToCallbackPrim :: GlobalCallback -> FunPtr CallbackPrim+unsafeToCallbackPrim = (Unsafe.unsafePerformIO) . toGlobalCallbackPrim++{# fun Fl_add_awake_handler_ as addAwakeHandler'+  {id `FunPtr CallbackPrim', id `(Ptr ())'} -> `Int' #}+addAwakeHandler :: GlobalCallback -> IO Int+addAwakeHandler awakeHandler =+    do+      callbackPtr <-  toGlobalCallbackPrim awakeHandler+      addAwakeHandler' callbackPtr nullPtr++{# fun Fl_get_awake_handler_ as getAwakeHandler_'+  {id `Ptr (FunPtr CallbackPrim)', id `Ptr (Ptr ())'} -> `Int' #}+getAwakeHandler_ :: IO GlobalCallback+getAwakeHandler_ =+    alloca $ \ptrToFunPtr ->+        alloca $ \ptrToUD -> do+          _ <- getAwakeHandler_' ptrToFunPtr ptrToUD+          funPtr <- peek ptrToFunPtr+          return $ unwrapGlobalCallbackPtr $ castFunPtr funPtr++{# fun Fl_version as version+  {} -> `Double' #}+{# fun Fl_help as help+  {} -> `String' #}++display :: String -> IO ()+display text = withCString text $ \str -> {#call Fl_display as fl_display #} str+{# fun Fl_visual as visual+  {cFromEnum `Mode'} -> `Bool' cToBool #}+#if !defined(__APPLE__)+{# fun Fl_gl_visual as glVisual+  {cFromEnum `Mode'} -> `Bool' cToBool #}+{# fun Fl_gl_visual_with_alist as glVisualWithAlist+  {cFromEnum `Mode', id `Ptr CInt'} -> `Bool' cToBool #}+#endif++ownColormap :: IO ()+ownColormap = {#call Fl_own_colormap as fl_own_colormap #}++getSystemColors :: IO ()+getSystemColors = {#call Fl_get_system_colors as fl_get_system_colors #}++foreground :: RGB -> IO ()+foreground (r,g,b) = {#call Fl_foreground as fl_foreground #}+                    (fromIntegral r)+                    (fromIntegral g)+                    (fromIntegral b)+background :: RGB -> IO ()+background (r,g,b) = {#call Fl_background as fl_background #}+                    (fromIntegral r)+                    (fromIntegral g)+                    (fromIntegral b)+background2 :: RGB -> IO ()+background2 (r,g,b) = {#call Fl_background2 as fl_background2 #}+                    (fromIntegral r)+                    (fromIntegral g)+                    (fromIntegral b)+-- | In the function below marked `pure`, c2hs uses `unsafePerformIO` unqualified causing+-- | a compile error if it imported qualifed. This is a workaround.+unsafePerformIO :: IO a -> a+unsafePerformIO = Unsafe.unsafePerformIO+{# fun pure Fl_scheme as scheme+  {} -> `String' #}+setScheme :: String -> IO Int+setScheme sch = withCString sch $ \str -> {#call Fl_set_scheme as fl_set_scheme #} str >>= return . fromIntegral+isScheme :: String -> IO Bool+isScheme sch = withCString sch $ \str -> {#call Fl_is_scheme as fl_is_scheme #} str >>= return . toBool+{# fun Fl_wait as wait+       {  } -> `Int' #}+{# fun Fl_set_wait as setWait+       { `Double' } -> `Double' #}+{# fun Fl_readqueue as readqueue+       {  } -> `Ref Widget' unsafeToRef #}+{# fun Fl_add_timeout as addTimeout+       { `Double', unsafeToCallbackPrim `GlobalCallback' } -> `()' supressWarningAboutRes #}+{# fun Fl_repeat_timeout as repeatTimeout+      { `Double',unsafeToCallbackPrim `GlobalCallback' } -> `()' supressWarningAboutRes #}+{# fun Fl_has_timeout as hasTimeout+       { unsafeToCallbackPrim `GlobalCallback' } -> `Int' #}+{# fun Fl_remove_timeout as removeTimeout+       { unsafeToCallbackPrim `GlobalCallback' } -> `()' supressWarningAboutRes #}+{# fun Fl_add_check as addCheck+       { unsafeToCallbackPrim `GlobalCallback' } -> `()' supressWarningAboutRes #}+{# fun Fl_has_check as hasCheck+       { unsafeToCallbackPrim `GlobalCallback' } -> `Int' #}+{# fun Fl_remove_check as removeCheck+       { unsafeToCallbackPrim `GlobalCallback' } -> `()' supressWarningAboutRes #}+{# fun Fl_add_idle as addIdle+       { unsafeToCallbackPrim `GlobalCallback' } -> `()' supressWarningAboutRes #}+{# fun Fl_has_idle as hasIdle+       { unsafeToCallbackPrim `GlobalCallback' } -> `Int' #}+{# fun Fl_remove_idle as removeIdle+       { unsafeToCallbackPrim `GlobalCallback' } -> `()' supressWarningAboutRes #}+{# fun Fl_damage as damage+       {  } -> `Int' #}+{# fun Fl_redraw as redraw+       {  } -> `()' supressWarningAboutRes #}+{# fun Fl_flush as flush+       {  } -> `()' supressWarningAboutRes #}+{# fun Fl_first_window as firstWindow+       {  } -> `Ref Window' unsafeToRef #}+{# fun Fl_set_first_window as setFirstWindow'+       { id `Ptr ()' } -> `()' supressWarningAboutRes #}+setFirstWindow :: (Parent a Window) => Ref a -> IO ()+setFirstWindow wp =+    withRef wp setFirstWindow'+{# fun Fl_next_window as nextWindow'+       { id `Ptr ()' } -> `Ref Window' unsafeToRef #}+nextWindow :: (Parent a Window) => Ref a -> IO (Ref Window)+nextWindow currWindow =+    withRef currWindow nextWindow'+{# fun Fl_modal as modal+       {  } -> `Ref Window' unsafeToRef #}+{# fun Fl_grab as grab+       {  } -> `Ref Window' unsafeToRef #}+{# fun Fl_set_grab as setGrab'+       { id `Ptr ()' } -> `()' supressWarningAboutRes #}+setGrab :: (Parent a Window) => Ref a -> IO ()+setGrab wp = withRef wp setGrab'+{# fun Fl_event as event+       {  } -> `Event' cToEnum #}+{# fun Fl_event_x as eventX+       {  } -> `Int'#}+{# fun Fl_event_y as eventY+       {  } -> `Int'#}+{# fun Fl_event_x_root as eventXRoot+       {  } -> `Int' #}+{# fun Fl_event_y_root as eventYRoot+       {  } -> `Int' #}+{# fun Fl_event_dx as eventDx+       {  } -> `Int' #}+{# fun Fl_event_dy as eventDy+       {  } ->  `Int' #}+{# fun Fl_get_mouse as getMouse'+   {+     alloca- `Int' peekIntConv* ,+     alloca- `Int' peekIntConv*+   } -> `()' #}+getMouse :: IO Position+getMouse = do+  (x_pos,y_pos) <- getMouse'+  return $ (Position (X x_pos) (Y y_pos))+{# fun Fl_event_clicks as eventClicks+       {  } -> `Int'#}+{# fun Fl_set_event_clicks as setEventClicks+       { `Int' } -> `()' supressWarningAboutRes #}+{# fun Fl_event_is_click as eventIsClick+       {  } -> `Bool' toBool #}+{# fun Fl_set_event_is_click as setEventIsClick+       { `Int' } -> `()' supressWarningAboutRes #}+{# fun Fl_event_button as eventButton+       {  } -> `MouseButton' cToEnum #}+eventStates :: [EventState]+eventStates = [+               Kb_ShiftState,+               Kb_CapsLockState,+               Kb_CtrlState,+               Kb_AltState,+               Kb_NumLockState,+               Kb_MetaState,+               Kb_ScrollLockState,+               Mouse_Button1State,+               Mouse_Button2State,+               Mouse_Button3State+              ]+extractEventStates :: CInt -> [EventState]+extractEventStates = extract eventStates+-- foldModifiers :: [KeyboardCode] -> CInt+-- foldModifiers codes =+--     let validKeysyms = map cFromEnum (filter (\c -> c `elem` validKeyboardStates) codes)+--     in+--       case validKeysyms of+--         [] -> (-1)+--         (k:ks) -> foldl (\accum k' -> accum .&. k') k ks+{# fun Fl_event_state as eventState+       {  } -> `[EventState]' extractEventStates #}+{# fun Fl_contains_event_state as containsEventState+       {cFromEnum `EventState' } -> `Bool' toBool #}+{# fun Fl_event_key as eventKey+       {  } -> `KeyType' cToKeyType #}+{# fun Fl_event_original_key as eventOriginalKey+       {  } -> `KeyType' cToKeyType #}+{# fun Fl_event_key_pressed as eventKeyPressed+       {cFromKeyType `KeyType' } -> `Bool' toBool #}+{# fun Fl_get_key as getKey+       {cFromKeyType `KeyType' } -> `Bool' toBool #}+{# fun Fl_event_text as eventText+       {  } -> `String' #}+{# fun Fl_event_length as eventLength+       {  } -> `Int' #}+{# fun Fl_compose as compose+       { alloca- `Int' peekIntConv* } -> `Bool' toBool #}+{# fun Fl_compose_reset as composeReset+       {  } -> `()' supressWarningAboutRes #}+{# fun Fl_event_inside_region as eventInsideRegion'+       { `Int',`Int',`Int',`Int' } -> `Int' #}+eventInsideRegion :: Rectangle -> IO Event+eventInsideRegion (Rectangle+                   (Position+                    (X x_pos)+                    (Y y_pos))+                   (Size+                    (Width width)+                    (Height height))) =+    do+      eventNum <- eventInsideRegion' x_pos y_pos width height+      return $ toEnum eventNum+{# fun Fl_event_inside_widget as eventInsideWidget'+       { id `Ptr ()' } -> `Int' #}+eventInsideWidget :: (Parent a Widget) => Ref a -> IO Event+eventInsideWidget wp =+    withRef wp  (\ptr -> do+                      eventNum <- eventInsideWidget' (castPtr ptr)+                      return $ toEnum eventNum)+{# fun Fl_test_shortcut as testShortcut+       { id `FlShortcut' } -> `Bool' toBool #}+{# fun Fl_enable_im as enableIm+       {} -> `()' supressWarningAboutRes #}+{# fun Fl_disable_im as disableIm+       {} -> `()' supressWarningAboutRes #}+{# fun Fl_handle as handle'+       { `Int',id `Ptr ()' } -> `Int' #}+handle :: (Parent a Window) =>  Event -> Ref a -> IO Int+handle e wp =+    withRef wp (handle' (cFromEnum e))+{# fun Fl_handle_ as handle_'+       { `Int',id `Ptr ()' } -> `Int' #}+handle_ :: (Parent a Window) =>  Event -> Ref a -> IO Int+handle_ e wp =+    withRef wp (handle_' (cFromEnum e))+{# fun Fl_belowmouse as belowmouse+       {  } -> `Ref Widget' unsafeToRef #}+{# fun Fl_set_belowmouse as setBelowmouse'+       { id `Ptr ()' } -> `()' supressWarningAboutRes #}+setBelowmouse :: (Parent a Widget) => Ref a -> IO ()+setBelowmouse wp = withRef wp setBelowmouse'+{# fun Fl_pushed as pushed+       {  } -> `Ref Widget' unsafeToRef #}+{# fun Fl_set_pushed as setPushed'+       { id `Ptr ()' } -> `()' supressWarningAboutRes #}+setPushed :: (Parent a Widget) => Ref a -> IO ()+setPushed wp = withRef wp setPushed'+{# fun Fl_focus as focus+       {  } -> `Ref Widget' unsafeToRef #}+{# fun Fl_set_focus as setFocus'+       { id `Ptr ()' } -> `()' supressWarningAboutRes #}+setFocus :: (Parent a Widget) => Ref a -> IO ()+setFocus wp = withRef wp setFocus'+{# fun Fl_add_handler as addHandler'+       { id `FunPtr GlobalEventHandlerPrim' } -> `()' supressWarningAboutRes #}+{# fun Fl_remove_handler as removeHandler'+       { id `FunPtr GlobalEventHandlerPrim' } -> `()' supressWarningAboutRes #}+setHandler :: GlobalEventHandlerF -> IO ()+setHandler eh = do+  newGlobalEventHandler <- toGlobalEventHandlerPrim eh+  curr <- do+    old <- readIORef ptrToGlobalEventHandler+    writeIORef ptrToGlobalEventHandler newGlobalEventHandler+    return old+  removeHandler' curr+  addHandler' newGlobalEventHandler++{# fun Fl_set_event_dispatch as setEventDispatch'+       { id `Ptr (FunPtr EventDispatchPrim)' } -> `()' supressWarningAboutRes #}+{# fun Fl_event_dispatch as eventDispatch'+       {  } -> `FunPtr EventDispatchPrim' id #}+eventDispatch :: (Parent a Widget) => IO (Event -> Ref a -> IO (Int))+eventDispatch =+    do+      funPtr <- eventDispatch'+      return (\e window ->+                  withRef+                   window+                    (\ptr ->+                         let eventNum = fromIntegral (fromEnum e)+                             fun = unwrapEventDispatchPrim funPtr+                         in fun eventNum (castPtr ptr) >>=+                            return . fromIntegral+                    )+             )++setEventDispatch :: (Parent a Widget) => (Event -> Ref a -> IO Int) -> IO ()+setEventDispatch ed = do+    do+      let toPrim = (\e ptr ->+                      let eventEnum = toEnum $ fromIntegral e+                      in do+                      obj <- toRef ptr+                      result <- ed eventEnum obj+                      return $ fromIntegral result+                    )+      callbackPtr <-  wrapEventDispatchPrim toPrim+      ptrToCallbackPtr <- new callbackPtr+      poke ptrToCallbackPtr callbackPtr+      setEventDispatch' ptrToCallbackPtr+{# fun Fl_copy as copy+       { `String',`Int' } -> `()' supressWarningAboutRes #}+{# fun Fl_copy_with_destination as copyWithDestination+       { `String',`Int',`Int' } -> `()' supressWarningAboutRes #}+{# fun Fl_paste_with_source as pasteWithSource+       { id `Ptr ()',`Int' } -> `()' supressWarningAboutRes #}+paste :: (Parent a Widget) => Ref a -> Maybe Int -> IO ()+paste widget (Just clipboard) = withRef widget ((flip pasteWithSource) clipboard)+paste widget Nothing          = withRef widget ((flip pasteWithSource) 0)++{# fun Fl_dnd as dnd+       {  } -> `Int' #}+{# fun Fl_x as x+       {  } -> `Int' #}+{# fun Fl_y as y+       {  } -> `Int' #}+{# fun Fl_w as w+       {  } -> `Int' #}+{# fun Fl_h as h+       {  } -> `Int' #}+{# fun Fl_screen_count as screenCount+       {  } -> `Int' #}++{# fun Fl_screen_xywh as screenXYWH+       {+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv*+       } -> `()'  #}+{# fun Fl_screen_xywh_with_mxmy as screenXYWYWithMXMY+       {+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         `Int',+         `Int'+       } -> `()'  #}+{# fun Fl_screen_xywh_with_n as screenXYWNWithN+       {+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         `Int'+       } -> `()'  #}+{# fun Fl_screen_xywh_with_mxmymwmh as screenXYWHWithNMXMYMWMH+       {+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         `Int',+         `Int',+         `Int',+         `Int'+       } -> `()' #}++screenBounds :: Maybe ScreenLocation -> IO Rectangle+screenBounds location =+    case location of+      (Just (Intersect (Rectangle (Position (X x_pos) (Y y_pos)) (Size (Width width) (Height height))))) ->+          screenXYWHWithNMXMYMWMH x_pos y_pos width height >>= return . toRectangle+      (Just (ScreenPosition (Position (X x_pos) (Y y_pos)))) ->+          screenXYWYWithMXMY x_pos y_pos >>= return . toRectangle+      (Just (ScreenNumber n)) ->+          screenXYWNWithN n >>= return . toRectangle+      Nothing ->+          screenXYWH >>= return . toRectangle++{# fun Fl_screen_dpi as screenDpi'+       { alloca- `Float' peekFloatConv*,+         alloca- `Float' peekFloatConv* }+           -> `()' #}+{# fun Fl_screen_dpi_with_n as screenDpiWithN'+       { alloca- `Float' peekFloatConv*,+         alloca- `Float' peekFloatConv*,+                 `Int' }+           -> `()' #}++screenDPI :: Maybe Int -> IO DPI+screenDPI (Just n) = do+  (dpiX, dpiY) <- screenDpiWithN' n+  return $ DPI dpiX dpiY+screenDPI Nothing = do+  (dpiX, dpiY) <- screenDpi'+  return $ DPI dpiX dpiY++{# fun Fl_screen_work_area_with_mx_my as screenWorkAreaWithMXMY'+       {+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         `Int',+         `Int'+       }+         -> `()' #}+{# fun Fl_screen_work_area_with_n as screenWorkAreaWithN'+       {+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         `Int'+       }+        -> `()' #}+{# fun Fl_screen_work_area as screenWorkArea'+       {+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv* ,+         alloca- `Int' peekIntConv*+       }+        -> `()' id- #}+screenWorkArea :: Maybe ScreenLocation -> IO Rectangle+screenWorkArea location =+    case location of+      (Just (Intersect (Rectangle (Position (X x_pos) (Y y_pos)) _))) ->+          screenWorkAreaWithMXMY' x_pos y_pos >>= return . toRectangle+      (Just (ScreenPosition (Position (X x_pos) (Y y_pos)))) ->+          screenWorkAreaWithMXMY' x_pos y_pos >>= return . toRectangle+      (Just (ScreenNumber n)) ->+          screenWorkAreaWithN' n >>= return . toRectangle+      Nothing ->+          screenWorkArea' >>= return . toRectangle++setColorRgb :: Color -> Int -> Int -> Int -> IO ()+setColorRgb c r g b = {#call Fl_set_color_rgb as fl_set_color_rgb #}+                        (cFromColor c)+                        (fromIntegral r)+                        (fromIntegral g)+                        (fromIntegral b)+{# fun Fl_set_color as setColor+       { cFromColor `Color',`Int' } -> `()' supressWarningAboutRes #}+{# fun Fl_get_color as getColor+       { cFromColor `Color' } -> `Int' #}+{# fun Fl_get_color_rgb as getColorRgb+       {+         cFromColor `Color',+         alloca- `Word8' peekIntConv*,+         alloca- `Word8' peekIntConv*,+         alloca- `Word8' peekIntConv*+       } -> `()' supressWarningAboutRes #}++#if !defined(__APPLE__)+{# fun Fl_free_color as freeColor'+      { cFromColor `Color' } -> `()' supressWarningAboutRes #}+{# fun Fl_free_color_with_overlay as freeColorWithOverlay'+       { cFromColor `Color', `Int' } -> `()' supressWarningAboutRes #}+removeFromColormap :: Maybe Int -> Color -> IO ()+removeFromColormap (Just overlay) c = freeColorWithOverlay' c overlay+removeFromColormap Nothing c = freeColor' c+#endif+{# fun Fl_get_font as getFont+       { cFromFont `Font' } -> `String' #}+{# fun Fl_get_font_name_with_attributes as getFontNameWithAttributes'+       { cFromFont `Font', alloca- `Maybe FontAttribute' toAttribute* } -> `String' #}+toAttribute :: Ptr CInt -> IO (Maybe FontAttribute)+toAttribute ptr =+        do+          attributeCode <- peekIntConv ptr+          return $ cToFontAttribute attributeCode+getFontName :: Font -> IO (String, Maybe FontAttribute)+getFontName f = getFontNameWithAttributes' f+{# fun Fl_get_font_sizes as getFontSizes+       { cFromFont `Font', alloca- `Int' peekIntConv* } -> `Int' #}+{# fun Fl_set_font_by_string as setFontByString+       { cFromFont `Font',`String' } -> `()' supressWarningAboutRes #}+{# fun Fl_set_font_by_font as setFontByFont+       { cFromFont `Font',cFromFont `Font' } -> `()' supressWarningAboutRes #}+{# fun Fl_set_fonts as setFonts+       {  } -> `Font' cToFont #}+{# fun Fl_set_fonts_with_string as setFontsWithString+       { `String' } -> `Font' cToFont #}+{# fun Fl_get_boxtype as getBoxtype'+       { cFromEnum `Boxtype' } -> `FunPtr BoxDrawFPrim' id #}++getBoxtype :: Boxtype -> IO BoxDrawF+getBoxtype bt = do+  wrappedFunPtr <- getBoxtype' bt+  let boxDrawPrim = unwrapBoxDrawFPrim wrappedFunPtr+  return $ toBoxDrawF boxDrawPrim++{# fun Fl_set_boxtype as setBoxtype'+       {+         cFromEnum `Boxtype',+         id `FunPtr BoxDrawFPrim',+         `Word8',+         `Word8',+         `Word8',+         `Word8'+       } -> `()' supressWarningAboutRes #}+{# fun Fl_set_boxtype_by_boxtype as setBoxtypeByBoxtype'+       {+         cFromEnum `Boxtype',+         cFromEnum `Boxtype'+       } -> `()' supressWarningAboutRes #}++data BoxtypeSpec = FromSpec BoxDrawF Word8 Word8 Word8 Word8+                 | FromBoxtype Boxtype+setBoxtype :: Boxtype -> BoxtypeSpec -> IO ()+setBoxtype bt (FromSpec f dx dy dw dh) =+    do+      funPtr <- wrapBoxDrawFPrim (toBoxDrawFPrim f)+      setBoxtype' bt funPtr dx dy dw dh+setBoxtype bt (FromBoxtype template) =+    setBoxtypeByBoxtype' bt template++{# fun Fl_box_dx as boxDx+       { cFromEnum `Boxtype' } -> `Int' #}+{# fun Fl_box_dy as boxDy+       { cFromEnum `Boxtype' } -> `Int' #}+{# fun Fl_box_dw as boxDw+       { cFromEnum `Boxtype' } -> `Int' #}+{# fun Fl_box_dh as boxDh+       { cFromEnum `Boxtype' } -> `Int' #}+{# fun Fl_draw_box_active as drawBoxActive+       {  } -> `Bool' toBool #}+{# fun Fl_event_shift as eventShift+       {  } -> `Bool' toBool #}+{# fun Fl_event_ctrl as eventCtrl+       {  } -> `Bool' toBool #}+{# fun Fl_event_command as eventCommand+       {  } -> `Bool' toBool #}+{# fun Fl_event_alt as eventAlt+       {  } -> `Bool' toBool #}+{# fun Fl_event_buttons as eventButtons+       {  } -> `Bool' toBool #}+{# fun Fl_event_button1 as eventButton1+       {  } -> `Bool' toBool #}+{# fun Fl_event_button2 as eventButton2+       {  } -> `Bool' toBool #}+{# fun Fl_event_button3 as eventButton3+      {  } -> `Bool' toBool #}+release :: IO ()+release = {#call Fl_release as fl_release #}+setVisibleFocus :: Int -> IO ()+setVisibleFocus = {#call Fl_set_visible_focus as fl_set_visible_focus #} . fromIntegral+visibleFocus :: IO Int+visibleFocus = {#call Fl_visible_focus as fl_visible_focus #} >>= return . fromIntegral+setDndTextOps :: Bool -> IO ()+setDndTextOps =  {#call Fl_set_dnd_text_ops as fl_set_dnd_text_ops #} . fromBool+dndTextOps :: IO Option+dndTextOps = {#call Fl_dnd_text_ops as fl_dnd_text_ops #} >>= return . cToEnum+deleteWidget :: (Parent a Widget) => Ref a -> IO ()+deleteWidget wptr =+  swapRef wptr $ \ptr -> do+    {#call Fl_delete_widget as fl_delete_widget #} ptr+    return nullPtr+doWidgetDeletion :: IO ()+doWidgetDeletion = {#call Fl_do_widget_deletion as fl_do_widget_deletion #}+watchWidgetPointer :: (Parent a Widget) => Ref a -> IO ()+watchWidgetPointer wp = withRef wp {#call Fl_watch_widget_pointer as fl_Watch_widget_Pointer #}+releaseWidgetPointer :: (Parent a Widget) => Ref a -> IO ()+releaseWidgetPointer wp = withRef wp {#call Fl_release_widget_pointer as fl_release_widget_pointer #}+clearWidgetPointer :: (Parent a Widget) => Ref a -> IO ()+clearWidgetPointer wp = withRef wp {#call Fl_clear_widget_pointer as fl_Clear_Widget_Pointer #}
+ src/Graphics/UI/FLTK/LowLevel/FLTKHS.hs view
@@ -0,0 +1,455 @@+module Graphics.UI.FLTK.LowLevel.FLTKHS+       (+         -- * Motivation+         --+         -- $Motivation++         -- * Goals+         --+         -- $Goals++         -- * Installation+         --+         -- $Installation++         -- * Demos+         --+         -- $Demos++         -- * Getting Started+         --+         -- $GettingStarted++         -- * API Guide+         --+         -- $APIGuide++         -- * Core Types+         module Graphics.UI.FLTK.LowLevel.Fl_Types,+         -- * Widgets+         module Graphics.UI.FLTK.LowLevel.Adjuster,+         module Graphics.UI.FLTK.LowLevel.Bitmap,+         module Graphics.UI.FLTK.LowLevel.Box,+         module Graphics.UI.FLTK.LowLevel.Browser,+         module Graphics.UI.FLTK.LowLevel.Button,+         module Graphics.UI.FLTK.LowLevel.CheckButton,+         module Graphics.UI.FLTK.LowLevel.Choice,+         module Graphics.UI.FLTK.LowLevel.Clock,+         module Graphics.UI.FLTK.LowLevel.CopySurface,+         module Graphics.UI.FLTK.LowLevel.Counter,+         module Graphics.UI.FLTK.LowLevel.Dial,+         module Graphics.UI.FLTK.LowLevel.DoubleWindow,+         module Graphics.UI.FLTK.LowLevel.Draw,+         module Graphics.UI.FLTK.LowLevel.FillDial,+         module Graphics.UI.FLTK.LowLevel.FillSlider,+         module Graphics.UI.FLTK.LowLevel.GlWindow,+         module Graphics.UI.FLTK.LowLevel.Group,+         module Graphics.UI.FLTK.LowLevel.HorFillSlider,+         module Graphics.UI.FLTK.LowLevel.HorNiceSlider,+         module Graphics.UI.FLTK.LowLevel.HorSlider,+         module Graphics.UI.FLTK.LowLevel.HorValueSlider,+         module Graphics.UI.FLTK.LowLevel.Image,+         module Graphics.UI.FLTK.LowLevel.ImageSurface,+         module Graphics.UI.FLTK.LowLevel.Input,+         module Graphics.UI.FLTK.LowLevel.IntInput,+         module Graphics.UI.FLTK.LowLevel.LightButton,+         module Graphics.UI.FLTK.LowLevel.LineDial,+         module Graphics.UI.FLTK.LowLevel.MenuPrim,+         module Graphics.UI.FLTK.LowLevel.MenuButton,+         module Graphics.UI.FLTK.LowLevel.MenuItem,+         module Graphics.UI.FLTK.LowLevel.NiceSlider,+         module Graphics.UI.FLTK.LowLevel.OverlayWindow,+         module Graphics.UI.FLTK.LowLevel.Pixmap,+         module Graphics.UI.FLTK.LowLevel.Positioner,+         module Graphics.UI.FLTK.LowLevel.Progress,+         module Graphics.UI.FLTK.LowLevel.RadioLightButton,+         module Graphics.UI.FLTK.LowLevel.RepeatButton,+         module Graphics.UI.FLTK.LowLevel.ReturnButton,+         module Graphics.UI.FLTK.LowLevel.Roller,+         module Graphics.UI.FLTK.LowLevel.RoundButton,+         module Graphics.UI.FLTK.LowLevel.Scrollbar,+         module Graphics.UI.FLTK.LowLevel.SelectBrowser,+         module Graphics.UI.FLTK.LowLevel.SimpleCounter,+         module Graphics.UI.FLTK.LowLevel.SingleWindow,+         module Graphics.UI.FLTK.LowLevel.Slider,+         module Graphics.UI.FLTK.LowLevel.SysMenuBar,+         module Graphics.UI.FLTK.LowLevel.Table,+         module Graphics.UI.FLTK.LowLevel.TableRow,+         module Graphics.UI.FLTK.LowLevel.Timer,+         module Graphics.UI.FLTK.LowLevel.ToggleButton,+         module Graphics.UI.FLTK.LowLevel.Tree,+         module Graphics.UI.FLTK.LowLevel.TreeItem,+         module Graphics.UI.FLTK.LowLevel.TreePrefs,+         module Graphics.UI.FLTK.LowLevel.Valuator,+         module Graphics.UI.FLTK.LowLevel.ValueInput,+         module Graphics.UI.FLTK.LowLevel.ValueOutput,+         module Graphics.UI.FLTK.LowLevel.ValueSlider,+         module Graphics.UI.FLTK.LowLevel.Widget,+         module Graphics.UI.FLTK.LowLevel.Window,+         module Graphics.UI.FLTK.LowLevel.Wizard,+         module Graphics.UI.FLTK.LowLevel.TextSelection,+         module Graphics.UI.FLTK.LowLevel.TextBuffer,+         module Graphics.UI.FLTK.LowLevel.TextDisplay,+         module Graphics.UI.FLTK.LowLevel.TextEditor,+         -- * Machinery for static dispatch+         module Graphics.UI.FLTK.LowLevel.Dispatch,+         -- * Association of widgets and functions+         module Graphics.UI.FLTK.LowLevel.Hierarchy+       )+where+import Graphics.UI.FLTK.LowLevel.GlWindow+import Graphics.UI.FLTK.LowLevel.SingleWindow+import Graphics.UI.FLTK.LowLevel.Window+import Graphics.UI.FLTK.LowLevel.DoubleWindow+import Graphics.UI.FLTK.LowLevel.OverlayWindow+import Graphics.UI.FLTK.LowLevel.Button+import Graphics.UI.FLTK.LowLevel.LightButton+import Graphics.UI.FLTK.LowLevel.RadioLightButton+import Graphics.UI.FLTK.LowLevel.CheckButton+import Graphics.UI.FLTK.LowLevel.ReturnButton+import Graphics.UI.FLTK.LowLevel.RoundButton+import Graphics.UI.FLTK.LowLevel.RepeatButton+import Graphics.UI.FLTK.LowLevel.ToggleButton+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Group+import Graphics.UI.FLTK.LowLevel.Widget+import Graphics.UI.FLTK.LowLevel.Valuator+import Graphics.UI.FLTK.LowLevel.Slider+import Graphics.UI.FLTK.LowLevel.HorSlider+import Graphics.UI.FLTK.LowLevel.FillSlider+import Graphics.UI.FLTK.LowLevel.HorFillSlider+import Graphics.UI.FLTK.LowLevel.HorNiceSlider+import Graphics.UI.FLTK.LowLevel.HorValueSlider+import Graphics.UI.FLTK.LowLevel.NiceSlider+import Graphics.UI.FLTK.LowLevel.MenuItem+import Graphics.UI.FLTK.LowLevel.MenuPrim+import Graphics.UI.FLTK.LowLevel.SysMenuBar+import Graphics.UI.FLTK.LowLevel.Choice+import Graphics.UI.FLTK.LowLevel.MenuButton+import Graphics.UI.FLTK.LowLevel.Image+import Graphics.UI.FLTK.LowLevel.Bitmap+import Graphics.UI.FLTK.LowLevel.Pixmap+import Graphics.UI.FLTK.LowLevel.Draw+import Graphics.UI.FLTK.LowLevel.CopySurface+import Graphics.UI.FLTK.LowLevel.ImageSurface+import Graphics.UI.FLTK.LowLevel.Adjuster+import Graphics.UI.FLTK.LowLevel.Dial+import Graphics.UI.FLTK.LowLevel.FillDial+import Graphics.UI.FLTK.LowLevel.LineDial+import Graphics.UI.FLTK.LowLevel.Roller+import Graphics.UI.FLTK.LowLevel.Counter+import Graphics.UI.FLTK.LowLevel.SimpleCounter+import Graphics.UI.FLTK.LowLevel.Scrollbar+import Graphics.UI.FLTK.LowLevel.ValueSlider+import Graphics.UI.FLTK.LowLevel.ValueInput+import Graphics.UI.FLTK.LowLevel.ValueOutput+import Graphics.UI.FLTK.LowLevel.Timer+import Graphics.UI.FLTK.LowLevel.Progress+import Graphics.UI.FLTK.LowLevel.Positioner+import Graphics.UI.FLTK.LowLevel.Input+import Graphics.UI.FLTK.LowLevel.Wizard+import Graphics.UI.FLTK.LowLevel.Table+import Graphics.UI.FLTK.LowLevel.TableRow+import Graphics.UI.FLTK.LowLevel.Box+import Graphics.UI.FLTK.LowLevel.Browser+import Graphics.UI.FLTK.LowLevel.SelectBrowser+import Graphics.UI.FLTK.LowLevel.IntInput+import Graphics.UI.FLTK.LowLevel.Clock+import Graphics.UI.FLTK.LowLevel.TreePrefs+import Graphics.UI.FLTK.LowLevel.TreeItem+import Graphics.UI.FLTK.LowLevel.Tree+import Graphics.UI.FLTK.LowLevel.TextSelection()+import Graphics.UI.FLTK.LowLevel.TextBuffer+import Graphics.UI.FLTK.LowLevel.TextDisplay+import Graphics.UI.FLTK.LowLevel.TextEditor++-- $Module Documentation+-- This module re-exports all the available widgets and their core types. The types and list+-- of widgets is listed under the __Core Types__ and __Widgets__ section below.+--+-- A general introduction to the library follows.+--++-- $Motivation+-- This library aims to make it easy for users to build native apps that work portably across platforms.+--+-- The original author is also very interested the renewed interested in user interfaces in the+-- programming community, whether the various kinds of functional reactive programming, meta-object protocol UI's,+-- or something like React.js.+--+-- The hope is that a low-cost hassle-free way of getting a UI up and running without having to deal with+-- browser, authentication and compilation issues will make it more fun to play around with these great ideas+-- using Haskell.+--+-- == Why a native toolkit?+-- Even in this era of web interfaces it is still useful to be able to make native apps. They are usually faster+-- , easier to deploy and have fewer issues with respect to security.+--+-- == Why FLTK, or why not QT?+-- - The original author chose FLTK because it was small enough that one person could bind the whole thing in an initial+-- pass. QT, although way slicker, would require many man-years of effort.+-- - FLTK is quite featureful+-- - FLTK is mature and maintained, the project is about 20 years old and author has had good experiences with the community+--+-- == What about HsQML\/WxHaskell/Gtk2Hs?+-- These are all great projects and produce really nice UI's, but they all fail at least one of criterion listed under the __Goals__ section below.+--+-- To the author's knowledge, as of the first quarter of 2015, no other package in the Haskell ecosystem meets all those constraints.+--++-- $Goals+-- The goals of this library are to provide a low level API to the <http://fltk.org FLTK> that:+--+-- (1) provides full coverage of the toolkit allowing the user to write GUI's in pure Haskell.+-- (2) feels like it has polymorphic dispatch, meaning a single function dispatches to the right implementation based on the type of widget it is given+-- (3) is /not/ monolithic, meaning new widgets can be incorporated the user's application without needing to recompile this library+-- (4) is conservative on the extensions so that older GHC's (and perhaps non-GHC compilers) can use it+-- (5) is easy to install. This library has a minimum of dependencies and <http://fltk.org FLTK> itself compiles cleanly on most architectures+-- (6) allows the user to produce statically linked binaries with no external dependencies+-- (7) includes a lot of complete working demos so that the user can get up and running faster+--++-- $Installation+-- Unfortunately this package does not currently install in Windows. The instructions below are only for OSX and Linux.+--+-- - Make sure you have OpenGL installed+-- - Download and install <http://www.fltk.org/software.php?VERSION=1.3.3&FILE=fltk/1.3.3/fltk-1.3.3-source.tar.gz FLTK 1.3.3>.+-- - The recommended way of installing FLTK on Linux is from source. The reason is that some package managers seem to put the headers and libraries in a non-standard locations which will cause the Haskell bindings to throw compilation errors. On OSX and Linux it should build and install smoothly using the standard:+--+-- @+-- > ./configure+-- > make+-- > make install+-- @+--+-- If you are customizing your `configure` step it is important to at least enable OpenGL and Cairo like so:+--+--     > > ./configure --enable-gl --enable-cairo+--+-- If you didn't install FLTK from source you will need to ensure that the FLTK headers are in the include path and, along with the standard FLTK library, `fltk_gl`, and `fltk_cairo` are also in the library path. You will also need the `make`, `autoconf`, and `autoheader` tools to build the Haskell bindings.+--+-- - Make sure `c2hs` is installed with `cabal install c2hs`.+--+-- - Do+--+--     > > cabal install fltkhs+--+-- or:+--+--     > > git clone https://github.com/deech/fltkhs+--     > > cabal install+--+-- __Note:__ If this step produces a flood of `undefined reference` errors please ensure that you have the right version of FLTK (1.3.3) installed and that the headers are in the expected locations. It seems as though some package managers put the libraries and headers in non-standard places.+--+-- - Test that the build completed successfully by invoking+--+--     > > fltkhs-hello-world+--++-- $Demos+--+-- The available demos are listed in `fltkhs.cabal` as separate `Executable` components.+-- Once the package is installed they are installed to Cabal's standard /bin/ directory (usually /~\/.cabal\/bin).+--+-- Note that the executables install prefixed with \"fltkhs-\". Typing:+--+--     > > fltkhs-<TAB>+--+-- at the command line should show a list of available demos.+--+-- Alternatively you can do:+--+--     > > ls ~/.cabal/bin/fltkhs-*+--+--+-- Most of the demos are exact ports of those shipped in the /test/ directory of the <http://fltk.org FLTK> distribution.+-- It is hoped the user will study the Haskell demo code side-by-side with the C++ demo code in order to understand the API.+-- The section __API Guide__ covers this in more detail.+--+-- == Why is the demo code so un-Haskelly?+-- For being written in Haskell, the demo code is horrifyingly\/amazingly imperative and stateful. Although it may repulse those+-- who used to pure Haskell idioms it is that way for a reason.+--+-- The demo code was never meant to be idiomatic Haskell code but a way of showing as much of the API as possible. The API itself+-- closely resembles the underlying C++ code which is imperative and stateful. This has the advantage of making the API easier+-- to learn.+--+-- For instance, assuming FLTK was installed from source compare /src\/Examples\/arc.hs with /test\/arc.cxx in the FLTK+-- source directory. There is quite a bit of correspondence and it is easy to see how the Haskell API functions map to the C++ ones.+--+--++-- $GettingStarted+--+-- It is assumed that by this point the user has successfully installed this library and examples.+--+--+-- = Quick Start+-- The quickest way to a working program is /src\/Examples\/hello-world.hs/ which gets compiled+-- to the executable 'fltkhs-hello-world'. It show basic widget creation and callbacks.+--+-- The other demos show more complicated usage.+--+-- Since the API is a low-level binding, code using it takes on the imperative style of the underlying toolkit.+-- Fortunately it should look pretty familiar to those who have used object-oriented GUI toolkits before.+--+--++-- $APIGuide+--+-- = Guide to the Haddock Docs+-- Convenient access to the underlying C++ is achieved using typeclasses and type-level programming to emulate+-- classes and subclasses. This approach makes Haddock very unhappy and the generated documentation+-- is frequently unhelpful. For instance, newcomers to this library  are urged+-- not to look at "Graphics.UI.FLTK.LowLevel.Dispatch" or "Graphics.UI.FLTK.LowLevel.Hierarchy". The purpose+-- of this guide is to point users in a more useful direction.+--+--+-- The documentation provided with this API is not yet self-contained and is meant to be used in tandem+-- with the <http://www.fltk.org/doc-1.3/classes.html C++ documentation>. The rest of this document is about+-- how the Haskell functions and datatypes map to the C++ ones.+--+-- == Widget Construction+-- Each widget has its own module all of which are listed below under the __Widgets__ heading . Most modules+-- include a function named `<widgetName>New` that returns a reference to that widget. Although the user does not+-- have to deal with raw pointers directly it might help to understand that this reference is a pointer to a void+-- pointer to a C++ object.+--+-- For instance, 'windowNew' creates a 'Ref' 'Window' which is a pointer to a C++ object of type `Fl_Window`,+-- the FLTK class that knows how to draw, display and handle window events.+--+-- This value of type 'Ref' 'Window' is then passed along to various functions which, transparent to the user,+-- extract the pointer and pass it to the appropriate /Fl_Window/ instance method.+--+-- == Widget Methods+-- The Haskell functions that bind to the instance methods of an FLTK class are listed under the __Functions__ heading in that widget's module.+-- It's worth remembering that these type signatures associated with the functions listed under the __Functions__ heading are not+-- the real ones but are artifically generated because they are much more helpful to users. For instance, the actual type of 'activate' exposes+-- all the type level arithmetic required so it can be used by subclasses of 'Widget' but is pretty unhelpful as a reference+-- compared to the artificial type under __Functions__ heading of  "Graphics.UI.FLTK.LowLevel.Widget".+--+-- Unfortunately to see this more helpful type signature the poor reader has to navigate to the corresponding widget's+-- module, find the __Functions__ header and scroll down to the desired function. Haddock, unfortunately, does not support anchors that+-- link to a named point in the page. The author is /very/ open to ideas on how to make this easier.+--+-- Carrying on the previous example from the __Widget Creation__ section, the methods on a 'Ref' 'Window' widget are documented in "Graphics.UI.FLTK.LowLevel.Window"+-- under __Functions__. Each function takes the 'Ref' 'Window' reference as its first argument followed by whatever else it needs and+-- delegates it appropriately.+--+-- As this is a low-level binding the Haskell functions are kept as close as possible in name and argument list to the underlying C++.+-- This allows users familiar with the FLTK API to use this library with less learning overhead and it lets newcomers to+-- FLTK take advantage of the already extensive <http://www.fltk.org/doc-1.3/classes.html C++ documentation>.+--+-- Functions are named to make it as easy as possible to find the corresponding C++ function, however there are+-- some naming conventions to keep in mind:+--+-- (1) setters and getters are prefixed with /set/ and /get/ respectively. In C++ both have the same name; the setter+-- takes an argument while the getter does not. Since Haskell does not support overloading this convention is used.+--+-- (2) in many cases C++ uses overloading to provide default values to arguments. Since Haskell does+-- not support overloading these arguments are 'Maybe' types eg. the `hotspot` function in "Graphics.UI.FLTK.LowLevel.Window".+-- In other cases where the common use case leaves the default arguments unspecified the binding provides two functions,+-- a longer less-convenient-to-type one that takes the default argument and a short one that does not+-- eg. `drawBox` and `drawBoxWithBoxtype`, also in "Graphics.UI.FLTK.LowLevel.Window".+--+-- (3) error codes are 'Either' types+--+-- (4) function arguments which are pointers to be filled are not exposed to the API user. For instance, a common C++ idiom is to+-- return a string by taking a pointer to some initialized but empty chunk of memory and filling it up. The corresponding Haskell+-- function just returns a 'String'.+--+--+-- It is hoped that until the documentation becomes more self-sustaining the user can use these heuristics (and the type signatures)+-- along with the official FLTK documentation to "guess" what the binding functions do.+--+-- == Widget Hierarchy+-- Every widget module in the API has a __Hierarchy__ heading that shows all its parents.+--+-- The design of the API makes all the parent functions transparently available to that widget. This is also the reason why the actual type+-- signatures are so complicated requiring the manual generation of artificial type signatures.+--+-- For instance, the __Functions__ section under "Graphics.UI.FLTK.LowLevel.Window" shows that a 'Ref' 'Window' can be passed to /getModal/ to check if+-- the window is modal, but it can also be passed to /children/ in "Graphics.UI.FLTK.LowLevel.Group" which counts up the number+-- of widgets inside the 'Window' and /getX/ in "Graphics.UI.FLTK.LowLevel.Widget" which returns the X coordinate of the+-- 'Window''s top-left hand corner.+--+-- The hierarchy corresponds almost exactly to the underlying C++ class hierarchy so, again, the user is able to take advantage of the+-- <http://www.fltk.org/doc-1.3/classes.html C++ documentation> to use the binding API.+--+-- === Overriding C++ methods+-- The binding API provides a /very/ limited form of inheritance by allowing the user to provide Haskell implementations+-- of certain key methods on a small set of classes. Which methods and which classes were determined by original author of this+-- library based on a casual look at FLTK code in the wild and what was required for porting the demoes. If there is a+-- pressing need for more methods or classes, please contact the maintainer.+--+-- When providing custom methods the object constructor is no longer `<widgetName>New` but `<widgetName>Custom`,+-- which, in addition the parameters taken by `<widgetName>New` also takes records of Haskell functions which are+-- then passed to the C++ side.+--+-- Much like a callback, the Haskell functions are passed as function pointers to the C++ side and called whenever+-- the event loop deems appropriate. Unlike callbacks, they can be set only on object instantiation.+--+-- An example of this is "Graphics.UI.FLTK.LowLevel.Widget" which, since it is a base class for most widgets and doesn't have much+-- functionality of its own, only allows custom construction using 'widgetCustom'. This constructor takes a 'CustomWidgetFuncs'+-- datatype which is a record of functions which tells a "Graphics.UI.FLTK.LowLevel.Widget" how to handle events and draw,+-- resize and display itself.+--+-- Again "Graphics.UI.FLTK.LowLevel.Window" can be used a motivating example. Its custom constructor 'windowCustom', in fact, takes two+-- records. A 'CustomWidgetFuncs' which allows the user to override methods in its "Graphics.UI.FLTK.LowLevel.Widget" parent class+-- and also a 'CustomWindowFuncs' record which allows the user to override /flush/, a method on the Window class which tells the window+-- how to force a redraw. For example, the demo /src\/Examples\/doublebuffer.hs/ (which corresponds to the executable 'ftlkhs-doublebuffer')+-- tells both windows how to draw themselves in a Haskell function that uses low-level FLTK drawing routines by overriding the draw function+-- of their "Graphics.UI.FLTK.LowLevel.Widget" parent.+--+-- Every widget that supports customizing also provides a default function record that can be passed to the constructor. For example, "Graphics.UI.FLTK.LowLevel.Widget"+-- provides 'defaultCustomWidgetFuncs' and "Graphics.UI.FLTK.LowLevel.Window" has 'defaultCustomWindowFuncs'. In the demo mentioned above+-- the 'singleWindowCustom' function is given 'defaultCustomWidgetFuncs' but with an overridden 'drawCustom'.+--+-- Another case where customization comes up a lot is when using "Graphics.UI.FLTK.LowLevel.Table" which is a low-level table widget that needs+-- to be told, for example, how to draw its cells. The demo /src\/Examples\/table-simple.hs/ (corresponding to the executable 'fltkhs-table-simple')+-- shows this  in action.+--+-- Hopefully the demos just mentioned and others included with this library show that even though customizing is limited it is possible to do a lot.+--+-- Additionally for most customizable functions a widget provides a corresponding function that calls the default C++ implementation+-- as the function name suffixed with \"Super\". For instance, the user can provide a custom implementation of /handle/ on "Graphics.UI.FLTK.LowLevel.Window"+-- via the constructor and every call to /handle/ invokes that implementation, but the user can also call /handleSuper/ to get at the default C+++-- implementation. This comes in handy when the custom function is just setting up variables or logging and wants underlying+-- implementation to take over at some point.+--+-- __Warning__: since calls to the default implementation of the function, /handleSuper/, for example, are available to the widget they are automatically+-- available to all subclasses of the widget. The author acknowledges this is a confusing aspect of the library's design but hopes the benefit of+-- being able to get at the default implementation out-weighs the trap the user might fall into. If this becomes a pervasive problem the author is+-- open to removing this functionality.+--+-- =File Layout+-- @+-- Root+--   - c-src            -- The C bindings+--   - c-examples       -- demos written using the C bindings (not installed)+--   - src+--     - Examples       -- Haskell demos+--     - TestPrograms   -- Haskell test programs+--     - Graphics+--       - UI+--         - FLTK+--           - LowLevel -- Haskell bindings+--   - scripts          -- various helper scripts (probably not interesting to anyone but the original author)+-- @+--+-- = Common Type Errors+--+-- * No instance for ('FindOp' () (Blah ()) ('Match' r0)) ...+--+-- Given code that look something like:+--+-- @+-- do+--   ...+--   blah widget+--   ...+-- @+--+-- that means this the widget `widget` does not support the function `blah`.
+ src/Graphics/UI/FLTK/LowLevel/FillDial.chs view
@@ -0,0 +1,38 @@+module Graphics.UI.FLTK.LowLevel.FillDial+    (+     -- * Constructor+     fillDialNew+     -- * Hierarchy+     --+     -- $hierarchy+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_DialC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Fill_Dial_New as fillDialNew' { `Int',`Int',`Int',`Int', `String' } -> `Ptr ()' id #}+fillDialNew :: Rectangle -> String -> IO (Ref FillDial)+fillDialNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in+    fillDialNew' x_pos y_pos width height l' >>= toRef++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Dial"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.FillDial"+-- @
+ src/Graphics/UI/FLTK/LowLevel/FillSlider.chs view
@@ -0,0 +1,44 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.FillSlider+    (+     fillSliderNew+     -- * Hierarchy+     --+     -- $hierarchy++    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_SliderC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Fill_Slider_New as fillSliderNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Fill_Slider_New_WithLabel as fillSliderNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+fillSliderNew :: Rectangle -> Maybe String -> IO (Ref FillSlider)+fillSliderNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> fillSliderNew' x_pos y_pos width height >>=+                             toRef+        Just l -> fillSliderNewWithLabel' x_pos y_pos width height l >>=+                             toRef++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Slider"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.FillSlider"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Fl_Enumerations.chs view
@@ -0,0 +1,1112 @@+{-# LANGUAGE CPP #-}+#include "Fl_C.h"+#include "Fl_EnumerationsC.h"+module Graphics.UI.FLTK.LowLevel.Fl_Enumerations+    (+     -- * Events+     Event(..),+     When(..),+     FdWhen(..),+     -- * Tree Attributes+     TreeSort(..),+     TreeConnector(..),+     TreeSelect(..),+     -- * Keyboard and mouse codes+     SpecialKey(..),+     allSpecialKeys,+     MouseButton(..),+     EventState(..),+     allEventStates,+     kb_CommandState, kb_ControlState, kb_KpLast,+     -- * Widget damage types+     Damage(..),+     -- * Glut attributes+     GlutDraw(..),+     GlutMouseCodes(..),+     GlutUpDown(..),+     GlutVisibility(..),+     GlutMenuProperties(..),+     GlutEnteredLeft(..),+     GlutKeyboardCodes(..),+     GlutConstants(..),+     GlutWindowProperties(..),+     GlutCursor(..),+     glutCursorFullCrossHair,+     -- * Cursor type+     Cursor(..),+     -- * Various modes+     Mode(..),+     single,+     -- * Alignment+     Alignments(..),+     AlignType(..),+     alignCenter,+     alignTop,+     alignBottom,+     alignLeft,+     alignRight,+     alignInside,+     alignTextOverImage,+     alignClip,+     alignWrap,+     alignImageNextToText,+     alignTextNextToImage,+     alignImageBackdrop,+     alignLeftTop,+     alignRightTop,+     alignLeftBottom,+     alignRightBottom,+     alignPositionMask,+     alignImageMask,+     alignNoWrap,+     alignImageOverText,+     alignTopLeft,+     alignTopRight,+     alignBottomLeft,+     alignBottomRight,+     allAlignTypes,+     allWhen,+     -- * Box types+     Boxtype(..),+     frame,frameBox, circleBox, diamondBox,+     -- * Box functions+     defineRoundUpBox,+     defineShadowBox,+     defineRoundedBox,+     defineRflatBox,+     defineRshadowBox,+     defineDiamondBox,+     defineOvalBox,+     definePlasticUpBox,+     defineGtkUpBox,+     -- * Fonts+     Font(..),+     FontAttribute(..),+     -- ** (Un-)marshalling+     cFromFont,+     cToFont,+     cFromFontAttribute,+     cToFontAttribute,+     -- ** Font Names+     helvetica,+     helveticaBold,+     helveticaItalic,+     helveticaBoldItalic,+     courier,+     courierBold,+     courierItalic,+     courierBoldItalic,+     times,+     timesBold,+     timesItalic,+     timesBoldItalic,+     symbol,+     screen,+     screenBold,+     zapfDingbats,+     freeFont,++     -- * Colors+     Color(..),+     -- ** (Un-)marshalling+     cFromColor,+     cToColor,+     -- ** Various Color Functions+     inactive,+     contrast,+     color_average,+     lighter,+     darker,+     rgbColorWithRgb,+     rgbColorWithGrayscale,+     grayRamp,+     colorCube,+     -- ** Color Names+     foregroundColor,+     background2Color,+     inactiveColor,+     selectionColor,+     gray0Color,+     dark3Color,+     dark2Color,+     dark1Color,+     backgroundColor,+     light1Color,+     light2Color,+     light3Color,+     blackColor,+     redColor,+     greenColor,+     yellowColor,+     blueColor,+     magentaColor,+     cyanColor,+     darkRedColor,+     darkGreenColor,+     darkYellowColor,+     darkBlueColor,+     darkMagentaColor,+     darkCyanColor,+     whiteColor,+     freeColor,+     numFreeColor,+     grayRampColor,+     numGray,+     grayColor,+     colorCubeColor,+     numRed,+     numGreen,+     numBlue,+     -- * Labels+     Labeltype(..),+     symbolLabel,+     defineShadowLabel,+     defineEngravedLabel,+     defineEmbossedLabel+    )+where+import C2HS+#c+enum VersionInfo {+  MajorVersion = FL_MAJOR_VERSION,+  MinorVersion = FL_MINOR_VERSION,+  PatchVersion = FL_PATCH_VERSION,+  Version = FL_VERSION+};+enum Event {+  NoEvent = FL_NO_EVENT,+  Push = FL_PUSH,+  Release = FL_RELEASE,+  Enter = FL_ENTER,+  Leave = FL_LEAVE,+  Drag = FL_DRAG,+  Focus = FL_FOCUS,+  Unfocus = FL_UNFOCUS,+  Keydown = FL_KEYDOWN,+  // FL_KEYBOARD same as above,+  Keyup = FL_KEYUP,+  Close = FL_CLOSE,+  Move = FL_MOVE,+  Shortcut = FL_SHORTCUT,+  Deactivate = FL_DEACTIVATE,+  Activate = FL_ACTIVATE,+  Hide = FL_HIDE,+  Show = FL_SHOW,+  Paste = FL_PASTE,+  Selectionclear = FL_SELECTIONCLEAR,+  Mousewheel = FL_MOUSEWHEEL,+  DndEnter = FL_DND_ENTER,+  DndDrag = FL_DND_DRAG,+  DndLeave = FL_DND_LEAVE,+  DndRelease = FL_DND_RELEASE,+  ScreenConfigurationChanged = FL_SCREEN_CONFIGURATION_CHANGED,+  Fullscreen = FL_FULLSCREEN+};+enum When {+  WhenNever = FL_WHEN_NEVER,+  WhenChanged = FL_WHEN_CHANGED,+  WhenNotChanged = FL_WHEN_NOT_CHANGED,+  WhenRelease = FL_WHEN_RELEASE,+  WhenReleaseAlways=  FL_WHEN_RELEASE_ALWAYS,+  WhenEnterKey = FL_WHEN_ENTER_KEY,+  WhenEnterKeyAlways = FL_WHEN_ENTER_KEY_ALWAYS,+  WhenEnterKeyChanged = FL_WHEN_ENTER_KEY_CHANGED+};+enum FdWhen {+  CanRead = FL_READ,+  CanWrite = FL_WRITE,+  OnExcept = FL_EXCEPT+};+enum TreeSort{+  TreeSortNone = FL_TREE_SORT_NONE,+  TreeSortAscending = FL_TREE_SORT_ASCENDING,+  TreeSortDescending = FL_TREE_SORT_DESCENDING+};+enum TreeConnector{+  TreeConnectorNone = FL_TREE_CONNECTOR_NONE,+  TreeConnectorDotted = FL_TREE_CONNECTOR_DOTTED,+  TreeConnectorSolid = FL_TREE_CONNECTOR_SOLID+};+enum TreeSelect{+  TreeSelectNone = FL_TREE_SELECT_NONE,+  TreeSelectSingle = FL_TREE_SELECT_SINGLE,+  TreeSelectMulti = FL_TREE_SELECT_MULTI+};+enum SpecialKey {+  Button = FL_Button,+  Kb_Backspace = FL_BackSpace,+  Kb_Tab = FL_Tab,+  Kb_IsoKey = FL_Iso_Key,+  Kb_Enter = FL_Enter,+  Kb_Pause = FL_Pause,+  Kb_Escape = FL_Escape,+  Kb_Kana = FL_Kana,+  Kb_Eisu = FL_Eisu,+  Kb_Yen = FL_Yen,+  Kb_JisUnderscore = FL_JIS_Underscore,+  Kb_Home = FL_Home,+  Kb_Left = FL_Left,+  Kb_Up = FL_Up,+  Kb_Right = FL_Right,+  Kb_Down = FL_Down,+  Kb_PageUp = FL_Page_Up,+  Kb_PageDown = FL_Page_Down,+  Kb_End = FL_End,+  Kb_Print = FL_Print,+  Kb_Insert = FL_Insert,+  Kb_Menu = FL_Menu,+  Kb_Help = FL_Help,+  Kb_Kp = FL_KP,+  Kb_KpEnter = FL_KP_Enter,+  Kb_F = FL_F,+  Kb_Flast = FL_F_Last,+  Kb_ShiftL = FL_Shift_L,+  Kb_ShiftR = FL_Shift_R,+  Kb_ControlL = FL_Control_L,+  Kb_ControlR = FL_Control_R,+  Kb_CapsLock = FL_Caps_Lock,+  Kb_MetaL = FL_Meta_L,+  Kb_MetaR = FL_Meta_R,+  Kb_AltL = FL_Alt_L,+  Kb_AltR = FL_Alt_R,+  Kb_Delete = FL_Delete,+  Kb_VolumeDown = FL_Volume_Down,+  Kb_VolumeMute = FL_Volume_Mute,+  Kb_VolumeUp = FL_Volume_Up,+  Kb_MediaPlay = FL_Media_Play,+  Kb_MediaStop = FL_Media_Stop,+  Kb_MediaPrev = FL_Media_Prev,+  Kb_MediaNext = FL_Media_Next,+  Kb_HomePage = FL_Home_Page,+  Kb_Mail = FL_Mail,+  Kb_Search = FL_Search,+  Kb_Back = FL_Back,+  Kb_Forward = FL_Forward,+  Kb_Stop = FL_Stop,+  Kb_Refresh = FL_Refresh,+  Kb_Sleep = FL_Sleep,+  Kb_Favorites = FL_Favorites,+};+enum MouseButton {+  Mouse_Left = FL_LEFT_MOUSE,+  Mouse_Middle = FL_MIDDLE_MOUSE,+  Mouse_Right = FL_RIGHT_MOUSE,+};+enum EventState {+  Kb_ShiftState = FL_SHIFT,+  Kb_CapsLockState = FL_CAPS_LOCK,+  Kb_CtrlState = FL_CTRL,+  Kb_AltState = FL_ALT,+  Kb_NumLockState = FL_NUM_LOCK,+  Kb_MetaState = FL_META,+  Kb_ScrollLockState = FL_SCROLL_LOCK,+  Mouse_Button1State = FL_BUTTON1,+  Mouse_Button2State = FL_BUTTON2,+  Mouse_Button3State= FL_BUTTON3,+};+enum KeyboardKeyMask {+  Kb_KeyMask = FL_KEY_MASK+};+enum MouseButtonsMask {+  Mouse_ButtonsMask = FL_BUTTONS,+};+enum Damage {+ DamageChild   = FL_DAMAGE_CHILD,+ DamageExpose  = FL_DAMAGE_EXPOSE,+ DamageScroll  = FL_DAMAGE_SCROLL,+ DamageOverlay = FL_DAMAGE_OVERLAY,+ DamageUser1   = FL_DAMAGE_USER1,+ DamageUser2   = FL_DAMAGE_USER2,+ DamageAll     = FL_DAMAGE_ALL+};+enum GlutDraw {+ GlutNormal = GLUT_NORMAL,+ GlutOverlay = GLUT_OVERLAY+};+enum GlutMouseCodes {+ GlutLeftButton = GLUT_LEFT_BUTTON,+ GlutRightButton = GLUT_RIGHT_BUTTON,+ GlutMiddleButton = GLUT_MIDDLE_BUTTON+};+enum GlutUpDown {+ GlutUp = GLUT_UP,+ GlutDown = GLUT_DOWN+};+enum GlutVisibility {+ GlutVisible = GLUT_VISIBLE,+ GlutNotVisible = GLUT_NOT_VISIBLE+};+enum GlutMenuProperties {+ GlutMenuNotInUse = GLUT_MENU_NOT_IN_USE,+ GlutMenuInUse = GLUT_MENU_IN_USE,+ GlutMenuNumItems = GLUT_MENU_NUM_ITEMS+};+enum GlutEnteredLeft {+ GlutEntered = GLUT_ENTERED,+ GlutLeft = GLUT_LEFT+};+enum GlutKeyboardCodes {+ GlutKeyF1 =  GLUT_KEY_F1,+ GlutKeyF2 =  GLUT_KEY_F2,+ GlutKeyF3 =  GLUT_KEY_F3,+ GlutKeyF4 =  GLUT_KEY_F4,+ GlutKeyF5 =  GLUT_KEY_F5,+ GlutKeyF6 =  GLUT_KEY_F6,+ GlutKeyF7 =  GLUT_KEY_F7,+ GlutKeyF8 =  GLUT_KEY_F8,+ GlutKeyF9 =  GLUT_KEY_F9,+ GlutKeyF10 =  GLUT_KEY_F10,+ GlutKeyF11 =  GLUT_KEY_F11,+ GlutKeyF12 =  GLUT_KEY_F12,+ GlutKeyLeft =  GLUT_KEY_LEFT,+ GlutKeyUp =  GLUT_KEY_UP,+ GlutKeyRight =  GLUT_KEY_RIGHT,+ GlutKeyDown =  GLUT_KEY_DOWN,+ GlutKeyPageUp =  GLUT_KEY_PAGE_UP,+ GlutKeyPageDown =  GLUT_KEY_PAGE_DOWN,+ GlutKeyHome =  GLUT_KEY_HOME,+ GlutKeyEnd =  GLUT_KEY_END,+ GlutKeyInsert =  GLUT_KEY_INSERT,+ GlutActiveShift =  GLUT_ACTIVE_SHIFT,+ GlutActiveCtrl  =  GLUT_ACTIVE_CTRL,+ GlutActiveAlt   =  GLUT_ACTIVE_ALT+};+enum GlutConstants {+ GlutReturnZero =  GLUT_RETURN_ZERO,+ GlutDisplayModePossible =  GLUT_DISPLAY_MODE_POSSIBLE,+ GlutVersion =  GLUT_VERSION,+ GlutOverlayPossible =  GLUT_OVERLAY_POSSIBLE,+ GlutTransparentIndex =  GLUT_TRANSPARENT_INDEX,+ GlutNormalDamaged =  GLUT_NORMAL_DAMAGED,+ GlutOverlayDamaged =  GLUT_OVERLAY_DAMAGED+};+enum GlutWindowProperties {+ GlutWindowX =  GLUT_WINDOW_X,+ GlutWindowY =  GLUT_WINDOW_Y,+ GlutWindowWidth =  GLUT_WINDOW_WIDTH,+ GlutWindowHeight =  GLUT_WINDOW_HEIGHT,+ GlutWindowParent =  GLUT_WINDOW_PARENT,+ GlutScreenWidth =  GLUT_SCREEN_WIDTH,+ GlutScreenHeight =  GLUT_SCREEN_HEIGHT,+ GlutInitWindowX =  GLUT_INIT_WINDOW_X,+ GlutInitWindowY =  GLUT_INIT_WINDOW_Y,+ GlutInitWindowWidth =  GLUT_INIT_WINDOW_WIDTH,+ GlutInitWindowHeight =  GLUT_INIT_WINDOW_HEIGHT,+ GlutInitDisplayMode =  GLUT_INIT_DISPLAY_MODE,+ GlutWindowBufferSize =  GLUT_WINDOW_BUFFER_SIZE,+ GlutWindowStencilSize =  GLUT_WINDOW_STENCIL_SIZE,+ GlutWindowDepthSize =  GLUT_WINDOW_DEPTH_SIZE,+ GlutWindowRedSize =  GLUT_WINDOW_RED_SIZE,+ GlutWindowGreenSize =  GLUT_WINDOW_GREEN_SIZE,+ GlutWindowBlueSize =  GLUT_WINDOW_BLUE_SIZE,+ GlutWindowAlphaSize =  GLUT_WINDOW_ALPHA_SIZE,+ GlutWindowAccumRedSize =  GLUT_WINDOW_ACCUM_RED_SIZE,+ GlutWindowAccumGreenSize =  GLUT_WINDOW_ACCUM_GREEN_SIZE,+ GlutWindowAccumBlueSize =  GLUT_WINDOW_ACCUM_BLUE_SIZE,+ GlutWindowAccumAlphaSize =  GLUT_WINDOW_ACCUM_ALPHA_SIZE,+ GlutWindowDoublebuffer =  GLUT_WINDOW_DOUBLEBUFFER,+ GlutWindowRgba =  GLUT_WINDOW_RGBA,+ GlutWindowColormapSize =  GLUT_WINDOW_COLORMAP_SIZE,+ GlutWindowNumSamples =  GLUT_WINDOW_NUM_SAMPLES,+ GlutWindowStereo =  GLUT_WINDOW_STEREO+};+enum GlutCursor {+  GlutCursorRightArrow = 2,+  GlutCursorLeftArrow = 67,+  GlutCursorDestroy = 45,+  GlutCursorCycle = 26,+  GlutCursorSpray = 63,+  GlutCursorInfo = FL_CURSOR_HAND,+  GlutCursorHelp = FL_CURSOR_HELP,+  GlutCursorWait = FL_CURSOR_WAIT,+  GlutCursorText = FL_CURSOR_INSERT,+  GlutCursorLeftRight = FL_CURSOR_WE,+  GlutCursorTopSide = FL_CURSOR_N,+  GlutCursorBottomSide = FL_CURSOR_S,+  GlutCursorLeftSide = FL_CURSOR_W,+  GlutCursorRightSide = FL_CURSOR_E,+  GlutCursorTopLeftCorner = FL_CURSOR_NW,+  GlutCursorTopRightCorner = FL_CURSOR_NE,+  GlutCursorBottomRightCorner = FL_CURSOR_SE,+  GlutCursorBottomLeftCorner = FL_CURSOR_SW,+  GlutCursorInherit = FL_CURSOR_DEFAULT,+  GlutCursorNone = FL_CURSOR_NONE,+  GlutCursorUpDown = FL_CURSOR_NS,+  GlutCursorCrosshair = FL_CURSOR_CROSS+};+enum Cursor {+ CursorDefault = FL_CURSOR_DEFAULT,+ CursorArrow   = FL_CURSOR_ARROW,+ CursorCross   = FL_CURSOR_CROSS,+ CursorWait    = FL_CURSOR_WAIT,+ CursorInsert  = FL_CURSOR_INSERT,+ CursorHand    = FL_CURSOR_HAND,+ CursorHelp    = FL_CURSOR_HELP,+ CursorMove    = FL_CURSOR_MOVE,+ CursorNS      = FL_CURSOR_NS,+ CursorWE      = FL_CURSOR_WE,+ CursorNWSE    = FL_CURSOR_NWSE,+ CursorNesw    = FL_CURSOR_NESW,+ CursorNone    = FL_CURSOR_NONE,+ CursorN       = FL_CURSOR_N,+ CursorNE      = FL_CURSOR_NE,+ CursorE       = FL_CURSOR_E,+ CursorSE      = FL_CURSOR_SE,+ CursorS       = FL_CURSOR_S,+ CursorSW      = FL_CURSOR_SW,+ CursorW       = FL_CURSOR_W,+ CursorNW      = FL_CURSOR_NW+};+enum Mode {+ ModeRGB         = FL_RGB,+ ModeIndex       = FL_INDEX,+ ModeDouble      = FL_DOUBLE,+ ModeAccum       = FL_ACCUM,+ ModeAlpha       = FL_ALPHA,+ ModeDepth       = FL_DEPTH,+ ModeStencil     = FL_STENCIL,+ ModeRGB8        = FL_RGB8,+ ModeMultisample = FL_MULTISAMPLE,+ ModeStereo      = FL_STEREO,+ ModeFakeSingle  = FL_FAKE_SINGLE+};+enum AlignType {+ AlignTypeCenter          = 0,+ AlignTypeTop             = 1,+ AlignTypeBottom          = 2,+ AlignTypeLeft            = 4,+ AlignTypeRight           = 8,+ AlignTypeInside          = 16,+ AlignTypeTextOverImage   = 0x0020,+ AlignTypeClip            = 64,+ AlignTypeWrap            = 128,+ AlignTypeImageNextToText = 0x0100,+ AlignTypeTextNextToImage = 0x0120,+ AlignTypeImageBackdrop   = 0x0200,+ AlignTypeLeftTop         = 0x0007,+ AlignTypeRightTop        = 0x000b,+ AlignTypeLeftBottom      = 0x000d,+ AlignTypeRightBottom     = 0x000e,+};+#endc+{#enum Event {} deriving (Show, Eq) #}+{#enum When {} deriving (Show, Eq, Ord) #}+{#enum FdWhen {} deriving (Show, Eq) #}+{#enum TreeSort {} deriving (Show, Eq) #}+{#enum TreeConnector {} deriving (Show, Eq) #}+{#enum TreeSelect {} deriving (Show, Eq) #}+#if FLTK_ABI_VERSION >= 10302+{#enum TreeItemReselectMode {} deriving (Show, Eq) #}+{#enum TreeItemDrawMode {} deriving (Show, Eq) #}+#endif /*FLTK_ABI_VERSION*/+{#enum SpecialKey {} deriving (Show, Eq) #}+allSpecialKeys :: [SpecialKey]+allSpecialKeys = [+    Button,+    Kb_Backspace,+    Kb_Tab,+    Kb_IsoKey,+    Kb_Enter,+    Kb_Pause,+    Kb_Escape,+    Kb_Kana,+    Kb_Eisu,+    Kb_Yen,+    Kb_JisUnderscore,+    Kb_Home,+    Kb_Left,+    Kb_Up,+    Kb_Right,+    Kb_Down,+    Kb_PageUp,+    Kb_PageDown,+    Kb_End,+    Kb_Print,+    Kb_Insert,+    Kb_Menu,+    Kb_Help,+    Kb_Kp,+    Kb_KpEnter,+    Kb_F,+    Kb_Flast,+    Kb_ShiftL,+    Kb_ShiftR,+    Kb_ControlL,+    Kb_ControlR,+    Kb_CapsLock,+    Kb_MetaL,+    Kb_MetaR,+    Kb_AltL,+    Kb_AltR,+    Kb_Delete,+    Kb_VolumeDown,+    Kb_VolumeMute,+    Kb_VolumeUp,+    Kb_MediaPlay,+    Kb_MediaStop,+    Kb_MediaPrev,+    Kb_MediaNext,+    Kb_HomePage,+    Kb_Mail,+    Kb_Search,+    Kb_Back,+    Kb_Forward,+    Kb_Stop,+    Kb_Refresh,+    Kb_Sleep,+    Kb_Favorites+  ]++{#enum MouseButton {} deriving (Show, Eq) #}+{#enum EventState {} deriving (Show, Eq, Ord) #}+kb_CommandState, kb_ControlState :: EventState+#ifdef __APPLE__+kb_CommandState = Kb_MetaState+kb_ControlState = Kb_CtrlState+#else+kb_CommandState = Kb_CtrlState+kb_ControlState = Kb_MetaState+#endif+kb_KpLast :: SpecialKey+kb_KpLast = Kb_F+{#enum Damage {} deriving (Show) #}+{#enum GlutDraw {} deriving (Show) #}+{#enum GlutMouseCodes {} deriving (Show) #}+{#enum GlutUpDown {} deriving (Show) #}+{#enum GlutVisibility {} deriving (Show) #}+{#enum GlutMenuProperties {} deriving (Show) #}+{#enum GlutEnteredLeft {} deriving (Show) #}+{#enum GlutKeyboardCodes {} deriving (Show) #}+{#enum GlutConstants {} deriving (Show) #}+{#enum GlutWindowProperties {} deriving (Show) #}+{#enum GlutCursor {} deriving (Show) #}+glutCursorFullCrossHair :: GlutCursor+glutCursorFullCrossHair = GlutCursorCrosshair+{#enum Cursor {} deriving (Show) #}+{#enum Mode   {} deriving (Show) #}+{#enum AlignType {} deriving (Show, Eq, Ord) #}+newtype Alignments = Alignments [AlignType]+alignCenter :: Alignments+alignCenter = Alignments [AlignTypeCenter]+alignTop :: Alignments+alignTop = Alignments [AlignTypeTop]+alignBottom :: Alignments+alignBottom = Alignments [AlignTypeBottom]+alignLeft :: Alignments+alignLeft = Alignments [AlignTypeLeft]+alignRight :: Alignments+alignRight = Alignments [AlignTypeRight]+alignInside :: Alignments+alignInside = Alignments [AlignTypeInside]+alignTextOverImage :: Alignments+alignTextOverImage = Alignments [AlignTypeTextOverImage]+alignClip :: Alignments+alignClip = Alignments [AlignTypeClip]+alignWrap :: Alignments+alignWrap = Alignments [AlignTypeWrap]+alignImageNextToText :: Alignments+alignImageNextToText = Alignments [AlignTypeImageNextToText]+alignTextNextToImage :: Alignments+alignTextNextToImage = Alignments [AlignTypeTextNextToImage]+alignImageBackdrop :: Alignments+alignImageBackdrop = Alignments [AlignTypeImageBackdrop]+alignLeftTop :: Alignments+alignLeftTop = Alignments [AlignTypeLeftTop]+alignRightTop :: Alignments+alignRightTop = Alignments [AlignTypeRightTop]+alignLeftBottom :: Alignments+alignLeftBottom = Alignments [AlignTypeLeftBottom]+alignRightBottom :: Alignments+alignRightBottom = Alignments [AlignTypeRightBottom]+alignPositionMask :: Alignments+alignPositionMask = Alignments [AlignTypeLeft, AlignTypeRight, AlignTypeTop, AlignTypeBottom]+alignImageMask :: Alignments+alignImageMask = Alignments [AlignTypeImageBackdrop, AlignTypeImageNextToText, AlignTypeTextOverImage]+alignNoWrap :: Alignments+alignNoWrap = alignCenter+alignImageOverText :: Alignments+alignImageOverText = alignCenter+alignTopLeft :: Alignments+alignTopLeft = Alignments [AlignTypeTop, AlignTypeLeft]+alignTopRight :: Alignments+alignTopRight = Alignments [AlignTypeTop, AlignTypeRight]+alignBottomLeft :: Alignments+alignBottomLeft = Alignments [AlignTypeBottom, AlignTypeLeft]+alignBottomRight :: Alignments+alignBottomRight = Alignments [AlignTypeBottom, AlignTypeRight]+allAlignTypes :: [AlignType]+allAlignTypes = [+      AlignTypeCenter,+      AlignTypeTop,+      AlignTypeBottom,+      AlignTypeLeft,+      AlignTypeRight,+      AlignTypeInside,+      AlignTypeTextOverImage,+      AlignTypeClip,+      AlignTypeWrap,+      AlignTypeImageNextToText,+      AlignTypeTextNextToImage,+      AlignTypeImageBackdrop,+      AlignTypeLeftTop,+      AlignTypeRightTop,+      AlignTypeLeftBottom,+      AlignTypeRightBottom+      ]+allWhen :: [When]+allWhen = [+    WhenNever,+    WhenChanged,+    WhenNotChanged,+    WhenRelease,+    WhenReleaseAlways,+    WhenEnterKey,+    WhenEnterKeyAlways,+    WhenEnterKeyChanged+  ]++allEventStates :: [EventState]+allEventStates = [+    Kb_ShiftState,+    Kb_CapsLockState,+    Kb_CtrlState,+    Kb_AltState,+    Kb_NumLockState,+    Kb_MetaState,+    Kb_ScrollLockState,+    Mouse_Button1State,+    Mouse_Button2State,+    Mouse_Button3State+  ]+data Boxtype = NoBox+             | FlatBox+             | UpBox+             | DownBox+             | UpFrame+             | DownFrame+             | ThinUpBox+             | ThinDownBox+             | ThinUpFrame+             | ThinDownFrame+             | EngravedBox+             | EmbossedBox+             | EngravedFrame+             | EmbossedFrame+             | BorderBox+             | ShadowBox+             | BorderFrame+             | ShadowFrame+             | RoundedBox+             | RshadowBox+             | RoundedFrame+             | RFlatBox+             | RoundUpBox+             | RoundDownBox+             | DiamondUpBox+             | DiamondDownBox+             | OvalBox+             | OshadowBox+             | OvalFrame+             | FloatBox+             | PlasticUpBox+             | PlasticDownBox+             | PlasticUpFrame+             | PlasticDownFrame+             | PlasticThinUpBox+             | PlasticThinDownBox+             | PlasticRoundUpBox+             | PlasticRoundDownBox+             | GtkUpBox+             | GtkDownBox+             | GtkUpFrame+             | GtkDownFrame+             | GtkThinUpBox+             | GtkThinDownBox+             | GtkThinUpFrame+             | GtkThinDownFrame+             | GtkRoundUpBox+             | GtkRoundDownBox+             | FreeBoxtype+             deriving (Show)+instance Enum Boxtype where+  fromEnum NoBox = 0+  fromEnum FlatBox = 1+  fromEnum UpBox = 2+  fromEnum DownBox = 3+  fromEnum UpFrame = 4+  fromEnum DownFrame = 5+  fromEnum ThinUpBox = 6+  fromEnum ThinDownBox = 7+  fromEnum ThinUpFrame = 8+  fromEnum ThinDownFrame = 9+  fromEnum EngravedBox = 10+  fromEnum EmbossedBox = 11+  fromEnum EngravedFrame = 12+  fromEnum EmbossedFrame = 13+  fromEnum BorderBox = 14+  fromEnum ShadowBox = defineShadowBox_+  fromEnum BorderFrame = 16+  fromEnum ShadowFrame = defineShadowBox_ + 2+  fromEnum RoundedBox = defineRoundedBox_+  fromEnum RshadowBox = defineRshadowBox_+  fromEnum RoundedFrame = defineRoundedBox_ + 2+  fromEnum RFlatBox = defineRflatBox_+  fromEnum RoundUpBox = defineRoundUpBox_+  fromEnum RoundDownBox = defineRoundUpBox_ + 1+  fromEnum DiamondUpBox = defineDiamondBox_+  fromEnum DiamondDownBox = defineDiamondBox_ + 1+  fromEnum OvalBox = defineOvalBox_+  fromEnum OshadowBox = defineOvalBox_ + 1+  fromEnum OvalFrame = defineOvalBox_ + 2+  fromEnum FloatBox = defineOvalBox_ + 3+  fromEnum PlasticUpBox = definePlasticUpBox_+  fromEnum PlasticDownBox = definePlasticUpBox_ + 1+  fromEnum PlasticUpFrame = definePlasticUpBox_ + 2+  fromEnum PlasticDownFrame = definePlasticUpBox_ + 3+  fromEnum PlasticThinUpBox = definePlasticUpBox_ + 4+  fromEnum PlasticThinDownBox = definePlasticUpBox_ + 5+  fromEnum PlasticRoundUpBox = definePlasticUpBox_ + 6+  fromEnum PlasticRoundDownBox = definePlasticUpBox_ + 7+  fromEnum GtkUpBox = defineGtkUpBox_+  fromEnum GtkDownBox = defineGtkUpBox_ + 1+  fromEnum GtkUpFrame = defineGtkUpBox_ + 2+  fromEnum GtkDownFrame = defineGtkUpBox_ + 3+  fromEnum GtkThinUpBox = defineGtkUpBox_ + 4+  fromEnum GtkThinDownBox = defineGtkUpBox_ + 5+  fromEnum GtkThinUpFrame = defineGtkUpBox_ + 6+  fromEnum GtkThinDownFrame = defineGtkUpBox_ + 7+  fromEnum GtkRoundUpBox = defineGtkUpBox_ + 8+  fromEnum GtkRoundDownBox = defineGtkUpBox_ + 9+  fromEnum FreeBoxtype = 48++  toEnum 0 = NoBox+  toEnum 1 = FlatBox+  toEnum 2 = UpBox+  toEnum 3 = DownBox+  toEnum 4 = UpFrame+  toEnum 5 = DownFrame+  toEnum 6 = ThinUpBox+  toEnum 7 = ThinDownBox+  toEnum 8 = ThinUpFrame+  toEnum 9 = ThinDownFrame+  toEnum 10 = EngravedBox+  toEnum 11 = EmbossedBox+  toEnum 12 = EngravedFrame+  toEnum 13 = EmbossedFrame+  toEnum 14 = BorderBox+  toEnum 16 = BorderFrame+  toEnum 48 = FreeBoxtype+  toEnum x | x == defineShadowBox_ = ShadowBox+           | x == defineShadowBox_ + 2 = ShadowFrame+           | x == defineRoundedBox_  = RoundedBox+           | x == defineRshadowBox_ = RshadowBox+           | x == defineRoundedBox_ + 2 = RoundedFrame+           | x == defineRflatBox_ = RFlatBox+           | x == defineRoundUpBox_ = RoundUpBox+           | x == defineRoundUpBox_ + 1 = RoundDownBox+           | x == defineDiamondBox_ = DiamondUpBox+           | x == defineDiamondBox_ + 1 = DiamondDownBox+           | x == defineOvalBox_ = OvalBox+           | x == defineOvalBox_ + 1 = OshadowBox+           | x == defineOvalBox_ + 2 = OvalFrame+           | x == defineOvalBox_ + 3 = FloatBox+           | x == definePlasticUpBox_ = PlasticUpBox+           | x == definePlasticUpBox_ + 1 = PlasticDownBox+           | x == definePlasticUpBox_ + 2 = PlasticUpFrame+           | x == definePlasticUpBox_ + 3 = PlasticDownFrame+           | x == definePlasticUpBox_ + 4 = PlasticThinUpBox+           | x == definePlasticUpBox_ + 5 = PlasticThinDownBox+           | x == definePlasticUpBox_ + 6 = PlasticRoundUpBox+           | x == definePlasticUpBox_ + 7 = PlasticRoundDownBox+           | x == defineGtkUpBox_  = GtkUpBox+           | x == defineGtkUpBox_ + 1 = GtkDownBox+           | x == defineGtkUpBox_ + 2 = GtkUpFrame+           | x == defineGtkUpBox_ + 3 = GtkDownFrame+           | x == defineGtkUpBox_ + 4 = GtkThinUpBox+           | x == defineGtkUpBox_ + 5 = GtkThinDownBox+           | x == defineGtkUpBox_ + 6 = GtkThinUpFrame+           | x == defineGtkUpBox_ + 7 = GtkThinDownFrame+           | x == defineGtkUpBox_ + 8 = GtkRoundUpBox+           | x == defineGtkUpBox_ + 9 = GtkRoundDownBox+           | otherwise = error ("Boxtype.toEnum: Cannot match " +++	                                         show otherwise)+frame,frameBox, circleBox, diamondBox :: Boxtype+frame = EngravedFrame+frameBox = EngravedBox+circleBox = RoundDownBox+diamondBox = DiamondDownBox+++-- Fonts+newtype Font = Font Int+data FontAttribute = Bold | Italic | BoldItalic deriving Enum+cFromFont :: Font -> CInt+cFromFont (Font f) = fromIntegral f+cToFont :: CInt -> Font+cToFont f = Font (fromIntegral f)++cFromFontAttribute :: FontAttribute -> CInt+cFromFontAttribute Bold = cFromFont helveticaBold+cFromFontAttribute Italic = cFromFont helveticaItalic+cFromFontAttribute BoldItalic = cFromFont helveticaBoldItalic++cToFontAttribute :: CInt -> Maybe FontAttribute+cToFontAttribute attributeCode =+      case (attributeCode `has` helveticaBold, attributeCode `has` helveticaItalic) of+        (True,True) -> Just BoldItalic+        (True,False) -> Just Bold+        (False,True) -> Just Italic+        (False,False) -> Nothing+      where+        has :: CInt -> Font -> Bool+        has code (Font f) = code .&. (fromIntegral f) /= 0+helvetica :: Font+helvetica = Font 0+helveticaBold :: Font+helveticaBold = Font 1+helveticaItalic :: Font+helveticaItalic = Font 2+helveticaBoldItalic :: Font+helveticaBoldItalic = Font 3+courier :: Font+courier = Font 4+courierBold :: Font+courierBold = Font 5+courierItalic :: Font+courierItalic = Font 6+courierBoldItalic :: Font+courierBoldItalic = Font 7+times :: Font+times = Font 8+timesBold :: Font+timesBold = Font 9+timesItalic :: Font+timesItalic = Font 10+timesBoldItalic :: Font+timesBoldItalic = Font 11+symbol :: Font+symbol = Font 12+screen :: Font+screen = Font 13+screenBold :: Font+screenBold = Font 14+zapfDingbats :: Font+zapfDingbats = Font 15+freeFont :: Font+freeFont = Font 16++-- Colors++newtype Color = Color Int deriving Show+foregroundColor :: Color+foregroundColor = Color 0+background2Color :: Color+background2Color = Color 7+inactiveColor :: Color+inactiveColor = Color 8+selectionColor :: Color+selectionColor = Color 15+gray0Color :: Color+gray0Color = Color 32+dark3Color :: Color+dark3Color = Color 39+dark2Color :: Color+dark2Color = Color 45+dark1Color :: Color+dark1Color = Color 47+backgroundColor :: Color+backgroundColor = Color 49+light1Color :: Color+light1Color = Color 50+light2Color :: Color+light2Color = Color 52+light3Color :: Color+light3Color = Color 54+blackColor :: Color+blackColor = Color 56+redColor :: Color+redColor = Color 88+greenColor :: Color+greenColor = Color 63+yellowColor :: Color+yellowColor = Color 95+blueColor :: Color+blueColor = Color 216+magentaColor :: Color+magentaColor = Color 248+cyanColor :: Color+cyanColor = Color 223+darkRedColor :: Color+darkRedColor = Color 72+darkGreenColor :: Color+darkGreenColor = Color 60+darkYellowColor :: Color+darkYellowColor = Color 76+darkBlueColor :: Color+darkBlueColor = Color 136+darkMagentaColor :: Color+darkMagentaColor = Color 152+darkCyanColor :: Color+darkCyanColor = Color 140+whiteColor :: Color+whiteColor = Color 255+freeColor :: Color+freeColor = Color 16+numFreeColor :: Color+numFreeColor =Color 16+grayRampColor :: Color+grayRampColor = Color 32+numGray:: Color+numGray= Color 24+grayColor :: Color+grayColor = backgroundColor+colorCubeColor :: Color+colorCubeColor = Color 56+numRed :: Color+numRed = Color 5+numGreen :: Color+numGreen = Color 8+numBlue :: Color+numBlue = Color 5++-- Fl_Mode Aliases++single :: Mode+single = ModeRGB+++-- Fl_LabelType++data Labeltype = NormalLabel+               | NoLabel+               | ShadowLabel+               | EngravedLabel+               | EmbossedLabel+               | FreeLabelType++instance Enum Labeltype where+    fromEnum NormalLabel = 0+    fromEnum NoLabel = 1+    fromEnum ShadowLabel = defineShadowLabel_+    fromEnum EngravedLabel = defineEngravedLabel_+    fromEnum EmbossedLabel = defineEmbossedLabel_+    fromEnum FreeLabelType = 8++    toEnum 0 = NormalLabel+    toEnum 1 = NoLabel+    toEnum x | x == defineShadowLabel_ = ShadowLabel+             | x == defineEngravedLabel_ = EngravedLabel+             | x == defineEmbossedLabel_ = EmbossedLabel+    toEnum 8 = FreeLabelType++symbolLabel :: Labeltype+symbolLabel = NormalLabel++defineRoundUpBox_ :: (Num a) => a+defineRoundUpBox_ =+    fromIntegral $ {#call pure unsafe fl_define_FL_ROUND_UP_BOXC #}++defineRoundUpBox :: Boxtype+defineRoundUpBox =+    toEnum defineRoundUpBox_++defineShadowBox_ :: (Num a) => a+defineShadowBox_ =+    fromIntegral $ {#call pure unsafe fl_define_FL_SHADOW_BOXC #}++defineShadowBox :: Boxtype+defineShadowBox =+    toEnum defineShadowBox_++defineRoundedBox_ :: (Num a) => a+defineRoundedBox_ =+    fromIntegral $ {#call pure unsafe fl_define_FL_ROUNDED_BOXC #}+defineRoundedBox :: Boxtype+defineRoundedBox = toEnum defineRoundedBox_++defineRflatBox_ :: (Num a) => a+defineRflatBox_ =+    fromIntegral $ {#call pure unsafe   fl_define_FL_RFLAT_BOXC #}+defineRflatBox :: Boxtype+defineRflatBox = toEnum defineRflatBox_++defineRshadowBox_ :: (Num a) => a+defineRshadowBox_ =+    fromIntegral $ {#call pure unsafe fl_define_FL_RSHADOW_BOXC #}+defineRshadowBox :: Boxtype+defineRshadowBox = toEnum defineRshadowBox_++defineDiamondBox_ :: (Num a) => a+defineDiamondBox_ =+    fromIntegral $ {#call pure unsafe fl_define_FL_DIAMOND_BOXC #}+defineDiamondBox :: Boxtype+defineDiamondBox = toEnum defineDiamondBox_++defineOvalBox_ :: (Num a) => a+defineOvalBox_ =+    fromIntegral $ {#call pure unsafe fl_define_FL_OVAL_BOXC #}+defineOvalBox :: Boxtype+defineOvalBox = toEnum defineOvalBox_++definePlasticUpBox_ :: (Num a) => a+definePlasticUpBox_ =+    fromIntegral $ {#call pure unsafe fl_define_FL_PLASTIC_UP_BOXC #}+definePlasticUpBox :: Boxtype+definePlasticUpBox = toEnum definePlasticUpBox_++defineGtkUpBox_ :: (Num a) => a+defineGtkUpBox_ =+    fromIntegral $ {#call pure unsafe  fl_define_FL_GTK_UP_BOXC #}+defineGtkUpBox :: Boxtype+defineGtkUpBox = toEnum defineGtkUpBox_++defineShadowLabel_ :: (Num a) => a+defineShadowLabel_ =+   fromIntegral $ {#call pure unsafe fl_define_FL_SHADOW_LABELC #}+defineShadowLabel :: Labeltype+defineShadowLabel = toEnum defineShadowLabel_++defineEngravedLabel_ :: (Num a) => a+defineEngravedLabel_ =+   fromIntegral $ {#call pure unsafe fl_define_FL_ENGRAVED_LABELC #}++defineEngravedLabel :: Labeltype+defineEngravedLabel = toEnum defineEngravedLabel_++defineEmbossedLabel_ :: (Num a) => a+defineEmbossedLabel_ =+   fromIntegral $ {#call pure unsafe fl_define_FL_EMBOSSED_LABELC #}++defineEmbossedLabel :: Labeltype+defineEmbossedLabel = toEnum defineEmbossedLabel_++cFromColor :: Color -> CUInt+cFromColor (Color c) = fromIntegral c+cToColor :: CUInt-> Color+cToColor c = Color (fromIntegral c)++{#fun pure unsafe fl_inactiveC as+                 inactive {cFromColor `Color' } -> `Color' cToColor#}+{#fun pure unsafe fl_contrastC as+                  contrast {cFromColor `Color',cFromColor `Color'}+                  -> `Color' cToColor#}+{#fun pure unsafe fl_color_averageC as+                  color_average {cFromColor `Color',+                                 cFromColor `Color',+                                 realToFrac `Double'}+                  -> `Color' cToColor#}+{#fun pure unsafe fl_lighterC as+                  lighter {cFromColor `Color'} -> `Color' cToColor#}+{#fun pure unsafe fl_darkerC as+                  darker {cFromColor `Color'} -> `Color' cToColor#}+{#fun pure unsafe fl_rgb_color_with_rgbC as+                  rgbColorWithRgb {castCharToCUChar `Char',+                                   castCharToCUChar `Char',+                                   castCharToCUChar `Char'}+                  -> `Color' cToColor#}+{#fun pure unsafe fl_rgb_color_with_grayscaleC as+                  rgbColorWithGrayscale {castCharToCUChar `Char'}+                  -> `Color' cToColor#}+{#fun pure unsafe fl_gray_rampC as grayRamp {`Int'} -> `Color' cToColor#}+{#fun pure unsafe fl_color_cubeC as colorCube {`Int',`Int',`Int'}+                  -> `Color' cToColor#}
+ src/Graphics/UI/FLTK/LowLevel/Fl_Types.chs view
@@ -0,0 +1,410 @@+{-# LANGUAGE CPP, EmptyDataDecls, ExistentialQuantification #-}+module Graphics.UI.FLTK.LowLevel.Fl_Types where+#include "Fl_Types.h"+#include "Fl_Text_EditorC.h"+import Foreign+import Foreign.C hiding (CClock)+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import qualified Foreign.ForeignPtr.Unsafe as Unsafe+import Debug.Trace+import Control.Exception+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import qualified Data.ByteString as B+#c+  enum SliderType {+    VertSliderType = FL_VERT_SLIDER,+    HorSliderType = FL_HOR_SLIDER,+    VertFillSlideType = FL_VERT_FILL_SLIDER,+    HorFillSliderType = FL_HOR_FILL_SLIDER,+    VertNiceSliderType = FL_VERT_NICE_SLIDER,+    HorNiceSliderType = FL_HOR_NICE_SLIDER+  };+  enum BrowserType {+    NormalBrowserType = FL_NORMAL_BROWSER,+    SelectBrowserType = FL_SELECT_BROWSER,+    HoldBrowserType = FL_HOLD_BROWSER,+    MultiBrowserType = FL_MULTI_BROWSER+  };+  enum SortType {+    SortAscending = FL_SORT_ASCENDING,+    SortDescending = FL_SORT_DESCENDING+  };+  enum FileBrowserType {+    FileBrowserFiles = FL_FILE_BROWSER_FILES,+    FileBrowserDirectories = FL_FILE_BROWSER_DIRECTORIES,+  };+  enum FileIconType {+ FileIconAny = FL_FILE_ICON_ANY,+ FileIconPlain = FL_FILE_ICON_PLAIN,+ FileIconFifo = FL_FILE_ICON_FIFO,+ FileIconDevice = FL_FILE_ICON_DEVICE,+ FileIconLink = FL_FILE_ICON_LINK,+ FileIconDirectory = FL_FILE_ICON_DIRECTORY+  };+  enum FileIconProps {+ FileIconEnd = FL_FILE_ICON_END,+ FileIconColor = FL_FILE_ICON_COLOR,+ FileIconLine = FL_FILE_ICON_LINE,+ FileIconClosedline = FL_FILE_ICON_CLOSEDLINE,+ FileIconPolygon = FL_FILE_ICON_POLYGON,+ FileIconOutlinepolygon = FL_FILE_ICON_OUTLINEPOLYGON,+ FileIconVertex = FL_FILE_ICON_VERTEX+  };+  enum FileChooserType {+ FileChooserSingle = FL_FILE_CHOOSER_SINGLE,+ FileChooserMulti = FL_FILE_CHOOSER_MULTI,+ FileChooserCreate = FL_FILE_CHOOSER_CREATE,+ FileChooserDirectory = FL_FILE_CHOOSER_DIRECTORY+  };+  enum ButtonType{+   NormalButtonType = FL_NORMAL_BUTTON,+   ToggleButtonType = FL_TOGGLE_BUTTON,+   RadioButtonType = FL_RADIO_BUTTON,+   HiddenButtonType = FL_HIDDEN_BUTTON+  };+  enum TreeReasonType {+    TreeReasonNone = FL_TREE_REASON_NONE,+    TreeReasonSelected = FL_TREE_REASON_SELECTED,+    TreeReasonDeselected = FL_TREE_REASON_DESELECTED,+#if FLTK_ABI_VERSION >= 10302+    TreeReasonReselected = FL_TREE_REASON_RESELECTED,+#endif /*FLTK_ABI_VERSION*/+    TreeReasonOpened = FL_TREE_REASON_OPENED,+    TreeReasonClosed = FL_TREE_REASON_CLOSED+  };+  enum MenuItemFlag{+     MenuItemInactive = FL_MENU_INACTIVE,+     MenuItemToggle = FL_MENU_TOGGLE,+     MenuItemValue = FL_MENU_VALUE,+     MenuItemRadio = FL_MENU_RADIO,+     MenuItemInvisible = FL_MENU_INVISIBLE,+     SubmenuPointer = FL_SUBMENU_POINTER,+     Submenu = FL_SUBMENU,+     MenuItemDivider = FL_MENU_DIVIDER,+     MenuItemHorizontal = FL_MENU_HORIZONTAL+  };+  enum ScrollbarMode {+    Horizontal = HORIZONTAL,+    Vertical = VERTICAL,+    Both = BOTH,+    AlwaysOn = ALWAYS_ON,+    HorizontalAlways = HORIZONTAL_ALWAYS,+    VerticalAlways = VERTICAL_ALWAYS,+    BothAlways = BOTH_ALWAYS+  };+  enum CursorType {+    NormalCursor = NORMAL_CURSOR,+    CaretCursor = CARET_CURSOR,+    DimCursor = DIM_CURSOR,+    BlockCursor = BLOCK_CURSOR,+    HeavyCursor = HEAVY_CURSOR,+    SimpleCursor = SIMPLE_CURSOR+  };+  enum PositionType {+    CursorPos = CURSOR_POS,+    CharacterPos = CHARACTER_POS+  };+  enum DragType {+    DragNone = DRAG_NONE,+    DragStartDnd = DRAG_START_DND,+    DragChar = DRAG_CHAR,+    DragWord = DRAG_WORD,+    DragLine = DRAG_LINE+  };+  enum WrapType {+    WrapNone = WRAP_NONE,+    WrapAtColumn = WRAP_AT_COLUMN,+    WrapAtPixel = WRAP_AT_PIXEL,+    WrapAtBounds = WRAP_AT_BOUNDS+  };+  enum PageFormat {+    A0 = 0,+    A1 = 1,+    A2 = 2,+    A3 = 3,+    A4 = 4,+    A5 = 5,+    A6 = 6,+    A7 = 7,+    A8 = 8,+    A9 = 9,+    B0 = 10,+    B1 = 11,+    B2 = 12,+    B3 = 13,+    B4 = 14,+    B5 = 15,+    B6 = 16,+    B7 = 17,+    B8 = 18,+    B9 = 19,+    B10 = 20,+    C5E = 21,+    DLE = 22,+    Executive = EXECUTIVE,+    Folio = FOLIO,+    Ledger = LEDGER,+    Legal = LEGAL,+    Letter = LETTER,+    Tabloid = TABLOID,+    Envelope = ENVELOPE,+    Media = MEDIA+  };+  enum PageLayout {+    Portrait = PORTRAIT,+    Landscape = LANDSCAPE,+    Reversed = REVERSED,+    Orientation = ORIENTATION+  };+  typedef struct KeyBinding {+    int key;+    int state;+    fl_Key_Func* function;+  } KeyBinding;+  enum TableRowSelectMode {+     SelectNone = SELECT_NONEC,+     SelectSingle = SELECT_SINGLEC,+     SelectMulti = SELECT_MULTIC+  };+  enum TableContext {+     ContextNone = CONTEXT_NONEC,+     ContextStartPage = CONTEXT_STARTPAGEC,+     ContextEndPage = CONTEXT_ENDPAGEC,+     ContextRowHeader = CONTEXT_ROW_HEADERC,+     ContextColHeader = CONTEXT_COL_HEADERC,+     ContextCell = CONTEXT_CELLC,+     ContextTable = CONTEXT_TABLEC,+     ContextRCResize = CONTEXT_RC_RESIZEC+  };+  enum LinePosition {+    LinePositionTop = TOP,+    LinePositionMiddle = MIDDLE,+    LinePositionBottom = BOTTOM+  };+  typedef FL_SOCKET Fl_Socket;+#endc+{#enum SliderType {} deriving (Show, Eq) #}+{#enum BrowserType {} deriving (Show, Eq) #}+{#enum SortType {} deriving (Show, Eq) #}+{#enum FileBrowserType {} deriving (Show, Eq) #}+{#enum FileIconType {} deriving (Show, Eq) #}+{#enum FileIconProps {} deriving (Show, Eq) #}+{#enum FileChooserType {} deriving (Show, Eq) #}+{#enum ButtonType {} deriving (Show, Eq) #}+{#enum TreeReasonType {} deriving (Show, Eq) #}+{#enum MenuItemFlag {} deriving (Show, Eq, Ord) #}+newtype MenuItemFlags = MenuItemFlags [MenuItemFlag]+allMenuItemFlags :: [MenuItemFlag]+allMenuItemFlags =+  [+     MenuItemInactive,+     MenuItemToggle,+     MenuItemValue,+     MenuItemRadio,+     MenuItemInvisible,+     SubmenuPointer,+     Submenu,+     MenuItemDivider,+     MenuItemHorizontal+  ]+{#enum CursorType {} deriving (Show, Eq) #}+{#enum PositionType {} deriving (Show, Eq) #}+{#enum DragType {} deriving (Show, Eq) #}+{#enum WrapType {} deriving (Show, Eq) #}+{#enum PageFormat {} deriving (Show, Eq) #}+{#enum PageLayout {} deriving (Show, Eq) #}+{#enum TableRowSelectMode {} deriving (Show, Eq)  #}+{#enum TableContext {} deriving (Show, Eq) #}+{#enum LinePosition {} deriving (Show, Eq)  #}+{#enum ScrollbarMode {} deriving (Show, Eq) #}+data StyleTableEntry = StyleTableEntry (Maybe Color) (Maybe Font) (Maybe FontSize)++data GLUTproc = GLUTproc {#type GLUTproc#}+newtype GLUTIdleFunction = GLUTIdleFunction (FunPtr (IO ()))+newtype GLUTMenuStateFunction = GLUTMenuStateFunction (FunPtr (CInt -> IO()))+newtype GLUTMenuStatusFunction = GLUTMenuStatusFunction+                                     (FunPtr (CInt -> CInt -> CInt -> IO ()))+{#pointer *Fl_Glut_Bitmap_Font as GlutBitmapFontPtr newtype #}+{#pointer *Fl_Glut_StrokeVertex as GlutStrokeVertexPtr newtype#}+{#pointer *Fl_Glut_StrokeStrip as GlutStrokeStripPtr newtype#}+{#pointer *Fl_Glut_StrokeFont as GlutStrokeFontPtr newtype#}+type FlShortcut = {#type Fl_Shortcut #}+type FlColor    = {#type Fl_Color #}+type FlFont     = {#type Fl_Font #}+type FlAlign    = {#type Fl_Align #}+type RGB        = (Word8, Word8, Word8)+type LineDelta  = Maybe Int+type Delta      = Maybe Int+type FlIntPtr   = {#type fl_intptr_t #}+type FlUIntPtr  = {#type fl_uintptr_t#}+type ID         = {#type ID#}+data Ref a      = Ref !(ForeignPtr (Ptr ())) deriving Show+data FunRef     = FunRef !(FunPtr ())+-- * The FLTK widget hierarchy+data CBase parent+type Base = CBase ()++type GlobalCallback              = IO ()+type CallbackWithUserDataPrim    = Ptr () -> Ptr () -> IO ()+type CallbackPrim                = Ptr () -> IO ()+type ColorAverageCallbackPrim    = Ptr () -> CUInt -> CFloat -> IO ()+type ImageDrawCallbackPrim       = Ptr () -> CInt -> CInt -> CInt -> CInt -> CInt -> CInt -> IO ()+type ImageCopyCallbackPrim       = Ptr () -> CInt -> CInt -> IO (Ptr ())+type GlobalEventHandlerPrim      = CInt -> IO CInt+type GlobalEventHandlerF         = Event -> IO Int+type DrawCallback                = String -> Position -> IO ()+type DrawCallbackPrim            = CString -> CInt -> CInt -> CInt -> IO ()+type TextBufferCallback          = FunPtr (Ptr () -> IO ())+type FileChooserCallback         = FunPtr (Ptr () -> Ptr () -> IO())+type SharedImageHandler          = FunPtr (CString -> CUChar -> CInt -> Ptr ())+type BoxDrawF                    = Rectangle -> Color -> IO ()+type BoxDrawFPrim                = CInt -> CInt -> CInt -> CInt -> FlColor -> IO ()+type TextModifyCb                = Int -> Int -> Int -> Int -> String -> IO ()+type TextModifyCbPrim            = CInt -> CInt -> CInt -> CInt -> Ptr CChar -> Ptr () -> IO ()+type TextPredeleteCb             = BufferOffset -> Int -> IO ()+type TextPredeleteCbPrim         = CInt -> CInt -> Ptr () -> IO ()+type UnfinishedStyleCb           = BufferOffset -> IO ()+type UnfinishedStyleCbPrim       = CInt -> Ptr () -> IO ()++newtype Width = Width Int deriving (Eq, Show)+newtype Height = Height Int deriving (Eq, Show)+newtype Depth = Depth Int+newtype LineSize = LineSize Int+newtype X = X Int deriving (Eq, Show)+newtype Y = Y Int deriving (Eq, Show)+newtype ByX = ByX Double+newtype ByY = ByY Double+newtype Angle = Angle CShort+data Position = Position X Y deriving (Eq,Show)+data CountDirection = CountUp | CountDown+data DPI = DPI Float Float+newtype TextDisplayStyle = TextDisplayStyle CInt+newtype BufferOffset = BufferOffset Int+data BufferRange = BufferRange BufferOffset BufferOffset+statusToBufferRange :: (Ptr CInt -> Ptr CInt -> IO Int) -> IO (Maybe BufferRange)+statusToBufferRange f =+  alloca $ \start' ->+  alloca $ \end' ->+  f start' end' >>= \status' ->+  case status' of+    0 -> return Nothing+    _ -> do+      start'' <- peekIntConv start'+      end'' <- peekIntConv end'+      return (Just (BufferRange (BufferOffset start'') (BufferOffset end'')))++data Rectangle = Rectangle Position Size deriving (Eq,Show)+data ByXY = ByXY ByX ByY+data Intersection = Contained | Partial+data Size = Size Width Height deriving (Eq, Show)+data KeyType = SpecialKeyType SpecialKey | NormalKeyType Char deriving (Show, Eq)+data ShortcutKeySequence = ShortcutKeySequence [EventState] KeyType+data Shortcut = KeySequence ShortcutKeySequence | KeyFormat String+data KeyBindingKeySequence = KeyBindingKeySequence (Maybe [EventState]) KeyType+data ScreenLocation = Intersect Rectangle+                    | ScreenNumber Int+                    | ScreenPosition Position+newtype FontSize = FontSize CInt+newtype PixmapHs = PixmapHs [B.ByteString]+data BitmapHs = BitmapHs B.ByteString Size+data Clipboard = InternalClipboard | SharedClipboard+data UnknownError = UnknownError+data NotFound = NotFound+data OutOfRange = OutOfRange deriving Show+successOrOutOfRange :: a -> Bool -> (a -> IO b) -> IO (Either OutOfRange b)+successOrOutOfRange a pred' tr = if pred' then return (Left OutOfRange) else tr a >>= return . Right+data NoChange = NoChange+successOrNoChange :: Int -> Either NoChange ()+successOrNoChange status = if (status == 0) then Left NoChange else Right ()+data DataProcessingError = NoDataProcessedError | PartialDataProcessedError | UnknownDataError Int+successOrDataProcessingError :: Int -> Either DataProcessingError ()+successOrDataProcessingError status = case status of+  0 -> Right ()+  1 -> Left NoDataProcessedError+  2 -> Left PartialDataProcessedError+  x -> Left $ UnknownDataError x+toRectangle :: (Int,Int,Int,Int) -> Rectangle+toRectangle (x_pos, y_pos, width, height) =+    Rectangle (Position+               (X x_pos)+               (Y y_pos))+              (Size+               (Width width)+               (Height height))++fromRectangle ::  Rectangle -> (Int,Int,Int,Int)+fromRectangle (Rectangle (Position+                          (X x_pos)+                          (Y y_pos))+                         (Size+                          (Width width)+                          (Height height))) =+              (x_pos, y_pos, width, height)++toSize :: (Int, Int) -> Size+toSize (width', height') = Size (Width width') (Height height')++throwStackOnError :: IO a -> IO a+throwStackOnError f =+  f `catch` throwStack+  where+  throwStack :: SomeException -> IO b+  throwStack e = traceStack (show e) $ error ""++withForeignPtrs :: [ForeignPtr a] -> ([Ptr a] -> IO c) -> IO c+withForeignPtrs fptrs io = do+  let ptrs = map Unsafe.unsafeForeignPtrToPtr fptrs+  r <- io ptrs+  mapM_ touchForeignPtr fptrs+  return r++toRefPtr :: Ptr (Ptr a) -> IO (Ptr a)+toRefPtr ptrToRefPtr = do+  refPtr <- peek ptrToRefPtr+  if (refPtr == nullPtr)+   then error "Ref does not exist"+   else return refPtr++withRef :: Ref a -> (Ptr b -> IO c) -> IO c+withRef (Ref fptr) f =+   throwStackOnError $+     withForeignPtr fptr+       (\ptrToRefPtr -> do+           refPtr <- toRefPtr ptrToRefPtr+           f (castPtr refPtr)+       )++unsafeRefToPtr :: Ref a -> IO (Ptr ())+unsafeRefToPtr (Ref fptr) =+    throwStackOnError $ do+      refPtr <- toRefPtr $ Unsafe.unsafeForeignPtrToPtr fptr+      return $ castPtr refPtr++withRefs :: [Ref a] -> (Ptr (Ptr b) -> IO c) -> IO c+withRefs refs f =+  throwStackOnError+  $ withForeignPtrs+        (map (\(Ref fptr) -> fptr) refs)+        (\ptrToRefPtrs -> do+           refPtrs <- mapM toRefPtr ptrToRefPtrs+           arrayPtr <- newArray refPtrs+           f (castPtr arrayPtr)+        )++withMaybeRef :: Maybe (Ref a) -> (Ptr () -> IO c) -> IO c+withMaybeRef (Just o) f = withRef o f+withMaybeRef Nothing f = f (castPtr nullPtr)++swapRef :: Ref a -> (Ptr b -> IO (Ptr ())) -> IO ()+swapRef ref@(Ref fptr) f = do+   result <- withRef ref f+   withForeignPtr fptr $ \p -> poke p result++wrapInRef :: ForeignPtr (Ptr ()) -> Ref a+wrapInRef = Ref . castForeignPtr++toFunRef :: FunPtr a -> FunRef+toFunRef fptr = FunRef $ castFunPtr fptr++fromFunRef :: FunRef -> (FunPtr ())+fromFunRef (FunRef f) = castFunPtr f
+ src/Graphics/UI/FLTK/LowLevel/Gl.chs view
@@ -0,0 +1,91 @@+{-# LANGUAGE CPP, FlexibleContexts #-}+module Graphics.UI.FLTK.LowLevel.Gl+  (+   glStart,+   glFinish,+   glHeight,+   glDescent,+   glColor,+   glRect,+   glRectf,+   glFont,+   glWidth,+   glWidthChars,+   glWidthChar,+   glDraw,+   glDrawChars,+   glDrawAt,+   glDrawCharsAt,+   glDrawInBox,+   glMeasure,+   glDrawImage+  )+where+#include "Fl_C.h"+#include "glC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Utils+{# fun flc_gl_start   as glStart   { } -> `()' #}+{# fun flc_gl_finish  as glFinish  { } -> `()' #}+{# fun flc_gl_height  as glHeight  { } -> `()' #}+{# fun flc_gl_descent as glDescent { } -> `()' #}++{# fun flc_gl_color   as glColor {cFromColor `Color'} -> `()' #}++{# fun flc_gl_rect as flcGlRect' { `Int',`Int',`Int',`Int' } -> `()' #}+glRect :: Rectangle ->  IO ()+glRect rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcGlRect' x_pos' y_pos' width' height'++{# fun unsafe flc_gl_rectf as flcGlRectf' { `Int',`Int',`Int',`Int' } -> `()' #}+glRectf :: Rectangle ->  IO ()+glRectf rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcGlRectf' x_pos' y_pos' width' height'+{# fun unsafe flc_gl_font as flcGlFont' {cFromFont `Font',`Int' } -> `()' #}+glFont :: Font -> Int ->  IO ()+glFont fontid size = flcGlFont' fontid size++{# fun unsafe flc_gl_width as flcGlWidth' { `String' } -> `Double' #}+glWidth :: String ->  IO (Double)+glWidth str = flcGlWidth' str++{# fun unsafe flc_gl_width_with_n as flcGlWidthWithN' { `String',`Int' } -> `Double' #}+glWidthChars :: String -> Int ->  IO (Double)+glWidthChars str n = flcGlWidthWithN' str n++{# fun unsafe flc_gl_width_with_uchar_str as flcGlWidthWithUcharStr' { castCharToCUChar `Char' } -> `Double' #}+glWidthChar :: Char ->  IO (Double)+glWidthChar str = flcGlWidthWithUcharStr' str++{# fun unsafe flc_gl_draw as flcGlDraw' { `String' } -> `()' #}+glDraw :: String ->  IO ()+glDraw str = flcGlDraw' str++{# fun unsafe flc_gl_draw_with_n as flcGlDrawWithN' { `String',`Int' } -> `()' #}+glDrawChars :: String -> Int ->  IO ()+glDrawChars str n = flcGlDrawWithN' str n++{# fun unsafe flc_gl_draw_with_xy as flcGlDrawWithXy' { `String',`Float',`Float' } -> `()' #}+glDrawAt :: String -> Float -> Float ->  IO ()+glDrawAt str x y = flcGlDrawWithXy' str x y++{# fun unsafe flc_gl_draw_with_nxy as flcGlDrawWithNxy' { `String',`Int',`Float',`Float' } -> `()' #}+glDrawCharsAt :: String -> Int -> Float -> Float ->  IO ()+glDrawCharsAt str n x y = flcGlDrawWithNxy' str n x y++{# fun unsafe flc_gl_draw_with_xywh_align as flcGlDrawWithXywhAlign' { `String',`Int',`Int',`Int',`Int',cFromEnum `AlignType' } -> `()' #}+glDrawInBox :: String -> Rectangle -> AlignType ->  IO ()+glDrawInBox str rectangle align = let (x_pos', y_pos', width', height') = fromRectangle rectangle in flcGlDrawWithXywhAlign' str x_pos' y_pos' width' height' align++{# fun unsafe flc_gl_measure as flcGlMeasure' { `String',`Int',`Int' } -> `()' #}+glMeasure :: String -> Position ->  IO ()+glMeasure str (Position (X x_pos') (Y y_pos')) = flcGlMeasure' str x_pos' y_pos'++{# fun unsafe flc_gl_draw_image_with_d_ld as flcGlDrawImageWithDLd' { id `Ptr CUChar',`Int',`Int',`Int',`Int',`Int', `Int'} -> `()' #}+glDrawImage :: BitmapHs -> Position -> Maybe Depth -> Maybe LineSize -> IO ()+glDrawImage bitmap' (Position (X x_pos') (Y y_pos')) depth' linesize' =+  let d = maybe 0 (\(Depth d') -> d') depth'+      l = maybe 0 (\(LineSize l') -> l') linesize'+  in+  withBitmap bitmap' $ \ptr width' height' -> flcGlDrawImageWithDLd' (castPtr ptr) x_pos' y_pos' width' height' d l
+ src/Graphics/UI/FLTK/LowLevel/GlWindow.chs view
@@ -0,0 +1,235 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.GlWindow+    (+     glWindowNew,+     glWindowCustom+     -- * Hierarchy+     --+     -- $hierarchy++     -- * GlWindow functions+     --+     -- $GlWindowfunctions+    )+where+#include "Fl_C.h"+#include "Fl_Double_WindowC.h"+#include "Fl_Gl_WindowC.h"+import Foreign+import Foreign.C+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Window+import Graphics.UI.FLTK.LowLevel.Widget+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch+import C2HS hiding (cFromEnum, toBool,cToEnum)++{# fun Fl_OverriddenGl_Window_New as overriddenWindowNew' {`Int',`Int', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenGl_Window_NewXY as overriddenWindowNewXY' {`Int',`Int', `Int', `Int', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenGl_Window_NewXY_WithLabel as overriddenWindowNewXYWithLabel' { `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenGl_Window_New_WithLabel as overriddenWindowNewWithLabel' { `Int',`Int', `String', id `Ptr ()'} -> `Ptr ()' id #}+glWindowCustom :: Size ->+                  Maybe Position ->+                  Maybe String ->+                  CustomWidgetFuncs GlWindow ->+                  CustomWindowFuncs GlWindow ->+                  IO (Ref GlWindow)+glWindowCustom size position title customWidgetFuncs' customWindowFuncs' =+  windowMaker+    size+    position+    title+    customWidgetFuncs'+    customWindowFuncs'+    overriddenWindowNew'+    overriddenWindowNewWithLabel'+    overriddenWindowNewXY'+    overriddenWindowNewXYWithLabel'+glWindowNew :: Size -> Maybe Position -> Maybe String -> IO (Ref GlWindow)+glWindowNew size position title =+  windowMaker+    size+    position+    title+    (defaultCustomWidgetFuncs :: CustomWidgetFuncs GlWindow)+    (defaultCustomWindowFuncs :: CustomWindowFuncs GlWindow)+    overriddenWindowNew'+    overriddenWindowNewWithLabel'+    overriddenWindowNewXY'+    overriddenWindowNewXYWithLabel'++{# fun unsafe Fl_Gl_Window_draw_super as drawSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (DrawSuper ()) GlWindow orig impl where+  runOp _ _ self = withRef self $ \selfPtr -> drawSuper' selfPtr+{# fun unsafe Fl_Gl_Window_hide_super as hideSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (HideSuper ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> hideSuper' winPtr+{# fun unsafe Fl_Gl_Window_flush_super as flushSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (FlushSuper ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> flushSuper' winPtr+{# fun unsafe Fl_Gl_Window_flush as flush' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Flush ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> flush' winPtr+{# fun unsafe Fl_Gl_Window_show_super as showSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (ShowWidgetSuper ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> showSuper' winPtr+{# fun unsafe Fl_Gl_Window_resize_super as resizeSuper' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rectangle ->  IO ())) => Op (ResizeSuper ()) GlWindow orig impl where+  runOp _ _ win rectangle' =+    let (x_pos', y_pos', width', height') = fromRectangle rectangle' in+    withRef win $ \winPtr -> resizeSuper' winPtr x_pos' y_pos' width' height'+{# fun unsafe Fl_Gl_Window_hide as hide' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Hide ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> hide' winPtr+{# fun unsafe Fl_Gl_Window_show as show' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (ShowWidget ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> show' winPtr+{# fun unsafe Fl_Gl_Window_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rectangle ->  IO ())) => Op (Resize ()) GlWindow orig impl where+  runOp _ _ win rectangle' =+    let (x_pos', y_pos', width', height') = fromRectangle rectangle' in+    withRef win $ \winPtr -> resize' winPtr x_pos' y_pos' width' height'+{# fun unsafe Fl_Gl_Window_handle as handle' { id `Ptr ()', cFromEnum `Event' } -> `Int' #}+instance (impl ~ (Event ->  IO (Int))) => Op (Handle ()) GlWindow orig impl where+  runOp _ _ self event = withRef self $ \selfPtr -> handle' selfPtr event+{# fun unsafe Fl_Gl_Window_handle_super as handleSuper' { id `Ptr ()', cFromEnum `Event' } -> `Int' #}+instance (impl ~ (Event ->  IO (Int))) => Op (HandleSuper ()) GlWindow orig impl where+  runOp _ _ self event = withRef self $ \selfPtr -> handleSuper' selfPtr event+{# fun Fl_Gl_Window_Destroy as windowDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> windowDestroy' winPtr+{# fun unsafe Fl_Gl_Window_valid as valid' { id `Ptr ()' } -> `Bool' #}+instance (impl ~ ( IO (Bool))) => Op (GetValid ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> valid' winPtr+{# fun unsafe Fl_Gl_Window_set_valid as setValid' { id `Ptr ()', `Bool' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Bool ->  IO ())) => Op (SetValid ()) GlWindow orig impl where+  runOp _ _ win v = withRef win $ \winPtr -> setValid' winPtr v+{# fun unsafe Fl_Gl_Window_invalidate as invalidate' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Invalidate ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> invalidate' winPtr+{# fun unsafe Fl_Gl_Window_context_valid as contextValid' { id `Ptr ()' } -> `Bool' toBool #}+instance (impl ~ ( IO (Bool))) => Op (GetContextValid ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> contextValid' winPtr+{# fun unsafe Fl_Gl_Window_set_context_valid as setContextValid' { id `Ptr ()', fromBool `Bool' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Bool ->  IO ())) => Op (SetContextValid ()) GlWindow orig impl where+  runOp _ _ win v = withRef win $ \winPtr -> setContextValid' winPtr v+{# fun unsafe Fl_Gl_Window_can_do_with_m as canDoWithM' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Int))) => Op (CanDoWithM ()) GlWindow orig impl where+  runOp _ _ win m = withRef win $ \winPtr -> canDoWithM' winPtr m+{# fun unsafe Fl_Gl_Window_can_do as canDo' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (CanDo ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> canDo' winPtr+{# fun unsafe Fl_Gl_Window_mode as mode' { id `Ptr ()' } -> `Mode' cToEnum #}+instance (impl ~ ( IO (Mode))) => Op (GetMode ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> mode' winPtr+{# fun unsafe Fl_Gl_Window_set_mode as setMode' { id `Ptr ()',cFromEnum `Mode' } -> `Int' #}+instance (impl ~ (Mode ->  IO (Int))) => Op (SetMode ()) GlWindow orig impl where+  runOp _ _ win a = withRef win $ \winPtr -> setMode' winPtr a+{# fun unsafe Fl_Gl_Window_context as context' { id `Ptr ()' } -> `Ref GlContext' unsafeToRef #}+instance (impl ~ ( IO (Ref GlContext))) => Op (GetContext ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> context' winPtr+{# fun unsafe Fl_Gl_Window_set_context as setContext' { id `Ptr ()',id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Ref GlContext ->  IO ())) => Op (SetContext ()) GlWindow orig impl where+  runOp _ _ win context = withRef win $ \winPtr -> withRef context $ \contextPtr -> setContext' winPtr contextPtr+{# fun unsafe Fl_Gl_Window_set_context_with_destroy_flag as setContextWithDestroyFlag' { id `Ptr ()',id `Ptr ()', fromBool `Bool'} -> `()' supressWarningAboutRes #}+instance (impl ~ ( Ref GlContext ->  Bool -> IO ())) => Op (SetContextWithDestroyFlag ()) GlWindow orig impl where+  runOp _ _ win context destroyFlag= withRef win $ \winPtr -> withRef context $ \contextPtr -> setContextWithDestroyFlag' winPtr contextPtr destroyFlag+{# fun unsafe Fl_Gl_Window_swap_buffers as swapBuffers' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (SwapBuffers ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> swapBuffers' winPtr+{# fun unsafe Fl_Gl_Window_ortho as ortho' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Ortho ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> ortho' winPtr+{# fun unsafe Fl_Gl_Window_can_do_overlay as canDoOverlay' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (CanDoOverlay ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> canDoOverlay' winPtr+{# fun unsafe Fl_Gl_Window_redraw_overlay as redrawOverlay' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (RedrawOverlay ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> redrawOverlay' winPtr+{# fun unsafe Fl_Gl_Window_hide_overlay as hideOverlay' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (HideOverlay ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> hideOverlay' winPtr+{# fun unsafe Fl_Gl_Window_make_overlay_current as makeOverlayCurrent' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (MakeOverlayCurrent ()) GlWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> makeOverlayCurrent' winPtr++-- $GlWindowfunctions+-- @+--+-- canDo :: 'Ref' 'GlWindow' -> 'IO' 'Int'+--+-- canDoOverlay :: 'Ref' 'GlWindow' -> 'IO' 'Int'+--+-- canDoWithM :: 'Ref' 'GlWindow' -> 'Int' -> 'IO' 'Int'+--+-- destroy :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- drawSuper :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- flush :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- flushSuper :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- getContext :: 'Ref' 'GlWindow' -> 'IO' ('Ref' 'GlContext')+--+-- getContextValid :: 'Ref' 'GlWindow' -> 'IO' 'Bool'+--+-- getMode :: 'Ref' 'GlWindow' -> 'IO' 'Mode'+--+-- getValid :: 'Ref' 'GlWindow' -> 'IO' 'Bool'+--+-- handle :: 'Ref' 'GlWindow' -> 'Event' -> 'IO' 'Int'+--+-- handleSuper :: 'Ref' 'GlWindow' -> 'Event' -> 'IO' 'Int'+--+-- hide :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- hideOverlay :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- hideSuper :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- invalidate :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- makeOverlayCurrent :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- ortho :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- redrawOverlay :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- resize :: 'Ref' 'GlWindow' -> 'Rectangle' -> 'IO' ()+--+-- resizeSuper :: 'Ref' 'GlWindow' -> 'Rectangle' -> 'IO' ()+--+-- setContext :: 'Ref' 'GlWindow' -> 'Ref' 'GlContext' -> 'IO' ()+--+-- setContextValid :: 'Ref' 'GlWindow' -> 'Bool' -> 'IO' ()+--+-- setContextWithDestroyFlag :: 'Ref' 'GlWindow' -> 'Ref' 'GlContext' -> 'Bool' -> 'IO' ()+--+-- setMode :: 'Ref' 'GlWindow' -> 'Mode' -> 'IO' 'Int'+--+-- setValid :: 'Ref' 'GlWindow' -> 'Bool' -> 'IO' ()+--+-- showWidget :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- showWidgetSuper :: 'Ref' 'GlWindow' -> 'IO' ()+--+-- swapBuffers :: 'Ref' 'GlWindow' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Group"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Window"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.GlWindow"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Group.chs view
@@ -0,0 +1,204 @@+{-# LANGUAGE CPP,EmptyDataDecls, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Group+    (+    -- * Constructor+     groupNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Group functions+     --+     -- $groupfunctions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_WidgetC.h"+#include "Fl_GroupC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Group_New as groupNew' {  `Int',`Int', `Int', `Int'} -> `Ptr ()' id #}+{# fun Fl_Group_New_WithLabel as groupNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+groupNew :: Rectangle -> Maybe String -> IO (Ref Group)+groupNew rectangle label' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case label' of+        (Just l') -> groupNewWithLabel' x_pos y_pos width height l' >>= toRef+        Nothing -> groupNew' x_pos y_pos width height >>= toRef++{# fun Fl_Group_Destroy as groupDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Destroy ()) Group orig impl where+  runOp _ _ group = withRef group $ \groupPtr -> groupDestroy' groupPtr+++{# fun unsafe Fl_Group_draw_child as drawChild' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Widget, impl ~ (Ref a -> IO ())) => Op (DrawChild ()) Group orig impl where+  runOp _ _ group widget = withRef group $ \groupPtr -> withRef widget $ \widgetPtr -> drawChild' groupPtr widgetPtr++{# fun unsafe Fl_Group_draw_children as drawChildren' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (DrawChildren ()) Group orig impl where+  runOp _ _ group = withRef group $ \groupPtr -> drawChildren' groupPtr++{# fun unsafe Fl_Group_draw_outside_label as drawOutsideLabel' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Widget, impl ~ (Ref a -> IO ())) => Op (DrawOutsideLabel ()) Group orig impl where+  runOp _ _ group widget = withRef group $ \groupPtr -> withRef widget $ \widgetPtr -> drawOutsideLabel' groupPtr widgetPtr++{# fun unsafe Fl_Group_update_child as updateChild' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Widget, impl ~ (Ref a -> IO ())) => Op (UpdateChild ()) Group orig impl where+  runOp _ _ group widget = withRef group $ \groupPtr -> withRef widget $ \widgetPtr -> updateChild' groupPtr widgetPtr++{# fun Fl_Group_begin as begin' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Begin ()) Group orig impl where+  runOp _ _ group = withRef group $ \groupPtr -> begin' groupPtr++{# fun Fl_Group_end as end' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (End ()) Group orig impl where+  runOp _ _ group = withRef group $ \groupPtr -> end' groupPtr++{# fun Fl_Group_find as find' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+instance (Parent a Widget, impl ~ (Ref a ->  IO (Int))) => Op (Find ()) Group orig impl where+  runOp _ _ group w = withRef group $ \groupPtr -> withRef w $ \wPtr -> find' groupPtr wPtr++{# fun Fl_Group_add as add' { id `Ptr ()',id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (Parent a Widget, impl ~ (Ref a->  IO ())) => Op (Add ()) Group orig impl where+  runOp _ _ group w = withRef group $ \groupPtr -> withRef w $ \wPtr -> add' groupPtr wPtr++{# fun Fl_Group_insert as insert' { id `Ptr ()',id `Ptr ()',`Int' } -> `()' supressWarningAboutRes #}+instance (Parent a Widget, impl ~ (Ref a-> Int ->  IO ())) => Op (Insert ()) Group orig impl where+  runOp _ _ group w i = withRef group $ \groupPtr -> withRef w $ \wPtr -> insert' groupPtr wPtr i++{# fun Fl_Group_remove_index as removeIndex' { id `Ptr ()',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Int ->  IO ())) => Op (RemoveIndex ()) Group orig impl where+  runOp _ _ group index' = withRef group $ \groupPtr -> removeIndex' groupPtr index'++{# fun Fl_Group_remove_widget as removeWidget' { id `Ptr ()',id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (Parent a Widget, impl ~ (Ref a ->  IO ())) => Op (RemoveWidget ()) Group orig impl where+  runOp _ _ group w = withRef group $ \groupPtr -> withRef w $ \wPtr -> removeWidget' groupPtr wPtr++{# fun Fl_Group_clear as clear' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Clear ()) Group orig impl where+  runOp _ _ group = withRef group $ \groupPtr -> clear' groupPtr++{# fun Fl_Group_set_resizable as setResizable' { id `Ptr ()',id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (Parent a Widget, impl ~ (Ref a -> IO ())) => Op (SetResizable ()) Group orig impl where+  runOp _ _ group o = withRef group $ \groupPtr -> withRef o $ \oPtr -> setResizable' groupPtr oPtr++instance (impl ~ IO ()) => Op (SetNotResizable ()) Group orig impl where+  runOp _ _ group = withRef group $ \groupPtr -> setResizable' groupPtr nullPtr++{# fun Fl_Group_resizable as resizable' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref Widget)))) => Op (GetResizable ()) Group orig impl where+  runOp _ _ group = withRef group $ \groupPtr -> resizable' groupPtr >>= toMaybeRef++{# fun Fl_Group_add_resizable as addResizable' { id `Ptr ()',id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (Parent a Widget, impl ~ (Ref a ->  IO ())) => Op (AddResizable ()) Group orig impl where+  runOp _ _ group o = withRef group $ \groupPtr -> withRef o $ \oPtr -> addResizable' groupPtr oPtr++{# fun Fl_Group_init_sizes as initSizes' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (InitSizes ()) Group orig impl where+  runOp _ _ group = withRef group $ \groupPtr -> initSizes' groupPtr++{# fun Fl_Group_children as children' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (Children ()) Group orig impl where+  runOp _ _ group = withRef group $ \groupPtr -> children' groupPtr++{# fun Fl_Group_set_clip_children as setClipChildren' { id `Ptr ()',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Int ->  IO ())) => Op (SetClipChildren ()) Group orig impl where+  runOp _ _ group c = withRef group $ \groupPtr -> setClipChildren' groupPtr c++{# fun Fl_Group_clip_children as clipChildren' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (ClipChildren ()) Group orig impl where+  runOp _ _ group = withRef group $ \groupPtr -> clipChildren' groupPtr++{# fun Fl_Group_focus as focus' { id `Ptr ()',id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (Parent a Widget, impl ~ (Ref a ->  IO ())) => Op (Focus ()) Group orig impl where+  runOp _ _ group w = withRef group $ \groupPtr -> withRef w $ \wPtr -> focus' groupPtr wPtr++{# fun Fl_Group__ddfdesign_kludge as ddfdesignKludge' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Ref Widget))) => Op (DdfdesignKludge ()) Group orig impl where+  runOp _ _ group = withRef group $ \groupPtr -> ddfdesignKludge' groupPtr >>= toRef++{# fun Fl_Group_insert_with_before as insertWithBefore' { id `Ptr ()',id `Ptr ()',id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (Parent a Widget, impl ~ (Ref a -> Ref b ->  IO ())) => Op (InsertWithBefore ()) Group orig impl where+  runOp _ _ self w before = withRef self $ \selfPtr -> withRef w $ \wPtr -> withRef before $ \beforePtr -> insertWithBefore' selfPtr wPtr beforePtr++{# fun Fl_Group_array as array' { id `Ptr ()' } -> `Ptr (Ptr ())' id#}+instance (impl ~ (IO [Ref Widget])) => Op (GetArray ()) Group orig impl where+  runOp _ _ group = withRef group $ \groupPtr -> do+                    childArrayPtr <- array' groupPtr+                    numChildren <- children group+                    arrayToRefs childArrayPtr numChildren++{# fun Fl_Group_child as child' { id `Ptr ()',`Int' } -> `Ptr ()' id #}+instance (impl ~ (Int ->  IO (Ref Widget))) => Op (GetChild ()) Group orig impl where+  runOp _ _ self n = withRef self $ \selfPtr -> child' selfPtr n >>= toRef++-- $groupfunctions+-- @+-- add:: ('Parent' a 'Widget') => 'Ref' 'Group' -> 'Ref' a -> 'IO' ())+--+-- addResizable:: ('Parent' a 'Widget') => 'Ref' 'Group' -> 'Ref' a -> 'IO' ())+--+-- begin :: 'Ref' 'Group' -> 'IO' ()+--+-- children :: 'Ref' 'Group' -> 'IO' 'Int'+--+-- clear :: 'Ref' 'Group' -> 'IO' ()+--+-- clipChildren :: 'Ref' 'Group' -> 'IO' 'Int'+--+-- ddfdesignKludge :: 'Ref' 'Group' -> 'IO' ('Ref' 'Widget')+--+-- destroy :: 'Ref' 'Group' -> 'IO' ()+--+-- drawChild:: ('Parent' a 'Widget') => 'Ref' 'Group' -> 'Ref' a -> 'IO' ())+--+-- drawChildren :: 'Ref' 'Group' -> 'IO' ()+--+-- drawOutsideLabel:: ('Parent' a 'Widget') => 'Ref' 'Group' -> 'Ref' a -> 'IO' ())+--+-- end :: 'Ref' 'Group' -> 'IO' ()+--+-- find:: ('Parent' a 'Widget') => 'Ref' 'Group' -> 'Ref' a -> 'IO' 'Int')+--+-- focus:: ('Parent' a 'Widget') => 'Ref' 'Group' -> 'Ref' a -> 'IO' ())+--+-- getArray :: 'Ref' 'Group' -> 'IO' ['Ref' 'Widget']+--+-- getChild :: 'Ref' 'Group' -> 'Int' -> 'IO' ('Ref' 'Widget')+--+-- getResizable :: 'Ref' 'Group' -> 'IO' ('Maybe' ('Ref' 'Widget'))+--+-- initSizes :: 'Ref' 'Group' -> 'IO' ()+--+-- insert:: ('Parent' a 'Widget') => 'Ref' 'Group' -> 'Ref' a -> 'Int' -> 'IO' ())+--+-- insertWithBefore:: ('Parent' a 'Widget') => 'Ref' 'Group' -> 'Ref' a -> 'Ref' b -> 'IO' ())+--+-- removeIndex :: 'Ref' 'Group' -> 'Int' -> 'IO' ()+--+-- removeWidget:: ('Parent' a 'Widget') => 'Ref' 'Group' -> 'Ref' a -> 'IO' ())+--+-- setClipChildren :: 'Ref' 'Group' -> 'Int' -> 'IO' ()+--+-- setNotResizable :: 'Ref' 'Group' -> 'IO' ()+--+-- setResizable:: ('Parent' a 'Widget') => 'Ref' 'Group' -> 'Ref' a -> 'IO' ())+--+-- updateChild:: ('Parent' a 'Widget') => 'Ref' 'Group' -> 'Ref' a -> 'IO' ())+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Group"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Hierarchy.hs view
@@ -0,0 +1,4826 @@+{-# LANGUAGE TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FunctionalDependencies, TypeFamilies, GADTs, FlexibleContexts, ScopedTypeVariables, EmptyDataDecls #-}+module Graphics.UI.FLTK.LowLevel.Hierarchy+       (+         -- * Region+         Region,+         -- * GlContext+         GlContext,+         -- * Widget+         Widget,+         Destroy,+         destroy,+         Handle,+         handle,+         GetParent,+         getParent,+         SetParent,+         setParent,+         GetType_,+         getType_,+         SetType,+         setType,+         DrawLabel,+         drawLabel,+         GetX,+         getX,+         GetY,+         getY,+         GetW,+         getW,+         GetH,+         getH,+         GetRectangle,+         getRectangle,+         SetAlign,+         setAlign,+         GetAlign,+         getAlign,+         GetBox,+         getBox,+         SetBox,+         setBox,+         GetColor,+         getColor,+         SetColor,+         setColor,+         SetColorWithBgSel,+         setColorWithBgSel,+         GetSelectionColor,+         getSelectionColor,+         SetSelectionColor,+         setSelectionColor,+         GetLabel,+         getLabel,+         CopyLabel,+         copyLabel,+         SetLabel,+         setLabel,+         GetLabeltype,+         getLabeltype,+         SetLabeltype,+         setLabeltype,+         GetLabelcolor,+         getLabelcolor,+         SetLabelcolor,+         setLabelcolor,+         GetLabelfont,+         getLabelfont,+         SetLabelfont,+         setLabelfont,+         GetLabelsize,+         getLabelsize,+         SetLabelsize,+         setLabelsize,+         GetImage,+         getImage,+         SetImage,+         setImage,+         GetDeimage,+         getDeimage,+         SetDeimage,+         setDeimage,+         GetTooltip,+         getTooltip,+         CopyTooltip,+         copyTooltip,+         SetTooltip,+         setTooltip,+         GetWhen,+         getWhen,+         SetWhen,+         setWhen,+         GetVisible,+         getVisible,+         GetVisibleR,+         getVisibleR,+         ShowWidgetSuper,+         showWidgetSuper,+         ShowWidget,+         showWidget,+         HideSuper,+         hideSuper,+         Hide,+         hide,+         SetVisible,+         setVisible,+         ClearVisible,+         clearVisible,+         Active,+         active,+         ActiveR,+         activeR,+         Activate,+         activate,+         Deactivate,+         deactivate,+         GetOutput,+         getOutput,+         SetOutput,+         setOutput,+         ClearOutput,+         clearOutput,+         Takesevents,+         takesevents,+         SetChanged,+         setChanged,+         ClearChanged,+         clearChanged,+         Changed,+         changed,+         SetActive,+         setActive,+         ClearActive,+         clearActive,+         TakeFocus,+         takeFocus,+         SetVisibleFocus,+         setVisibleFocus,+         ClearVisibleFocus,+         clearVisibleFocus,+         ModifyVisibleFocus,+         modifyVisibleFocus,+         GetVisibleFocus,+         getVisibleFocus,+         Contains,+         contains,+         Inside,+         inside,+         Redraw,+         redraw,+         RedrawLabel,+         redrawLabel,+         GetDamage,+         getDamage,+         ClearDamageWithBitmask,+         clearDamageWithBitmask,+         ClearDamage,+         clearDamage,+         GetDamageWithText,+         getDamageWithText,+         GetDamageInsideWidget,+         getDamageInsideWidget,+         MeasureLabel,+         measureLabel,+         GetWindow,+         getWindow,+         GetTopWindow,+         getTopWindow,+         GetTopWindowOffset,+         getTopWindowOffset,+         ResizeSuper,+         resizeSuper,+         Resize,+         resize,+         SetCallback,+         setCallback,+         DrawBox,+         drawBox,+         DrawBoxWithBoxtype,+         drawBoxWithBoxtype,+         DrawBackdrop,+         drawBackdrop,+         DrawFocus,+         drawFocus,+         -- * Group+         Group,+         DrawChild,+         drawChild,+         DrawChildren,+         drawChildren,+         DrawOutsideLabel,+         drawOutsideLabel,+         UpdateChild,+         updateChild,+         Begin,+         begin,+         End,+         end,+         Find,+         find,+         Add,+         add,+         Insert,+         insert,+         RemoveIndex,+         removeIndex,+         RemoveWidget,+         removeWidget,+         Clear,+         clear,+         SetResizable,+         setResizable,+         SetNotResizable,+         setNotResizable,+         GetResizable,+         getResizable,+         AddResizable,+         addResizable,+         InitSizes,+         initSizes,+         Children,+         children,+         SetClipChildren,+         setClipChildren,+         ClipChildren,+         clipChildren,+         Focus,+         focus,+         DdfdesignKludge,+         ddfdesignKludge,+         InsertWithBefore,+         insertWithBefore,+         GetArray,+         getArray,+         GetChild,+         getChild,+         -- * Window+         Window,+         DrawSuper,+         drawSuper,+         HandleSuper,+         handleSuper,+         FlushSuper,+         flushSuper,+         MakeFullscreen,+         makeFullscreen,+         FullscreenOff,+         fullscreenOff,+         SetBorder,+         setBorder,+         ClearBorder,+         clearBorder,+         GetBorder,+         getBorder,+         SetOverride,+         setOverride,+         GetOverride,+         getOverride,+         SetModal,+         setModal,+         GetModal,+         getModal,+         SetNonModal,+         setNonModal,+         NonModal,+         nonModal,+         SetMenuWindow,+         setMenuWindow,+         GetMenuWindow,+         getMenuWindow,+         SetTooltipWindow,+         setTooltipWindow,+         GetTooltipWindow,+         getTooltipWindow,+         HotSpot,+         hotSpot,+         FreePosition,+         freePosition,+         SizeRange,+         sizeRange,+         SizeRangeWithArgs,+         sizeRangeWithArgs,+         GetIconlabel,+         getIconlabel,+         SetIconlabel,+         setIconlabel,+         SetLabelWithIconlabel,+         setLabelWithIconlabel,+         GetXclass,+         getXclass,+         SetXclass,+         setXclass,+         GetIcon,+         getIcon,+         SetIcon,+         setIcon,+         Shown,+         shown,+         Iconize,+         iconize,+         GetXRoot,+         getXRoot,+         GetYRoot,+         getYRoot,+         MakeCurrent,+         makeCurrent,+         SetCursor,+         setCursor,+         SetCursorWithFgBg,+         setCursorWithFgBg,+         SetDefaultCursor,+         setDefaultCursor,+         SetDefaultCursorWithFgBg,+         setDefaultCursorWithFgBg,+         GetDecoratedW,+         getDecoratedW,+         GetDecoratedH,+         getDecoratedH,+         WaitForExpose,+         waitForExpose,+         -- * SingleWindow+         SingleWindow,+         -- * DoubleWindow+         DoubleWindow,+         -- * OverlayWindow+         OverlayWindow,+         CanDoOverlay,+         canDoOverlay,+         RedrawOverlay,+         redrawOverlay,+         Flush,+         flush,+         -- * Button+         Button,+         GetValue,+         getValue,+         SetValue,+         setValue,+         Set,+         set,+         Setonly,+         setonly,+         GetShortcut,+         getShortcut,+         SetShortcut,+         setShortcut,+         GetDownBox,+         getDownBox,+         SetDownBox,+         setDownBox,+         GetDownColor,+         getDownColor,+         SetDownColor,+         setDownColor,+         -- * LightButton+         LightButton,+         -- * RadioLightButton+         RadioLightButton,+         -- * CheckButton+         CheckButton,+         -- * ReturnButton+         ReturnButton,+         -- * RoundButton+         RoundButton,+         -- * RepeatButton+         RepeatButton,+         -- * ToggleButton+         ToggleButton,+         -- * Valuator+         Valuator,+         Bounds,+         bounds,+         GetMinimum,+         getMinimum,+         SetMinimum,+         setMinimum,+         GetMaximum,+         getMaximum,+         SetMaximum,+         setMaximum,+         Range,+         range,+         SetStep,+         setStep,+         GetStep,+         getStep,+         Precision,+         precision,+         Format,+         format,+         Round,+         round,+         Clamp,+         clamp,+         Increment,+         increment,+         -- * Slider+         Slider,+         Scrollvalue,+         scrollvalue,+         SetSliderSize,+         setSliderSize,+         GetSliderSize,+         getSliderSize,+         GetSlider,+         getSlider,+         SetSlider,+         setSlider,+         -- * FillSlider+         FillSlider,+         -- * HorSlider+         HorSlider,+         -- * HorFillSider+         HorFillSlider,+         -- * NiceSlider+         NiceSlider,+         -- * HorNiceSlider+         HorNiceSlider,+         -- * MenuItem+         MenuItem,+         NextWithStep,+         nextWithStep,+         Next,+         next,+         GetFirst,+         getFirst,+         SetLabelWithLabeltype,+         setLabelWithLabeltype,+         Submenu,+         submenu,+         Checkbox,+         checkbox,+         Radio,+         radio,+         Visible,+         visible,+         Activevisible,+         activevisible,+         Measure,+         measure,+         DrawWithT,+         drawWithT,+         Draw,+         draw,+         GetFlags,+         getFlags,+         SetFlags,+         setFlags,+         GetText,+         getText,+         Pulldown,+         pulldown,+         Popup,+         popup,+         TestShortcut,+         testShortcut,+         FindShortcut,+         findShortcut,+         DoCallback,+         doCallback,+         GetSize,+         getSize,+         -- * MenuPrim+         MenuPrim,+         ItemPathname,+         itemPathname,+         ItemPathnameRecent,+         itemPathnameRecent,+         Picked,+         picked,+         FindIndex,+         findIndex,+         Global,+         global,+         GetMenu,+         getMenu,+         SetMenu,+         setMenu,+         AddName,+         addName,+         Copy,+         copy,+         SetSize,+         setSize,+         ClearSubmenu,+         clearSubmenu,+         Replace,+         replace,+         Remove,+         remove,+         SetMode,+         setMode,+         GetMode,+         getMode,+         Mvalue,+         mvalue,+         GetTextWithIndex,+         getTextWithIndex,+         GetTextfont,+         getTextfont,+         SetTextfont,+         setTextfont,+         GetTextsize,+         getTextsize,+         SetTextsize,+         setTextsize,+         GetTextcolor,+         getTextcolor,+         SetTextcolor,+         setTextcolor,+         DownBox,+         downBox,+         -- * SysMenuBar+         SysMenuBar,+         -- * Choice,+         Choice,+         -- * MenuButton+         MenuButton,+         -- * Image+         Image,+         GetD,+         getD,+         GetLd,+         getLd,+         GetCount,+         getCount,+         ColorAverage,+         colorAverage,+         Inactive,+         inactive,+         Desaturate,+         desaturate,+         DrawResize,+         drawResize,+         Uncache,+         uncache,+         -- * Bitmap+         Bitmap,+         -- * Pixmap+         Pixmap,+         -- * CopySurface+         CopySurface,+         ClassName,+         className,+         SetCurrent,+         setCurrent,+         -- * ImageSurface+         ImageSurface,+         -- * Adjuster+         Adjuster,+         SetSoft,+         setSoft,+         GetSoft,+         getSoft,+         -- * Dial+         Dial,+         GetAngle1,+         getAngle1,+         SetAngle1,+         setAngle1,+         GetAngle2,+         getAngle2,+         SetAngle2,+         setAngle2,+         SetAngles,+         setAngles,+         -- * FillDial+         FillDial,+         -- * LineDial+         LineDial,+         -- * Roller+         Roller,+         -- * Counter+         Counter,+         SetLstep,+         setLstep,+         -- * SimpleCounter+         SimpleCounter,+         -- * Scrollbar+         Scrollbar,+         SetLinesize,+         setLinesize,+         GetLinesize,+         getLinesize,+         -- * ValueSlider+         ValueSlider,+         -- * HorValueSlider+         HorValueSlider,+         -- * Input+         Input,+         StaticValue,+         staticValue,+         Index,+         index,+         GetMaximumSize,+         getMaximumSize,+         SetMaximumSize,+         setMaximumSize,+         GetPosition,+         getPosition,+         GetMark,+         getMark,+         SetPosition,+         setPosition,+         SetMark,+         setMark,+         Cut,+         cut,+         CutFromCursor,+         cutFromCursor,+         CutRange,+         cutRange,+         InsertWithLength,+         insertWithLength,+         Undo,+         undo,+         CopyCuts,+         copyCuts,+         GetCursorColor,+         getCursorColor,+         SetCursorColor,+         setCursorColor,+         GetInputType,+         getInputType,+         SetInputType,+         setInputType,+         GetReadonly,+         getReadonly,+         SetReadonly,+         setReadonly,+         GetWrap,+         getWrap,+         SetWrap,+         setWrap,+         GetTabNav,+         getTabNav,+         SetTabNav,+         setTabNav,+         -- * ValueInput+         ValueInput,+         -- * ValueOutput+         ValueOutput,+         -- * Timer+         Timer,+         GetDirection,+         getDirection,+         SetDirection,+         setDirection,+         GetSuspended,+         getSuspended,+         SetSuspended,+         setSuspended,+         -- * HiddenTimer+         HiddenTimer,+         -- * ValueTimer+         ValueTimer,+         -- * Progress+         Progress,+         -- * Positioner+         Positioner,+         SetXvalue,+         setXvalue,+         GetXvalue,+         getXvalue,+         SetYvalue,+         setYvalue,+         GetYvalue,+         getYvalue,+         SetXminimum,+         setXminimum,+         GetXminimum,+         getXminimum,+         SetYminimum,+         setYminimum,+         GetYminimum,+         getYminimum,+         SetXmaximum,+         setXmaximum,+         GetXmaximum,+         getXmaximum,+         SetYmaximum,+         setYmaximum,+         GetYmaximum,+         getYmaximum,+         SetXbounds,+         setXbounds,+         SetYbounds,+         setYbounds,+         SetXstep,+         setXstep,+         SetYstep,+         setYstep,+         -- * Wizard+         Wizard,+         Prev,+         prev,+         -- * Table+         Table,+         SetTableBox,+         setTableBox,+         GetTableBox,+         getTableBox,+         SetRows,+         setRows,+         GetRows,+         getRows,+         SetCols,+         setCols,+         GetCols,+         getCols,+         SetVisibleCells,+         setVisibleCells,+         IsInteractiveResize,+         isInteractiveResize,+         GetRowResize,+         getRowResize,+         SetRowResize,+         setRowResize,+         GetColResize,+         getColResize,+         SetColResize,+         setColResize,+         GetColResizeMin,+         getColResizeMin,+         SetColResizeMin,+         setColResizeMin,+         GetRowResizeMin,+         getRowResizeMin,+         SetRowResizeMin,+         setRowResizeMin,+         GetRowHeader,+         getRowHeader,+         SetRowHeader,+         setRowHeader,+         GetColHeader,+         getColHeader,+         SetColHeader,+         setColHeader,+         SetColHeaderHeight,+         setColHeaderHeight,+         GetColHeaderHeight,+         getColHeaderHeight,+         SetRowHeaderWidth,+         setRowHeaderWidth,+         GetRowHeaderWidth,+         getRowHeaderWidth,+         SetRowHeaderColor,+         setRowHeaderColor,+         GetRowHeaderColor,+         getRowHeaderColor,+         SetColHeaderColor,+         setColHeaderColor,+         GetColHeaderColor,+         getColHeaderColor,+         SetRowHeight,+         setRowHeight,+         GetRowHeight,+         getRowHeight,+         SetColWidth,+         setColWidth,+         GetColWidth,+         getColWidth,+         SetRowHeightAll,+         setRowHeightAll,+         SetColWidthAll,+         setColWidthAll,+         SetRowPosition,+         setRowPosition,+         SetColPosition,+         setColPosition,+         GetRowPosition,+         getRowPosition,+         GetColPosition,+         getColPosition,+         SetTopRow,+         setTopRow,+         GetTopRow,+         getTopRow,+         IsSelected,+         isSelected,+         GetSelection,+         getSelection,+         SetSelection,+         setSelection,+         MoveCursor,+         moveCursor,+         CallbackRow,+         callbackRow,+         CallbackCol,+         callbackCol,+         CallbackContext,+         callbackContext,+         FindCell,+         findCell,+         ClearSuper,+         clearSuper,+         SetRowsSuper,+         setRowsSuper,+         SetColsSuper,+         setColsSuper,+         -- * TableRow+         TableRow,+         GetType,+         getType,+         GetRowSelected,+         getRowSelected,+         SelectAllRows,+         selectAllRows,+         -- * GlWindow+         GlWindow,+         GetValid,+         getValid,+         SetValid,+         setValid,+         Invalidate,+         invalidate,+         GetContextValid,+         getContextValid,+         SetContextValid,+         setContextValid,+         CanDoWithM,+         canDoWithM,+         CanDo,+         canDo,+         GetContext,+         getContext,+         SetContext,+         setContext,+         SetContextWithDestroyFlag,+         setContextWithDestroyFlag,+         SwapBuffers,+         swapBuffers,+         Ortho,+         ortho,+         HideOverlay,+         hideOverlay,+         MakeOverlayCurrent,+         makeOverlayCurrent,+         -- * Box+         Box,+         -- * Browser+         Browser,+         Move,+         move,+         Load,+         load,+         Swap,+         swap,+         GetTopline,+         getTopline,+         Lineposition,+         lineposition,+         SetTopline,+         setTopline,+         SetBottomline,+         setBottomline,+         SetMiddleline,+         setMiddleline,+         Select,+         select,+         Selected,+         selected,+         ShowWidgetLine,+         showWidgetLine,+         HideLine,+         hideLine,+         SetText,+         setText,+         GetFormatChar,+         getFormatChar,+         SetFormatChar,+         setFormatChar,+         GetColumnChar,+         getColumnChar,+         SetColumnChar,+         setColumnChar,+         GetColumnWidths,+         getColumnWidths,+         SetColumnWidths,+         setColumnWidths,+         Displayed,+         displayed,+         MakeVisible,+         makeVisible,+         RemoveIcon,+         removeIcon,+         SelectOnly,+         selectOnly,+         SelectOnlyAndCallback,+         selectOnlyAndCallback,+         Deselect,+         deselect,+         DeselectAndCallback,+         deselectAndCallback,+         GetHposition,+         getHposition,+         SetHposition,+         setHposition,+         GetHasScrollbar,+         getHasScrollbar,+         SetHasScrollbar,+         setHasScrollbar,+         GetScrollbarSize,+         getScrollbarSize,+         SetScrollbarSize,+         setScrollbarSize,+         GetScrollbarWidth,+         getScrollbarWidth,+         SetScrollbarWidth,+         setScrollbarWidth,+         Sort,+         sort,+         SortWithSortType,+         sortWithSortType,+         -- * SelectBrowser+         SelectBrowser,+         -- * IntInput+         IntInput,+         -- * Clock+         Clock,+         GetValueSinceEpoch,+         getValueSinceEpoch,+         -- * TreePrefs+         TreePrefs,+         GetItemLabelfont,+         getItemLabelfont,+         GetItemLabelsize,+         getItemLabelsize,+         SetItemLabelsize,+         setItemLabelsize,+         SetItemLabelfgcolor,+         setItemLabelfgcolor,+         GetItemLabelbgcolor,+         getItemLabelbgcolor,+         SetItemLabelbgcolor,+         setItemLabelbgcolor,+         GetLabelfgcolor,+         getLabelfgcolor,+         SetLabelfgcolor,+         setLabelfgcolor,+         GetLabelbgcolor,+         getLabelbgcolor,+         SetLabelbgcolor,+         setLabelbgcolor,+         GetMarginleft,+         getMarginleft,+         SetMarginleft,+         setMarginleft,+         GetMargintop,+         getMargintop,+         SetMargintop,+         setMargintop,+         GetOpenchildMarginbottom,+         getOpenchildMarginbottom,+         SetOpenchildMarginbottom,+         setOpenchildMarginbottom,+         GetUsericonmarginleft,+         getUsericonmarginleft,+         SetUsericonmarginleft,+         setUsericonmarginleft,+         GetLabelmarginleft,+         getLabelmarginleft,+         SetLabelmarginleft,+         setLabelmarginleft,+         GetLinespacing,+         getLinespacing,+         SetLinespacing,+         setLinespacing,+         GetConnectorcolor,+         getConnectorcolor,+         SetConnectorcolor,+         setConnectorcolor,+         GetConnectorstyle,+         getConnectorstyle,+         SetConnectorstyle,+         setConnectorstyle,+         GetConnectorwidth,+         getConnectorwidth,+         SetConnectorwidth,+         setConnectorwidth,+         GetOpenicon,+         getOpenicon,+         SetOpenicon,+         setOpenicon,+         GetCloseicon,+         getCloseicon,+         SetCloseicon,+         setCloseicon,+         GetUsericon,+         getUsericon,+         SetUsericon,+         setUsericon,+         GetShowcollapse,+         getShowcollapse,+         SetShowcollapse,+         setShowcollapse,+         GetSortorder,+         getSortorder,+         SetSortorder,+         setSortorder,+         GetSelectbox,+         getSelectbox,+         SetSelectbox,+         setSelectbox,+         GetShowroot,+         getShowroot,+         SetShowroot,+         setShowroot,+         GetSelectmode,+         getSelectmode,+         SetSelectmode,+         setSelectmode,+         -- * TreeItem+         TreeItem,+         ShowSelf,+         showSelf,+         SetWidget,+         setWidget,+         GetWidget,+         getWidget,+         Child,+         child,+         HasChildren,+         hasChildren,+         FindChild,+         findChild,+         RemoveChild,+         removeChild,+         ClearChildren,+         clearChildren,+         SwapChildren,+         swapChildren,+         SwapChildrenByTreeItem,+         swapChildrenByTreeItem,+         FindInChildren,+         findInChildren,+         FindItem,+         findItem,+         AddAt,+         addAt,+         InsertAbove,+         insertAbove,+         Deparent,+         deparent,+         Reparent,+         reparent,+         MoveTo,+         moveTo,+         GetDepth,+         getDepth,+         NextSibling,+         nextSibling,+         PrevSibling,+         prevSibling,+         UpdatePrevNext,+         updatePrevNext,+         NextDisplayed,+         nextDisplayed,+         PrevDisplayed,+         prevDisplayed,+         Open,+         open,+         Close,+         close,+         IsOpen,+         isOpen,+         IsClose,+         isClose,+         OpenToggle,+         openToggle,+         SelectWithVal,+         selectWithVal,+         SelectToggle,+         selectToggle,+         SelectAll,+         selectAll,+         DeselectAll,+         deselectAll,+         ActivateWithVal,+         activateWithVal,+         IsActive,+         isActive,+         IsVisible,+         isVisible,+         VisibleR,+         visibleR,+         FindClicked,+         findClicked,+         EventOnCollapseIcon,+         eventOnCollapseIcon,+         EventOnLabel,+         eventOnLabel,+         IsRoot,+         isRoot,+         LabelX,+         labelX,+         LabelY,+         labelY,+         LabelW,+         labelW,+         LabelH,+         labelH,+         -- * Tree+         Tree,+         RootLabel,+         rootLabel,+         Root,+         root,+         ItemClicked,+         itemClicked,+         FirstVisible,+         firstVisible,+         NextWithItem,+         nextWithItem,+         PrevWithItem,+         prevWithItem,+         GetLast,+         getLast,+         LastVisible,+         lastVisible,+         FirstSelectedItem,+         firstSelectedItem,+         NextSelectedItem,+         nextSelectedItem,+         NextSelectedItemWithItem,+         nextSelectedItemWithItem,+         OpenAndCallback,+         openAndCallback,+         OpenToggleAndCallback,+         openToggleAndCallback,+         TreeMenuItemLocator,+         treeMenuItemLocator,+         CloseAndCallback,+         closeAndCallback,+         SelectAndCallback,+         selectAndCallback,+         SelectToggleAndCallback,+         selectToggleAndCallback,+         SelectAllAndCallback,+         selectAllAndCallback,+         SetItemFocus,+         setItemFocus,+         GetItemFocus,+         getItemFocus,+         IsSelectedWithItem,+         isSelectedWithItem,+         SetItemLabelfont,+         setItemLabelfont,+         GetItemLabelfgcolor,+         getItemLabelfgcolor,+         Selectmode,+         selectmode,+         ShowItemWithYoff,+         showItemWithYoff,+         ShowItemTop,+         showItemTop,+         ShowItemMiddle,+         showItemMiddle,+         ShowItemBottom,+         showItemBottom,+         Display,+         display,+         GetVposition,+         getVposition,+         SetVposition,+         setVposition,+         IsScrollbar,+         isScrollbar,+         IsVscrollVisible,+         isVscrollVisible,+         SetCallbackItem,+         setCallbackItem,+         GetCallbackItem,+         getCallbackItem,+         SetCallbackReason,+         setCallbackReason,+         GetCallbackReason,+         getCallbackReason,+         -- * TextSelection+         TextSelection,+         Update,+         update,+         Start,+         start,+         SetSelected,+         setSelected,+         Includes,+         includes,+         -- * TextBuffer+         TextBuffer,+         InputFileWasTranscoded,+         inputFileWasTranscoded,+         FileEncodingWarningMessage,+         fileEncodingWarningMessage,+         GetLength,+         getLength,+         TextRange,+         textRange,+         CharAt,+         charAt,+         ByteAt,+         byteAt,+         AppendToBuffer,+         appendToBuffer,+         CanUndo,+         canUndo,+         Insertfile,+         insertfile,+         InsertfileWithBuflen,+         insertfileWithBuflen,+         Appendfile,+         appendfile,+         AppendfileWithBuflen,+         appendfileWithBuflen,+         Loadfile,+         loadfile,+         LoadfileWithBuflen,+         loadfileWithBuflen,+         Outputfile,+         outputfile,+         OutputfileWithBuflen,+         outputfileWithBuflen,+         Savefile,+         savefile,+         SavefileWithBuflen,+         savefileWithBuflen,+         GetTabDistance,+         getTabDistance,+         SetTabDistance,+         setTabDistance,+         Unselect,+         unselect,+         SelectionPosition,+         selectionPosition,+         SelectionText,+         selectionText,+         RemoveSelection,+         removeSelection,+         ReplaceSelection,+         replaceSelection,+         SecondarySelect,+         secondarySelect,+         SecondarySelected,+         secondarySelected,+         SecondaryUnselect,+         secondaryUnselect,+         SecondarySelectionPosition,+         secondarySelectionPosition,+         SecondarySelectionText,+         secondarySelectionText,+         RemoveSecondarySelection,+         removeSecondarySelection,+         ReplaceSecondarySelection,+         replaceSecondarySelection,+         GetHighlight,+         getHighlight,+         SetHighlight,+         setHighlight,+         Unhighlight,+         unhighlight,+         HighlightPosition,+         highlightPosition,+         HighlightText,+         highlightText,+         AddModifyCallback,+         addModifyCallback,+         RemoveModifyCallback,+         removeModifyCallback,+         CallModifyCallbacks,+         callModifyCallbacks,+         AddPredeleteCallback,+         addPredeleteCallback,+         RemovePredeleteCallback,+         removePredeleteCallback,+         CallPredeleteCallbacks,+         callPredeleteCallbacks,+         LineText,+         lineText,+         LineStart,+         lineStart,+         LineEnd,+         lineEnd,+         WordStart,+         wordStart,+         WordEnd,+         wordEnd,+         CountDisplayedCharacters,+         countDisplayedCharacters,+         SkipDisplayedCharacters,+         skipDisplayedCharacters,+         CountLines,+         countLines,+         SkipLines,+         skipLines,+         RewindLines,+         rewindLines,+         FindcharForward,+         findcharForward,+         FindcharBackward,+         findcharBackward,+         SearchForwardWithMatchcase,+         searchForwardWithMatchcase,+         SearchBackwardWithMatchcase,+         searchBackwardWithMatchcase,+         PrimarySelection,+         primarySelection,+         SecondarySelection,+         secondarySelection,+         HighlightSelection,+         highlightSelection,+         PrevChar,+         prevChar,+         PrevCharClipped,+         prevCharClipped,+         NextChar,+         nextChar,+         NextCharClipped,+         nextCharClipped,+         Utf8Align,+         utf8Align,+         -- * TextDisplay,+         TextDisplay,+         SetBuffer,+         setBuffer,+         GetBuffer,+         getBuffer,+         RedisplayRange,+         redisplayRange,+         Scroll,+         scroll,+         Overstrike,+         overstrike,+         SetInsertPosition,+         setInsertPosition,+         GetInsertPosition,+         getInsertPosition,+         PositionToXy,+         positionToXy,+         InSelection,+         inSelection,+         ShowInsertPosition,+         showInsertPosition,+         MoveRight,+         moveRight,+         MoveLeft,+         moveLeft,+         MoveUp,+         moveUp,+         MoveDown,+         moveDown,+         NextWord,+         nextWord,+         PreviousWord,+         previousWord,+         ShowCursor,+         showCursor,+         SetCursorStyle,+         setCursorStyle,+         GetScrollbarAlign,+         getScrollbarAlign,+         SetScrollbarAlign,+         setScrollbarAlign,+         HighlightData,+         highlightData,+         PositionStyle,+         positionStyle,+         XToCol,+         xToCol,+         ColToX,+         colToX,+         SetLinenumberWidth,+         setLinenumberWidth,+         GetLinenumberWidth,+         getLinenumberWidth,+         SetLinenumberFont,+         setLinenumberFont,+         GetLinenumberFont,+         getLinenumberFont,+         SetLinenumberSize,+         setLinenumberSize,+         GetLinenumberSize,+         getLinenumberSize,+         SetLinenumberFgcolor,+         setLinenumberFgcolor,+         GetLinenumberFgcolor,+         getLinenumberFgcolor,+         SetLinenumberBgcolor,+         setLinenumberBgcolor,+         GetLinenumberBgcolor,+         getLinenumberBgcolor,+         SetLinenumberAlign,+         setLinenumberAlign,+         GetLinenumberAlign,+         getLinenumberAlign,+         SetLinenumberFormat,+         setLinenumberFormat,+         GetLinenumberFormat,+         getLinenumberFormat,+         -- * TextEditor+         TextEditor,+         SetInsertMode,+         setInsertMode,+         GetInsertMode,+         getInsertMode,+         GetDefaultKeyBindings,+         getDefaultKeyBindings,+         ReplaceKeyBindings,+         replaceKeyBindings+  )+where+import Prelude hiding (round)+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Dispatch++data CRegion parent+type Region = CRegion Base+instance Functions Region ()++data CGlContext parent+type GlContext = CGlContext Base+instance Functions GlContext ()++data CWidget parent+type Widget = CWidget Base+type WidgetFuncs =+  (Destroy+  (Handle+  (GetParent+  (SetParent+  (GetType_+  (SetType+  (DrawLabel+  (GetX+  (GetY+  (GetW+  (GetH+  (GetRectangle+  (SetAlign+  (GetAlign+  (GetBox+  (SetBox+  (GetColor+  (SetColor+  (SetColorWithBgSel+  (GetSelectionColor+  (SetSelectionColor+  (GetLabel+  (CopyLabel+  (SetLabel+  (GetLabeltype+  (SetLabeltype+  (GetLabelcolor+  (SetLabelcolor+  (GetLabelfont+  (SetLabelfont+  (GetLabelsize+  (SetLabelsize+  (GetImage+  (SetImage+  (GetDeimage+  (SetDeimage+  (GetTooltip+  (CopyTooltip+  (SetTooltip+  (GetWhen+  (SetWhen+  (GetVisible+  (GetVisibleR+  (ShowWidgetSuper+  (ShowWidget+  (HideSuper+  (Hide+  (SetVisible+  (ClearVisible+  (Active+  (ActiveR+  (Activate+  (Deactivate+  (GetOutput+  (SetOutput+  (Takesevents+  (Changed+  (SetChanged+  (ClearChanged+  (SetActive+  (ClearActive+  (TakeFocus+  (SetVisibleFocus+  (ClearVisibleFocus+  (ModifyVisibleFocus+  (GetVisibleFocus+  (Contains+  (Inside+  (Redraw+  (RedrawLabel+  (GetDamage+  (ClearDamageWithBitmask+  (ClearDamage+  (GetDamageWithText+  (GetDamageInsideWidget+  (MeasureLabel+  (GetWindow+  (GetTopWindow+  (GetTopWindowOffset+  (ResizeSuper+  (Resize+  (SetCallback+  (DrawBox+  (DrawBoxWithBoxtype+  (DrawBackdrop+  (DrawFocus+  ()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))+instance Functions Widget WidgetFuncs++data Destroy a+destroy :: (FindOp a (Destroy ()) (Match r), Op (Destroy ()) r a impl) => Ref a -> impl+destroy = dispatch (undefined :: Destroy ())+data Handle a+handle :: (FindOp a (Handle ()) (Match r), Op (Handle ()) r a impl) => Ref a -> impl+handle = dispatch (undefined :: Handle ())+data GetParent a+getParent :: (FindOp a (GetParent ()) (Match r), Op (GetParent ()) r a impl) => Ref a -> impl+getParent = dispatch (undefined :: GetParent ())+data SetParent a+setParent :: (FindOp a (SetParent ()) (Match r), Op (SetParent ()) r a impl) => Ref a -> impl+setParent = dispatch (undefined :: SetParent ())+data GetType_ a+getType_:: (FindOp a (GetType_ ()) (Match r), Op (GetType_ ()) r a impl) => Ref a -> impl+getType_= dispatch (undefined :: GetType_ ())+data SetType a+setType :: (FindOp a (SetType ()) (Match r), Op (SetType ()) r a impl) => Ref a -> impl+setType = dispatch (undefined :: SetType ())+data DrawLabel a+drawLabel :: (FindOp a (DrawLabel ()) (Match r), Op (DrawLabel ()) r a impl) => Ref a -> impl+drawLabel = dispatch (undefined :: DrawLabel ())+data GetX a+getX :: (FindOp a (GetX ()) (Match r), Op (GetX ()) r a impl) => Ref a -> impl+getX = dispatch (undefined :: GetX ())+data GetY a+getY :: (FindOp a (GetY ()) (Match r), Op (GetY ()) r a impl) => Ref a -> impl+getY = dispatch (undefined :: GetY ())+data GetW a+getW :: (FindOp a (GetW ()) (Match r), Op (GetW ()) r a impl) => Ref a -> impl+getW = dispatch (undefined :: GetW ())+data GetH a+getH :: (FindOp a (GetH ()) (Match r), Op (GetH ()) r a impl) => Ref a -> impl+getH = dispatch (undefined :: GetH ())+data GetRectangle a+getRectangle :: (FindOp a (GetRectangle ()) (Match r), Op (GetRectangle ()) r a impl) => Ref a -> impl+getRectangle = dispatch (undefined :: GetRectangle ())+data SetAlign a+setAlign :: (FindOp a (SetAlign ()) (Match r), Op (SetAlign ()) r a impl) => Ref a -> impl+setAlign = dispatch (undefined :: SetAlign ())+data GetAlign a+getAlign :: (FindOp a (GetAlign ()) (Match r), Op (GetAlign ()) r a impl) => Ref a -> impl+getAlign = dispatch (undefined :: GetAlign ())+data GetBox a+getBox :: (FindOp a (GetBox ()) (Match r), Op (GetBox ()) r a impl) => Ref a -> impl+getBox = dispatch (undefined :: GetBox ())+data SetBox a+setBox :: (FindOp a (SetBox ()) (Match r), Op (SetBox ()) r a impl) => Ref a -> impl+setBox = dispatch (undefined :: SetBox ())+data GetColor a+getColor :: (FindOp a (GetColor ()) (Match r), Op (GetColor ()) r a impl) => Ref a -> impl+getColor = dispatch (undefined :: GetColor ())+data SetColor a+setColor :: (FindOp a (SetColor ()) (Match r), Op (SetColor ()) r a impl) => Ref a -> impl+setColor = dispatch (undefined :: SetColor ())+data SetColorWithBgSel a+setColorWithBgSel :: (FindOp a (SetColorWithBgSel ()) (Match r), Op (SetColorWithBgSel ()) r a impl) => Ref a -> impl+setColorWithBgSel = dispatch (undefined :: SetColorWithBgSel ())+data GetSelectionColor a+getSelectionColor :: (FindOp a (GetSelectionColor ()) (Match r), Op (GetSelectionColor ()) r a impl) => Ref a -> impl+getSelectionColor = dispatch (undefined :: GetSelectionColor ())+data SetSelectionColor a+setSelectionColor :: (FindOp a (SetSelectionColor ()) (Match r), Op (SetSelectionColor ()) r a impl) => Ref a -> impl+setSelectionColor = dispatch (undefined :: SetSelectionColor ())+data GetLabel a+getLabel :: (FindOp a (GetLabel ()) (Match r), Op (GetLabel ()) r a impl) => Ref a -> impl+getLabel = dispatch (undefined :: GetLabel ())+data CopyLabel a+copyLabel :: (FindOp a (CopyLabel ()) (Match r), Op (CopyLabel ()) r a impl) => Ref a -> impl+copyLabel = dispatch (undefined :: CopyLabel ())+data SetLabel a+setLabel :: (FindOp a (SetLabel ()) (Match r), Op (SetLabel ()) r a impl) => Ref a -> impl+setLabel = dispatch (undefined :: SetLabel ())+data GetLabeltype a+getLabeltype :: (FindOp a (GetLabeltype ()) (Match r), Op (GetLabeltype ()) r a impl) => Ref a -> impl+getLabeltype = dispatch (undefined :: GetLabeltype ())+data SetLabeltype a+setLabeltype :: (FindOp a (SetLabeltype ()) (Match r), Op (SetLabeltype ()) r a impl) => Ref a -> impl+setLabeltype = dispatch (undefined :: SetLabeltype ())+data GetLabelcolor a+getLabelcolor :: (FindOp a (GetLabelcolor ()) (Match r), Op (GetLabelcolor ()) r a impl) => Ref a -> impl+getLabelcolor = dispatch (undefined :: GetLabelcolor ())+data SetLabelcolor a+setLabelcolor :: (FindOp a (SetLabelcolor ()) (Match r), Op (SetLabelcolor ()) r a impl) => Ref a -> impl+setLabelcolor = dispatch (undefined :: SetLabelcolor ())+data GetLabelfont a+getLabelfont :: (FindOp a (GetLabelfont ()) (Match r), Op (GetLabelfont ()) r a impl) => Ref a -> impl+getLabelfont = dispatch (undefined :: GetLabelfont ())+data SetLabelfont a+setLabelfont :: (FindOp a (SetLabelfont ()) (Match r), Op (SetLabelfont ()) r a impl) => Ref a -> impl+setLabelfont = dispatch (undefined :: SetLabelfont ())+data GetLabelsize a+getLabelsize :: (FindOp a (GetLabelsize ()) (Match r), Op (GetLabelsize ()) r a impl) => Ref a -> impl+getLabelsize = dispatch (undefined :: GetLabelsize ())+data SetLabelsize a+setLabelsize :: (FindOp a (SetLabelsize ()) (Match r), Op (SetLabelsize ()) r a impl) => Ref a -> impl+setLabelsize = dispatch (undefined :: SetLabelsize ())+data GetImage a+getImage :: (FindOp a (GetImage ()) (Match r), Op (GetImage ()) r a impl) => Ref a -> impl+getImage = dispatch (undefined :: GetImage ())+data SetImage a+setImage :: (FindOp a (SetImage ()) (Match r), Op (SetImage ()) r a impl) => Ref a -> impl+setImage = dispatch (undefined :: SetImage ())+data GetDeimage a+getDeimage :: (FindOp a (GetDeimage ()) (Match r), Op (GetDeimage ()) r a impl) => Ref a -> impl+getDeimage = dispatch (undefined :: GetDeimage ())+data SetDeimage a+setDeimage :: (FindOp a (SetDeimage ()) (Match r), Op (SetDeimage ()) r a impl) => Ref a -> impl+setDeimage = dispatch (undefined :: SetDeimage ())+data GetTooltip a+getTooltip :: (FindOp a (GetTooltip ()) (Match r), Op (GetTooltip ()) r a impl) => Ref a -> impl+getTooltip = dispatch (undefined :: GetTooltip ())+data CopyTooltip a+copyTooltip :: (FindOp a (CopyTooltip ()) (Match r), Op (CopyTooltip ()) r a impl) => Ref a -> impl+copyTooltip = dispatch (undefined :: CopyTooltip ())+data SetTooltip a+setTooltip :: (FindOp a (SetTooltip ()) (Match r), Op (SetTooltip ()) r a impl) => Ref a -> impl+setTooltip = dispatch (undefined :: SetTooltip ())+data GetWhen a+getWhen :: (FindOp a (GetWhen ()) (Match r), Op (GetWhen ()) r a impl) => Ref a -> impl+getWhen = dispatch (undefined :: GetWhen ())+data SetWhen a+setWhen :: (FindOp a (SetWhen ()) (Match r), Op (SetWhen ()) r a impl) => Ref a -> impl+setWhen = dispatch (undefined :: SetWhen ())+data GetVisible a+getVisible :: (FindOp a (GetVisible ()) (Match r), Op (GetVisible ()) r a impl) => Ref a -> impl+getVisible = dispatch (undefined :: GetVisible ())+data GetVisibleR a+getVisibleR :: (FindOp a (GetVisibleR ()) (Match r), Op (GetVisibleR ()) r a impl) => Ref a -> impl+getVisibleR = dispatch (undefined :: GetVisibleR ())+data ShowWidgetSuper a+showWidgetSuper :: (FindOp a (ShowWidgetSuper ()) (Match r), Op (ShowWidgetSuper ()) r a impl) => Ref a -> impl+showWidgetSuper = dispatch (undefined :: ShowWidgetSuper ())+data ShowWidget a+showWidget :: (FindOp a (ShowWidget ()) (Match r), Op (ShowWidget ()) r a impl) => Ref a -> impl+showWidget = dispatch (undefined :: ShowWidget ())+data HideSuper a+hideSuper :: (FindOp a (HideSuper ()) (Match r), Op (HideSuper ()) r a impl) => Ref a -> impl+hideSuper = dispatch (undefined :: HideSuper ())+data Hide a+hide :: (FindOp a (Hide ()) (Match r), Op (Hide ()) r a impl) => Ref a -> impl+hide = dispatch (undefined :: Hide ())+data SetVisible a+setVisible :: (FindOp a (SetVisible ()) (Match r), Op (SetVisible ()) r a impl) => Ref a -> impl+setVisible = dispatch (undefined :: SetVisible ())+data ClearVisible a+clearVisible :: (FindOp a (ClearVisible ()) (Match r), Op (ClearVisible ()) r a impl) => Ref a -> impl+clearVisible = dispatch (undefined :: ClearVisible ())+data Active a+active :: (FindOp a (Active ()) (Match r), Op (Active ()) r a impl) => Ref a -> impl+active = dispatch (undefined :: Active ())+data ActiveR a+activeR :: (FindOp a (ActiveR ()) (Match r), Op (ActiveR ()) r a impl) => Ref a -> impl+activeR = dispatch (undefined :: ActiveR ())+data Activate a+activate :: (FindOp a (Activate ()) (Match r), Op (Activate ()) r a impl) => Ref a -> impl+activate = dispatch (undefined :: Activate ())+data Deactivate a+deactivate :: (FindOp a (Deactivate ()) (Match r), Op (Deactivate ()) r a impl) => Ref a -> impl+deactivate = dispatch (undefined :: Deactivate ())+data GetOutput a+getOutput :: (FindOp a (GetOutput ()) (Match r), Op (GetOutput ()) r a impl) => Ref a -> impl+getOutput = dispatch (undefined :: GetOutput ())+data SetOutput a+setOutput :: (FindOp a (SetOutput ()) (Match r), Op (SetOutput ()) r a impl) => Ref a -> impl+setOutput = dispatch (undefined :: SetOutput ())+data ClearOutput a+clearOutput :: (FindOp a (ClearOutput ()) (Match r), Op (ClearOutput ()) r a impl) => Ref a -> impl+clearOutput = dispatch (undefined :: ClearOutput ())+data Takesevents a+takesevents :: (FindOp a (Takesevents ()) (Match r), Op (Takesevents ()) r a impl) => Ref a -> impl+takesevents = dispatch (undefined :: Takesevents ())+data SetChanged a+setChanged :: (FindOp a (SetChanged ()) (Match r), Op (SetChanged ()) r a impl) => Ref a -> impl+setChanged = dispatch (undefined :: SetChanged ())+data ClearChanged a+clearChanged :: (FindOp a (ClearChanged ()) (Match r), Op (ClearChanged ()) r a impl) => Ref a -> impl+clearChanged = dispatch (undefined :: ClearChanged ())+data SetActive a+setActive :: (FindOp a (SetActive ()) (Match r), Op (SetActive ()) r a impl) => Ref a -> impl+setActive = dispatch (undefined :: SetActive ())+data ClearActive a+clearActive :: (FindOp a (ClearActive ()) (Match r), Op (ClearActive ()) r a impl) => Ref a -> impl+clearActive = dispatch (undefined :: ClearActive ())+data TakeFocus a+takeFocus :: (FindOp a (TakeFocus ()) (Match r), Op (TakeFocus ()) r a impl) => Ref a -> impl+takeFocus = dispatch (undefined :: TakeFocus ())+data SetVisibleFocus a+setVisibleFocus :: (FindOp a (SetVisibleFocus ()) (Match r), Op (SetVisibleFocus ()) r a impl) => Ref a -> impl+setVisibleFocus = dispatch (undefined :: SetVisibleFocus ())+data ClearVisibleFocus a+clearVisibleFocus :: (FindOp a (ClearVisibleFocus ()) (Match r), Op (ClearVisibleFocus ()) r a impl) => Ref a -> impl+clearVisibleFocus = dispatch (undefined :: ClearVisibleFocus ())+data ModifyVisibleFocus a+modifyVisibleFocus :: (FindOp a (ModifyVisibleFocus ()) (Match r), Op (ModifyVisibleFocus ()) r a impl) => Ref a -> impl+modifyVisibleFocus = dispatch (undefined :: ModifyVisibleFocus ())+data GetVisibleFocus a+getVisibleFocus :: (FindOp a (GetVisibleFocus ()) (Match r), Op (GetVisibleFocus ()) r a impl) => Ref a -> impl+getVisibleFocus = dispatch (undefined :: GetVisibleFocus ())+data Contains a+contains :: (FindOp a (Contains ()) (Match r), Op (Contains ()) r a impl) => Ref a -> impl+contains = dispatch (undefined :: Contains ())+data Inside a+inside :: (FindOp a (Inside ()) (Match r), Op (Inside ()) r a impl) => Ref a -> impl+inside = dispatch (undefined :: Inside ())+data Redraw a+redraw :: (FindOp a (Redraw ()) (Match r), Op (Redraw ()) r a impl) => Ref a -> impl+redraw = dispatch (undefined :: Redraw ())+data RedrawLabel a+redrawLabel :: (FindOp a (RedrawLabel ()) (Match r), Op (RedrawLabel ()) r a impl) => Ref a -> impl+redrawLabel = dispatch (undefined :: RedrawLabel ())+data GetDamage a+getDamage :: (FindOp a (GetDamage ()) (Match r), Op (GetDamage ()) r a impl) => Ref a -> impl+getDamage = dispatch (undefined :: GetDamage ())+data ClearDamageWithBitmask a+clearDamageWithBitmask :: (FindOp a (ClearDamageWithBitmask ()) (Match r), Op (ClearDamageWithBitmask ()) r a impl) => Ref a -> impl+clearDamageWithBitmask = dispatch (undefined :: ClearDamageWithBitmask ())+data ClearDamage a+clearDamage :: (FindOp a (ClearDamage ()) (Match r), Op (ClearDamage ()) r a impl) => Ref a -> impl+clearDamage = dispatch (undefined :: ClearDamage ())+data GetDamageWithText a+getDamageWithText :: (FindOp a (GetDamageWithText ()) (Match r), Op (GetDamageWithText ()) r a impl) => Ref a -> impl+getDamageWithText = dispatch (undefined :: GetDamageWithText ())+data GetDamageInsideWidget a+getDamageInsideWidget :: (FindOp a (GetDamageInsideWidget ()) (Match r), Op (GetDamageInsideWidget ()) r a impl) => Ref a -> impl+getDamageInsideWidget = dispatch (undefined :: GetDamageInsideWidget ())+data MeasureLabel a+measureLabel :: (FindOp a (MeasureLabel ()) (Match r), Op (MeasureLabel ()) r a impl) => Ref a -> impl+measureLabel = dispatch (undefined :: MeasureLabel ())+data GetWindow a+getWindow :: (FindOp a (GetWindow ()) (Match r), Op (GetWindow ()) r a impl) => Ref a -> impl+getWindow = dispatch (undefined :: GetWindow ())+data GetTopWindow a+getTopWindow :: (FindOp a (GetTopWindow ()) (Match r), Op (GetTopWindow ()) r a impl) => Ref a -> impl+getTopWindow = dispatch (undefined :: GetTopWindow ())+data GetTopWindowOffset a+getTopWindowOffset :: (FindOp a (GetTopWindowOffset ()) (Match r), Op (GetTopWindowOffset ()) r a impl) => Ref a -> impl+getTopWindowOffset = dispatch (undefined :: GetTopWindowOffset ())+data ResizeSuper a+resizeSuper :: (FindOp a (ResizeSuper ()) (Match r), Op (ResizeSuper ()) r a impl) => Ref a -> impl+resizeSuper = dispatch (undefined :: ResizeSuper ())+data Resize a+resize :: (FindOp a (Resize ()) (Match r), Op (Resize ()) r a impl) => Ref a -> impl+resize = dispatch (undefined :: Resize ())+data SetCallback a+setCallback :: forall a r impl.(FindOp a (SetCallback ()) (Match r), Op (SetCallback ()) r a impl) => Ref a -> impl+setCallback = dispatch (undefined :: SetCallback ())+data DrawBox a+drawBox :: (FindOp a (DrawBox ()) (Match r), Op (DrawBox ()) r a impl) => Ref a -> impl+drawBox = dispatch (undefined :: DrawBox ())+data DrawBoxWithBoxtype a+drawBoxWithBoxtype :: (FindOp a (DrawBoxWithBoxtype ()) (Match r), Op (DrawBoxWithBoxtype ()) r a impl) => Ref a -> impl+drawBoxWithBoxtype = dispatch (undefined :: DrawBoxWithBoxtype ())+data DrawBackdrop a+drawBackdrop :: (FindOp a (DrawBackdrop ()) (Match r), Op (DrawBackdrop ()) r a impl) => Ref a -> impl+drawBackdrop = dispatch (undefined :: DrawBackdrop ())+data DrawFocus a+drawFocus :: (FindOp a (DrawFocus ()) (Match r), Op (DrawFocus ()) r a impl) => Ref a -> impl+drawFocus = dispatch (undefined :: DrawFocus ())++-- * Group+data CGroup parent+type Group = CGroup Widget+type GroupFuncs =+  (Destroy+  (DrawChild+  (DrawChildren+  (DrawOutsideLabel+  (UpdateChild+  (Begin+  (End+  (Find+  (Add+  (Insert+  (RemoveIndex+  (RemoveWidget+  (Clear+  (SetResizable+  (SetNotResizable+  (GetResizable+  (AddResizable+  (InitSizes+  (Children+  (SetClipChildren+  (ClipChildren+  (Focus+  (DdfdesignKludge+  (InsertWithBefore+  (GetArray+  (GetChild+  ()))))))))))))))))))))))))))+instance Functions Group GroupFuncs++data DrawChild a+drawChild :: (FindOp a (DrawChild ()) (Match r), Op (DrawChild ()) r a impl) => Ref a -> impl+drawChild = dispatch (undefined :: DrawChild ())+data DrawChildren a+drawChildren :: (FindOp a (DrawChildren ()) (Match r), Op (DrawChildren ()) r a impl) => Ref a -> impl+drawChildren = dispatch (undefined :: DrawChildren ())+data DrawOutsideLabel a+drawOutsideLabel :: (FindOp a (DrawOutsideLabel ()) (Match r), Op (DrawOutsideLabel ()) r a impl) => Ref a -> impl+drawOutsideLabel = dispatch (undefined :: DrawOutsideLabel ())+data UpdateChild a+updateChild :: (FindOp a (UpdateChild ()) (Match r), Op (UpdateChild ()) r a impl) => Ref a -> impl+updateChild = dispatch (undefined :: UpdateChild ())+data Begin a+begin :: (FindOp a (Begin ()) (Match r), Op (Begin ()) r a impl) => Ref a -> impl+begin = dispatch (undefined :: Begin ())+data End a+end :: (FindOp a (End ()) (Match r), Op (End ()) r a impl) => Ref a -> impl+end = dispatch (undefined :: End ())+data Find a+find :: (FindOp a (Find ()) (Match r), Op (Find ()) r a impl) => Ref a -> impl+find = dispatch (undefined :: Find ())+data Add a+add :: (FindOp a (Add ()) (Match r), Op (Add ()) r a impl) => Ref a -> impl+add = dispatch (undefined :: Add ())+data Insert a+insert :: (FindOp a (Insert ()) (Match r), Op (Insert ()) r a impl) => Ref a -> impl+insert = dispatch (undefined :: Insert ())+data RemoveIndex a+removeIndex :: (FindOp a (RemoveIndex ()) (Match r), Op (RemoveIndex ()) r a impl) => Ref a -> impl+removeIndex = dispatch (undefined :: RemoveIndex ())+data RemoveWidget a+removeWidget :: (FindOp a (RemoveWidget ()) (Match r), Op (RemoveWidget ()) r a impl) => Ref a -> impl+removeWidget = dispatch (undefined :: RemoveWidget ())+data Clear a+clear :: (FindOp a (Clear ()) (Match r), Op (Clear ()) r a impl) => Ref a -> impl+clear = dispatch (undefined :: Clear ())+data SetResizable a+setResizable :: (FindOp a (SetResizable ()) (Match r), Op (SetResizable ()) r a impl) => Ref a -> impl+setResizable = dispatch (undefined :: SetResizable ())+data SetNotResizable a+setNotResizable :: (FindOp a (SetNotResizable ()) (Match r), Op (SetNotResizable ()) r a impl) => Ref a -> impl+setNotResizable = dispatch (undefined :: SetNotResizable ())+data GetResizable a+getResizable :: (FindOp a (GetResizable ()) (Match r), Op (GetResizable ()) r a impl) => Ref a -> impl+getResizable = dispatch (undefined :: GetResizable ())+data AddResizable a+addResizable :: (FindOp a (AddResizable ()) (Match r), Op (AddResizable ()) r a impl) => Ref a -> impl+addResizable = dispatch (undefined :: AddResizable ())+data InitSizes a+initSizes :: (FindOp a (InitSizes ()) (Match r), Op (InitSizes ()) r a impl) => Ref a -> impl+initSizes = dispatch (undefined :: InitSizes ())+data Children a+children :: (FindOp a (Children ()) (Match r), Op (Children ()) r a impl) => Ref a -> impl+children = dispatch (undefined :: Children ())+data SetClipChildren a+setClipChildren :: (FindOp a (SetClipChildren ()) (Match r), Op (SetClipChildren ()) r a impl) => Ref a -> impl+setClipChildren = dispatch (undefined :: SetClipChildren ())+data ClipChildren a+clipChildren :: (FindOp a (ClipChildren ()) (Match r), Op (ClipChildren ()) r a impl) => Ref a -> impl+clipChildren = dispatch (undefined :: ClipChildren ())+data Focus a+focus :: (FindOp a (Focus ()) (Match r), Op (Focus ()) r a impl) => Ref a -> impl+focus = dispatch (undefined :: Focus ())+data DdfdesignKludge a+ddfdesignKludge :: (FindOp a (DdfdesignKludge ()) (Match r), Op (DdfdesignKludge ()) r a impl) => Ref a -> impl+ddfdesignKludge = dispatch (undefined :: DdfdesignKludge ())+data InsertWithBefore a+insertWithBefore :: (FindOp a (InsertWithBefore ()) (Match r), Op (InsertWithBefore ()) r a impl) => Ref a -> impl+insertWithBefore = dispatch (undefined :: InsertWithBefore ())+data GetArray a+getArray :: (FindOp a (GetArray ()) (Match r), Op (GetArray ()) r a impl) => Ref a -> impl+getArray = dispatch (undefined :: GetArray ())+data GetChild a+getChild :: (FindOp a (GetChild ()) (Match r), Op (GetChild ()) r a impl) => Ref a -> impl+getChild = dispatch (undefined :: GetChild ())++data CWindow parent+type Window = CWindow Group+type WindowFuncs =+  (Destroy+      (DrawSuper+      (HandleSuper+      (Resize+      (ResizeSuper+      (ShowWidget+      (ShowWidgetSuper+      (FlushSuper+      (Changed+      (MakeFullscreen+      (FullscreenOff+      (SetBorder+      (ClearBorder+      (GetBorder+      (SetOverride+      (GetOverride+      (SetModal+      (GetModal+      (SetNonModal+      (NonModal+      (SetMenuWindow+      (GetMenuWindow+      (SetTooltipWindow+      (GetTooltipWindow+      (HotSpot+      (FreePosition+      (SizeRange+      (SizeRangeWithArgs+      (GetIconlabel+      (SetIconlabel+      (SetLabelWithIconlabel+      (GetXclass+      (SetXclass+      (GetIcon+      (SetIcon+      (Shown+      (Iconize+      (GetXRoot+      (GetYRoot+      (MakeCurrent+      (SetCursor+      (SetCursorWithFgBg+      (SetDefaultCursor+      (SetDefaultCursorWithFgBg+      (GetDecoratedW+      (GetDecoratedH+      (WaitForExpose+      ())))))))))))))))))))))))))))))))))))))))))))))))+instance Functions Window WindowFuncs++data DrawSuper a+drawSuper :: (FindOp a (DrawSuper ()) (Match r), Op (DrawSuper ()) r a impl) => Ref a -> impl+drawSuper = dispatch (undefined :: DrawSuper ())+data HandleSuper a+handleSuper :: (FindOp a (HandleSuper ()) (Match r), Op (HandleSuper ()) r a impl) => Ref a -> impl+handleSuper = dispatch (undefined :: HandleSuper ())+data FlushSuper a+flushSuper :: (FindOp a (FlushSuper ()) (Match r), Op (FlushSuper ()) r a impl) => Ref a -> impl+flushSuper = dispatch (undefined :: FlushSuper ())+data Changed a+changed :: (FindOp a (Changed ()) (Match r), Op (Changed ()) r a impl) => Ref a -> impl+changed = dispatch (undefined :: Changed ())+data MakeFullscreen a+makeFullscreen :: (FindOp a (MakeFullscreen ()) (Match r), Op (MakeFullscreen ()) r a impl) => Ref a -> impl+makeFullscreen = dispatch (undefined :: MakeFullscreen ())+data FullscreenOff a+fullscreenOff :: (FindOp a (FullscreenOff ()) (Match r), Op (FullscreenOff ()) r a impl) => Ref a -> impl+fullscreenOff = dispatch (undefined :: FullscreenOff ())+data SetBorder a+setBorder :: (FindOp a (SetBorder ()) (Match r), Op (SetBorder ()) r a impl) => Ref a -> impl+setBorder = dispatch (undefined :: SetBorder ())+data ClearBorder a+clearBorder :: (FindOp a (ClearBorder ()) (Match r), Op (ClearBorder ()) r a impl) => Ref a -> impl+clearBorder = dispatch (undefined :: ClearBorder ())+data GetBorder a+getBorder :: (FindOp a (GetBorder ()) (Match r), Op (GetBorder ()) r a impl) => Ref a -> impl+getBorder = dispatch (undefined :: GetBorder ())+data SetOverride a+setOverride :: (FindOp a (SetOverride ()) (Match r), Op (SetOverride ()) r a impl) => Ref a -> impl+setOverride = dispatch (undefined :: SetOverride ())+data GetOverride a+getOverride :: (FindOp a (GetOverride ()) (Match r), Op (GetOverride ()) r a impl) => Ref a -> impl+getOverride = dispatch (undefined :: GetOverride ())+data SetModal a+setModal :: (FindOp a (SetModal ()) (Match r), Op (SetModal ()) r a impl) => Ref a -> impl+setModal = dispatch (undefined :: SetModal ())+data GetModal a+getModal :: (FindOp a (GetModal ()) (Match r), Op (GetModal ()) r a impl) => Ref a -> impl+getModal = dispatch (undefined :: GetModal ())+data SetNonModal a+setNonModal :: (FindOp a (SetNonModal ()) (Match r), Op (SetNonModal ()) r a impl) => Ref a -> impl+setNonModal = dispatch (undefined :: SetNonModal ())+data NonModal a+nonModal :: (FindOp a (NonModal ()) (Match r), Op (NonModal ()) r a impl) => Ref a -> impl+nonModal = dispatch (undefined :: NonModal ())+data SetMenuWindow a+setMenuWindow :: (FindOp a (SetMenuWindow ()) (Match r), Op (SetMenuWindow ()) r a impl) => Ref a -> impl+setMenuWindow = dispatch (undefined :: SetMenuWindow ())+data GetMenuWindow a+getMenuWindow :: (FindOp a (GetMenuWindow ()) (Match r), Op (GetMenuWindow ()) r a impl) => Ref a -> impl+getMenuWindow = dispatch (undefined :: GetMenuWindow ())+data SetTooltipWindow a+setTooltipWindow :: (FindOp a (SetTooltipWindow ()) (Match r), Op (SetTooltipWindow ()) r a impl) => Ref a -> impl+setTooltipWindow = dispatch (undefined :: SetTooltipWindow ())+data GetTooltipWindow a+getTooltipWindow :: (FindOp a (GetTooltipWindow ()) (Match r), Op (GetTooltipWindow ()) r a impl) => Ref a -> impl+getTooltipWindow = dispatch (undefined :: GetTooltipWindow ())+data HotSpot a+hotSpot :: (FindOp a (HotSpot ()) (Match r), Op (HotSpot ()) r a impl) => Ref a -> impl+hotSpot = dispatch (undefined :: HotSpot ())+data FreePosition a+freePosition :: (FindOp a (FreePosition ()) (Match r), Op (FreePosition ()) r a impl) => Ref a -> impl+freePosition = dispatch (undefined :: FreePosition ())+data SizeRange a+sizeRange :: (FindOp a (SizeRange ()) (Match r), Op (SizeRange ()) r a impl) => Ref a -> impl+sizeRange = dispatch (undefined :: SizeRange ())+data SizeRangeWithArgs a+sizeRangeWithArgs :: (FindOp a (SizeRangeWithArgs ()) (Match r), Op (SizeRangeWithArgs ()) r a impl) => Ref a -> impl+sizeRangeWithArgs = dispatch (undefined :: SizeRangeWithArgs ())+data GetIconlabel a+getIconlabel :: (FindOp a (GetIconlabel ()) (Match r), Op (GetIconlabel ()) r a impl) => Ref a -> impl+getIconlabel = dispatch (undefined :: GetIconlabel ())+data SetIconlabel a+setIconlabel :: (FindOp a (SetIconlabel ()) (Match r), Op (SetIconlabel ()) r a impl) => Ref a -> impl+setIconlabel = dispatch (undefined :: SetIconlabel ())+data SetLabelWithIconlabel a+setLabelWithIconlabel :: (FindOp a (SetLabelWithIconlabel ()) (Match r), Op (SetLabelWithIconlabel ()) r a impl) => Ref a -> impl+setLabelWithIconlabel = dispatch (undefined :: SetLabelWithIconlabel ())+data GetXclass a+getXclass :: (FindOp a (GetXclass ()) (Match r), Op (GetXclass ()) r a impl) => Ref a -> impl+getXclass = dispatch (undefined :: GetXclass ())+data SetXclass a+setXclass :: (FindOp a (SetXclass ()) (Match r), Op (SetXclass ()) r a impl) => Ref a -> impl+setXclass = dispatch (undefined :: SetXclass ())+data GetIcon a+getIcon :: (FindOp a (GetIcon ()) (Match r), Op (GetIcon ()) r a impl) => Ref a -> impl+getIcon = dispatch (undefined :: GetIcon ())+data SetIcon a+setIcon :: (FindOp a (SetIcon ()) (Match r), Op (SetIcon ()) r a impl) => Ref a -> impl+setIcon = dispatch (undefined :: SetIcon ())+data Shown a+shown :: (FindOp a (Shown ()) (Match r), Op (Shown ()) r a impl) => Ref a -> impl+shown = dispatch (undefined :: Shown ())+data Iconize a+iconize :: (FindOp a (Iconize ()) (Match r), Op (Iconize ()) r a impl) => Ref a -> impl+iconize = dispatch (undefined :: Iconize ())+data GetXRoot a+getXRoot :: (FindOp a (GetXRoot ()) (Match r), Op (GetXRoot ()) r a impl) => Ref a -> impl+getXRoot = dispatch (undefined :: GetXRoot ())+data GetYRoot a+getYRoot :: (FindOp a (GetYRoot ()) (Match r), Op (GetYRoot ()) r a impl) => Ref a -> impl+getYRoot = dispatch (undefined :: GetYRoot ())+data MakeCurrent a+makeCurrent :: (FindOp a (MakeCurrent ()) (Match r), Op (MakeCurrent ()) r a impl) => Ref a -> impl+makeCurrent = dispatch (undefined :: MakeCurrent ())+data SetCursor a+setCursor :: (FindOp a (SetCursor ()) (Match r), Op (SetCursor ()) r a impl) => Ref a -> impl+setCursor = dispatch (undefined :: SetCursor ())+data SetCursorWithFgBg a+setCursorWithFgBg :: (FindOp a (SetCursorWithFgBg ()) (Match r), Op (SetCursorWithFgBg ()) r a impl) => Ref a -> impl+setCursorWithFgBg = dispatch (undefined :: SetCursorWithFgBg ())+data SetDefaultCursor a+setDefaultCursor :: (FindOp a (SetDefaultCursor ()) (Match r), Op (SetDefaultCursor ()) r a impl) => Ref a -> impl+setDefaultCursor = dispatch (undefined :: SetDefaultCursor ())+data SetDefaultCursorWithFgBg a+setDefaultCursorWithFgBg :: (FindOp a (SetDefaultCursorWithFgBg ()) (Match r), Op (SetDefaultCursorWithFgBg ()) r a impl) => Ref a -> impl+setDefaultCursorWithFgBg = dispatch (undefined :: SetDefaultCursorWithFgBg ())+data GetDecoratedW a+getDecoratedW :: (FindOp a (GetDecoratedW ()) (Match r), Op (GetDecoratedW ()) r a impl) => Ref a -> impl+getDecoratedW = dispatch (undefined :: GetDecoratedW ())+data GetDecoratedH a+getDecoratedH :: (FindOp a (GetDecoratedH ()) (Match r), Op (GetDecoratedH ()) r a impl) => Ref a -> impl+getDecoratedH = dispatch (undefined :: GetDecoratedH ())+data WaitForExpose a+waitForExpose :: (FindOp a (WaitForExpose ()) (Match r), Op (WaitForExpose ()) r a impl) => Ref a -> impl+waitForExpose = dispatch (undefined :: WaitForExpose ())++data CSingleWindow parent+type SingleWindow = CSingleWindow Window+type SingleWindowFuncs =+  (Destroy+  (DrawSuper+  (HandleSuper+  (ResizeSuper+  (ShowWidgetSuper+  (HideSuper+  (Hide+  (FlushSuper+  (ShowWidget+  (Handle+  (Resize+  ())))))))))))+instance Functions SingleWindow SingleWindowFuncs+++data CDoubleWindow parent+type DoubleWindow = CDoubleWindow Window+type DoubleWindowFuncs =+  (Destroy+  (DrawSuper+  (HandleSuper+  (ResizeSuper+  (ShowWidgetSuper+  (HideSuper+  (Hide+  (FlushSuper+  (ShowWidget+  (Handle+  (Resize+  ())))))))))))+instance Functions DoubleWindow DoubleWindowFuncs+++data COverlayWindow parent+type OverlayWindow = COverlayWindow DoubleWindow+type OverlayWindowFuncs =+  (Destroy+  (ShowWidget+  (Flush+  (Resize+  (Hide+  (CanDoOverlay+  (RedrawOverlay+  ())))))))+instance Functions OverlayWindow OverlayWindowFuncs+++data CanDoOverlay a+canDoOverlay :: (FindOp a (CanDoOverlay ()) (Match r), Op (CanDoOverlay ()) r a impl) => Ref a -> impl+canDoOverlay = dispatch (undefined :: CanDoOverlay ())++data RedrawOverlay a+redrawOverlay :: (FindOp a (RedrawOverlay ()) (Match r), Op (RedrawOverlay ()) r a impl) => Ref a -> impl+redrawOverlay = dispatch (undefined :: RedrawOverlay ())++data Flush a+flush :: (FindOp a (Flush ()) (Match r), Op (Flush ()) r a impl) => Ref a -> impl+flush = dispatch (undefined :: Flush ())++data CButton parent+type Button = CButton Widget+type ButtonFuncs =+  (Destroy+  (DrawSuper+  (HandleSuper+  (Handle+  (ResizeSuper+  (Resize+  (HideSuper+  (Hide+  (ShowWidgetSuper+  (ShowWidget+  (GetValue+  (SetValue+  (Set+  (Clear+  (Setonly+  (GetShortcut+  (SetShortcut+  (GetDownBox+  (SetDownBox+  (GetDownColor+  (SetDownColor+  (DrawBox+  (DrawBackdrop+  (DrawFocus+  ()))))))))))))))))))))))))+instance Functions Button ButtonFuncs++data GetValue a+getValue :: (FindOp a (GetValue ()) (Match r), Op (GetValue ()) r a impl) => Ref a -> impl+getValue = dispatch (undefined :: GetValue ())+data SetValue a+setValue :: (FindOp a (SetValue ()) (Match r), Op (SetValue ()) r a impl) => Ref a -> impl+setValue = dispatch (undefined :: SetValue ())+data Set a+set :: (FindOp a (Set ()) (Match r), Op (Set ()) r a impl) => Ref a -> impl+set = dispatch (undefined :: Set ())+data Setonly a+setonly :: (FindOp a (Setonly ()) (Match r), Op (Setonly ()) r a impl) => Ref a -> impl+setonly = dispatch (undefined :: Setonly ())+data GetShortcut a+getShortcut :: (FindOp a (GetShortcut ()) (Match r), Op (GetShortcut ()) r a impl) => Ref a -> impl+getShortcut = dispatch (undefined :: GetShortcut ())+data SetShortcut a+setShortcut :: (FindOp a (SetShortcut ()) (Match r), Op (SetShortcut ()) r a impl) => Ref a -> impl+setShortcut = dispatch (undefined :: SetShortcut ())+data GetDownBox a+getDownBox :: (FindOp a (GetDownBox ()) (Match r), Op (GetDownBox ()) r a impl) => Ref a -> impl+getDownBox = dispatch (undefined :: GetDownBox ())+data SetDownBox a+setDownBox :: (FindOp a (SetDownBox ()) (Match r), Op (SetDownBox ()) r a impl) => Ref a -> impl+setDownBox = dispatch (undefined :: SetDownBox ())+data GetDownColor a+getDownColor :: (FindOp a (GetDownColor ()) (Match r), Op (GetDownColor ()) r a impl) => Ref a -> impl+getDownColor = dispatch (undefined :: GetDownColor ())+data SetDownColor a+setDownColor :: (FindOp a (SetDownColor ()) (Match r), Op (SetDownColor ()) r a impl) => Ref a -> impl+setDownColor = dispatch (undefined :: SetDownColor ())++data CLightButton parent+type LightButtonFuncs =+  (Destroy ())+type LightButton = CLightButton Button+instance Functions LightButton LightButtonFuncs++data CRadioLightButton parent+type RadioLightButton = CRadioLightButton LightButton+instance Functions RadioLightButton ()++data CCheckButton parent+type CheckButtonFuncs =+  (Destroy ())+type CheckButton = CCheckButton Button+instance Functions CheckButton CheckButtonFuncs++data CReturnButton parent+type ReturnButton = CReturnButton Button+type ReturnButtonFuncs =+  (Destroy+  (Handle ()))+instance Functions ReturnButton ReturnButtonFuncs++data CRoundButton parent+type RoundButton = CRoundButton Button+type RoundButtonFuncs =+  (Destroy ())+instance Functions RoundButton RoundButtonFuncs++data CRepeatButton parent+type RepeatButton = CRepeatButton Button+type RepeatButtonFuncs =+  (Destroy+  (Handle+  (Deactivate+  ())))+instance Functions RepeatButton RepeatButtonFuncs+++data CToggleButton parent+type ToggleButton = CToggleButton Button+type ToggleButtonFuncs =+  (Destroy ())+instance Functions ToggleButton ToggleButtonFuncs++data CValuator parent+type Valuator = CValuator Widget+type ValuatorFuncs =+  (Destroy+  (Handle+  (ResizeSuper+  (Resize+  (Bounds+  (GetMinimum+  (SetMinimum+  (GetMaximum+  (SetMaximum+  (Range+  (SetStep+  (GetStep+  (Precision+  (GetValue+  (SetValue+  (Format+  (Round+  (Clamp+  (Increment+  ())))))))))))))))))))+instance Functions Valuator ValuatorFuncs++data Bounds a+bounds :: (FindOp a (Bounds ()) (Match r), Op (Bounds ()) r a impl) => Ref a -> impl+bounds = dispatch (undefined :: Bounds())+data GetMinimum a+getMinimum :: (FindOp a (GetMinimum ()) (Match r), Op (GetMinimum ()) r a impl) => Ref a -> impl+getMinimum = dispatch (undefined :: GetMinimum())+data SetMinimum a+setMinimum :: (FindOp a (SetMinimum ()) (Match r), Op (SetMinimum ()) r a impl) => Ref a -> impl+setMinimum = dispatch (undefined :: SetMinimum())+data GetMaximum a+getMaximum :: (FindOp a (GetMaximum ()) (Match r), Op (GetMaximum ()) r a impl) => Ref a -> impl+getMaximum = dispatch (undefined :: GetMaximum())+data SetMaximum a+setMaximum :: (FindOp a (SetMaximum ()) (Match r), Op (SetMaximum ()) r a impl) => Ref a -> impl+setMaximum = dispatch (undefined :: SetMaximum())+data Range a+range :: (FindOp a (Range ()) (Match r), Op (Range ()) r a impl) => Ref a -> impl+range = dispatch (undefined :: Range())+data SetStep a+setStep :: (FindOp a (SetStep ()) (Match r), Op (SetStep ()) r a impl) => Ref a -> impl+setStep = dispatch (undefined :: SetStep())+data GetStep a+getStep :: (FindOp a (GetStep ()) (Match r), Op (GetStep ()) r a impl) => Ref a -> impl+getStep = dispatch (undefined :: GetStep())+data Precision a+precision :: (FindOp a (Precision ()) (Match r), Op (Precision ()) r a impl) => Ref a -> impl+precision = dispatch (undefined :: Precision())+data Format a+format :: (FindOp a (Format ()) (Match r), Op (Format ()) r a impl) => Ref a -> impl+format = dispatch (undefined :: Format())+data Round a+round :: (FindOp a (Round ()) (Match r), Op (Round ()) r a impl) => Ref a -> impl+round = dispatch (undefined :: Round())+data Clamp a+clamp :: (FindOp a (Clamp ()) (Match r), Op (Clamp ()) r a impl) => Ref a -> impl+clamp = dispatch (undefined :: Clamp())+data Increment a+increment :: (FindOp a (Increment ()) (Match r), Op (Increment ()) r a impl) => Ref a -> impl+increment = dispatch (undefined :: Increment())++data CSlider parent+type Slider = CSlider Valuator+type SliderFuncs =+  (Destroy+  (Handle+  (Bounds+  (Scrollvalue+  (SetSliderSize+  (GetSliderSize+  (GetSlider+  (SetSlider+  ()))))))))+instance Functions Slider SliderFuncs++data Scrollvalue a+scrollvalue :: (FindOp a (Scrollvalue ()) (Match r), Op (Scrollvalue ()) r a impl) => Ref a -> impl+scrollvalue = dispatch (undefined :: Scrollvalue ())+data SetSliderSize a+setSliderSize :: (FindOp a (SetSliderSize ()) (Match r), Op (SetSliderSize ()) r a impl) => Ref a -> impl+setSliderSize = dispatch (undefined :: SetSliderSize ())+data GetSliderSize a+getSliderSize :: (FindOp a (GetSliderSize ()) (Match r), Op (GetSliderSize ()) r a impl) => Ref a -> impl+getSliderSize = dispatch (undefined :: GetSliderSize ())+data GetSlider a+getSlider :: (FindOp a (GetSlider ()) (Match r), Op (GetSlider ()) r a impl) => Ref a -> impl+getSlider = dispatch (undefined :: GetSlider ())+data SetSlider a+setSlider :: (FindOp a (SetSlider ()) (Match r), Op (SetSlider ()) r a impl) => Ref a -> impl+setSlider = dispatch (undefined :: SetSlider ())++data CFillSlider parent+type FillSlider = CFillSlider Slider+instance Functions FillSlider ()++data CHorSlider parent+type HorSlider = CHorSlider Slider+instance Functions HorSlider ()++data CHorFillSlider parent+type HorFillSlider = CHorFillSlider Slider+instance Functions HorFillSlider ()++data CNiceSlider parent+type NiceSlider = CNiceSlider Slider+instance Functions NiceSlider ()++data CHorNiceSlider parent+type HorNiceSlider = CHorNiceSlider Slider+instance Functions HorNiceSlider ()++data CMenuItem parent+type MenuItem = CMenuItem Base+type MenuItemFuncs =+  (Destroy+  (NextWithStep+  (Next+  (GetFirst+  (GetLabel+  (SetLabel+  (SetLabelWithLabeltype+  (GetLabeltype+  (SetLabeltype+  (GetLabelcolor+  (SetLabelcolor+  (GetLabelfont+  (SetLabelfont+  (GetLabelsize+  (SetLabelsize+  (SetCallback+  (GetShortcut+  (SetShortcut+  (Submenu+  (Checkbox+  (Radio+  (GetValue+  (Set+  (Clear+  (Setonly+  (Visible+  (ShowWidget+  (Hide+  (Active+  (Activate+  (Deactivate+  (Activevisible+  (Measure+  (DrawWithT+  (Draw+  (GetFlags+  (SetFlags+  (GetText+  (Pulldown+  (Popup+  (TestShortcut+  (FindShortcut+  (DoCallback+  (Add+  (Insert+  (GetSize+  ()))))))))))))))))))))))))))))))))))))))))))))))+instance Functions MenuItem MenuItemFuncs++data NextWithStep a+nextWithStep :: (FindOp a (NextWithStep  ()) (Match r), Op (NextWithStep  ()) r a impl) => Ref a -> impl+nextWithStep = dispatch (undefined :: NextWithStep ())+data Next a+next :: (FindOp a (Next  ()) (Match r), Op (Next  ()) r a impl) => Ref a -> impl+next = dispatch (undefined :: Next ())+data GetFirst a+getFirst :: (FindOp a (GetFirst  ()) (Match r), Op (GetFirst  ()) r a impl) => Ref a -> impl+getFirst = dispatch (undefined :: GetFirst ())+data SetLabelWithLabeltype a+setLabelWithLabeltype :: (FindOp a (SetLabelWithLabeltype  ()) (Match r), Op (SetLabelWithLabeltype  ()) r a impl) => Ref a -> impl+setLabelWithLabeltype = dispatch (undefined :: SetLabelWithLabeltype ())+data Submenu a+submenu :: (FindOp a (Submenu  ()) (Match r), Op (Submenu  ()) r a impl) => Ref a -> impl+submenu = dispatch (undefined :: Submenu ())+data Checkbox a+checkbox :: (FindOp a (Checkbox  ()) (Match r), Op (Checkbox  ()) r a impl) => Ref a -> impl+checkbox = dispatch (undefined :: Checkbox ())+data Radio a+radio :: (FindOp a (Radio  ()) (Match r), Op (Radio  ()) r a impl) => Ref a -> impl+radio = dispatch (undefined :: Radio ())+data Visible a+visible :: (FindOp a (Visible  ()) (Match r), Op (Visible  ()) r a impl) => Ref a -> impl+visible = dispatch (undefined :: Visible ())+data Activevisible a+activevisible :: (FindOp a (Activevisible  ()) (Match r), Op (Activevisible  ()) r a impl) => Ref a -> impl+activevisible = dispatch (undefined :: Activevisible ())+data Measure a+measure :: (FindOp a (Measure  ()) (Match r), Op (Measure  ()) r a impl) => Ref a -> impl+measure = dispatch (undefined :: Measure ())+data DrawWithT a+drawWithT :: (FindOp a (DrawWithT  ()) (Match r), Op (DrawWithT  ()) r a impl) => Ref a -> impl+drawWithT = dispatch (undefined :: DrawWithT ())+data Draw a+draw :: (FindOp a (Draw  ()) (Match r), Op (Draw  ()) r a impl) => Ref a -> impl+draw = dispatch (undefined :: Draw ())+data GetFlags a+getFlags :: (FindOp a (GetFlags  ()) (Match r), Op (GetFlags  ()) r a impl) => Ref a -> impl+getFlags = dispatch (undefined :: GetFlags ())+data SetFlags a+setFlags :: (FindOp a (SetFlags  ()) (Match r), Op (SetFlags  ()) r a impl) => Ref a -> impl+setFlags = dispatch (undefined :: SetFlags ())+data Pulldown a+pulldown :: (FindOp a (Pulldown  ()) (Match r), Op (Pulldown  ()) r a impl) => Ref a -> impl+pulldown = dispatch (undefined :: Pulldown ())+data Popup a+popup :: (FindOp a (Popup  ()) (Match r), Op (Popup  ()) r a impl) => Ref a -> impl+popup = dispatch (undefined :: Popup ())+data TestShortcut a+testShortcut :: (FindOp a (TestShortcut  ()) (Match r), Op (TestShortcut  ()) r a impl) => Ref a -> impl+testShortcut = dispatch (undefined :: TestShortcut ())+data FindShortcut a+findShortcut :: (FindOp a (FindShortcut  ()) (Match r), Op (FindShortcut  ()) r a impl) => Ref a -> impl+findShortcut = dispatch (undefined :: FindShortcut ())+data DoCallback a+doCallback :: (FindOp a (DoCallback  ()) (Match r), Op (DoCallback  ()) r a impl) => Ref a -> impl+doCallback = dispatch (undefined :: DoCallback ())+data GetSize a+getSize :: (FindOp a (GetSize  ()) (Match r), Op (GetSize  ()) r a impl) => Ref a -> impl+getSize = dispatch (undefined :: GetSize ())++data CMenuPrim parent+type MenuPrim = CMenuPrim Widget+type MenuPrimFuncs =+  (Destroy+  (HandleSuper+  (Handle+  (ResizeSuper+  (Resize+  (HideSuper+  (Hide+  (ShowWidgetSuper+  (ShowWidget+  (ItemPathname+  (ItemPathnameRecent+  (Picked+  (FindIndex+  (TestShortcut+  (Global+  (GetMenu+  (SetMenu+  (Copy+  (Insert+  (Add+  (AddName+  (GetSize+  (SetSize+  (Clear+  (ClearSubmenu+  (Replace+  (Remove+  (SetShortcut+  (SetMode+  (GetMode+  (Mvalue+  (GetValue+  (SetValue+  (GetText+  (GetTextWithIndex+  (GetTextfont+  (SetTextfont+  (GetTextsize+  (SetTextsize+  (GetTextcolor+  (SetTextcolor+  (GetDownBox+  (SetDownBox+  (GetDownColor+  (SetDownColor+  ())))))))))))))))))))))))))))))))))))))))))))))+instance Functions MenuPrim MenuPrimFuncs++data ItemPathname a+itemPathname :: (FindOp a (ItemPathname ()) (Match r), Op (ItemPathname ()) r a impl) => Ref a -> impl+itemPathname = dispatch (undefined :: ItemPathname ())+data ItemPathnameRecent a+itemPathnameRecent :: (FindOp a (ItemPathnameRecent ()) (Match r), Op (ItemPathnameRecent ()) r a impl) => Ref a -> impl+itemPathnameRecent = dispatch (undefined :: ItemPathnameRecent ())+data Picked a+picked :: (FindOp a (Picked ()) (Match r), Op (Picked ()) r a impl) => Ref a -> impl+picked = dispatch (undefined :: Picked ())+data FindIndex a+findIndex :: (FindOp a (FindIndex  ()) (Match r), Op (FindIndex  ()) r a impl) => Ref a -> impl+findIndex = dispatch (undefined :: FindIndex ())+data Global a+global :: (FindOp a (Global  ()) (Match r), Op (Global  ()) r a impl) => Ref a -> impl+global = dispatch (undefined :: Global ())+data GetMenu a+getMenu :: (FindOp a (GetMenu  ()) (Match r), Op (GetMenu  ()) r a impl) => Ref a -> impl+getMenu = dispatch (undefined :: GetMenu ())+data SetMenu a+setMenu :: (FindOp a (SetMenu  ()) (Match r), Op (SetMenu  ()) r a impl) => Ref a -> impl+setMenu = dispatch (undefined :: SetMenu ())+data Copy a+copy :: (FindOp a (Copy  ()) (Match r), Op (Copy  ()) r a impl) => Ref a -> impl+copy = dispatch (undefined :: Copy ())+data SetSize a+setSize :: (FindOp a (SetSize  ()) (Match r), Op (SetSize  ()) r a impl) => Ref a -> impl+setSize = dispatch (undefined :: SetSize ())+data ClearSubmenu a+clearSubmenu :: (FindOp a (ClearSubmenu  ()) (Match r), Op (ClearSubmenu  ()) r a impl) => Ref a -> impl+clearSubmenu = dispatch (undefined :: ClearSubmenu ())+data AddName a+addName :: (FindOp a (AddName  ()) (Match r), Op (AddName  ()) r a impl) => Ref a -> impl+addName = dispatch (undefined :: AddName ())+data Replace a+replace :: (FindOp a (Replace  ()) (Match r), Op (Replace  ()) r a impl) => Ref a -> impl+replace = dispatch (undefined :: Replace ())+data Remove a+remove :: (FindOp a (Remove  ()) (Match r), Op (Remove  ()) r a impl) => Ref a -> impl+remove = dispatch (undefined :: Remove ())+data SetMode a+setMode :: (FindOp a (SetMode  ()) (Match r), Op (SetMode  ()) r a impl) => Ref a -> impl+setMode = dispatch (undefined :: SetMode ())+data GetMode a+getMode :: (FindOp a (GetMode  ()) (Match r), Op (GetMode  ()) r a impl) => Ref a -> impl+getMode = dispatch (undefined :: GetMode ())+data Mvalue a+mvalue :: (FindOp a (Mvalue  ()) (Match r), Op (Mvalue  ()) r a impl) => Ref a -> impl+mvalue = dispatch (undefined :: Mvalue ())+data GetText a+getText :: (FindOp a (GetText  ()) (Match r), Op (GetText  ()) r a impl) => Ref a -> impl+getText = dispatch (undefined :: GetText ())+data GetTextWithIndex a+getTextWithIndex :: (FindOp a (GetTextWithIndex  ()) (Match r), Op (GetTextWithIndex  ()) r a impl) => Ref a -> impl+getTextWithIndex = dispatch (undefined :: GetTextWithIndex ())+data GetTextfont a+getTextfont :: (FindOp a (GetTextfont  ()) (Match r), Op (GetTextfont  ()) r a impl) => Ref a -> impl+getTextfont = dispatch (undefined :: GetTextfont ())+data SetTextfont a+setTextfont :: (FindOp a (SetTextfont  ()) (Match r), Op (SetTextfont  ()) r a impl) => Ref a -> impl+setTextfont = dispatch (undefined :: SetTextfont ())+data GetTextsize a+getTextsize :: (FindOp a (GetTextsize  ()) (Match r), Op (GetTextsize  ()) r a impl) => Ref a -> impl+getTextsize = dispatch (undefined :: GetTextsize ())+data SetTextsize a+setTextsize :: (FindOp a (SetTextsize  ()) (Match r), Op (SetTextsize  ()) r a impl) => Ref a -> impl+setTextsize = dispatch (undefined :: SetTextsize ())+data GetTextcolor a+getTextcolor :: (FindOp a (GetTextcolor  ()) (Match r), Op (GetTextcolor  ()) r a impl) => Ref a -> impl+getTextcolor = dispatch (undefined :: GetTextcolor ())+data SetTextcolor a+setTextcolor :: (FindOp a (SetTextcolor  ()) (Match r), Op (SetTextcolor  ()) r a impl) => Ref a -> impl+setTextcolor = dispatch (undefined :: SetTextcolor ())+data DownBox a+downBox :: (FindOp a (DownBox  ()) (Match r), Op (DownBox  ()) r a impl) => Ref a -> impl+downBox = dispatch (undefined :: DownBox ())++data CSysMenuBar parent+type SysMenuBar = CSysMenuBar MenuPrim+type SysMenuBarFuncs =+  (Destroy+  (GetMenu+  (SetMenu+  (Add+  (Insert+  (Remove+  (Replace+  (Clear+  (ClearSubmenu+  (Global+  (SetMode+  (GetMode+  (SetShortcut+  (Handle+  ()))))))))))))))+instance Functions SysMenuBar SysMenuBarFuncs++data CChoice parent+type Choice = CChoice MenuPrim+type ChoiceFuncs =+  (Destroy+  (Handle+  (GetValue+  (SetValue+  ()))))+instance Functions Choice ChoiceFuncs+++data CMenuButton parent+type MenuButton = CMenuButton MenuPrim+type MenuButtonFuncs =+  (Destroy+  (Handle+  (Popup+  ())))+instance Functions MenuButton MenuButtonFuncs++data CImage parent+type Image = CImage Base+type ImageFuncs =+  (Destroy+  (GetW+  (GetH+  (GetD+  (GetLd+  (GetCount+  (Copy+  (ColorAverage+  (Inactive+  (Desaturate+  (DrawResize+  (Draw+  (Uncache+  ())))))))))))))+instance Functions Image ImageFuncs++data GetD a+getD :: (FindOp a (GetD ()) (Match r), Op (GetD ()) r a impl) => Ref a -> impl+getD = dispatch (undefined :: GetD ())+data GetLd a+getLd :: (FindOp a (GetLd ()) (Match r), Op (GetLd ()) r a impl) => Ref a -> impl+getLd = dispatch (undefined :: GetLd ())+data GetCount a+getCount :: (FindOp a (GetCount ()) (Match r), Op (GetCount ()) r a impl) => Ref a -> impl+getCount = dispatch (undefined :: GetCount ())+data ColorAverage a+colorAverage :: (FindOp a (ColorAverage ()) (Match r), Op (ColorAverage ()) r a impl) => Ref a -> impl+colorAverage = dispatch (undefined :: ColorAverage ())+data Inactive a+inactive :: (FindOp a (Inactive ()) (Match r), Op (Inactive ()) r a impl) => Ref a -> impl+inactive = dispatch (undefined :: Inactive ())+data Desaturate a+desaturate :: (FindOp a (Desaturate ()) (Match r), Op (Desaturate ()) r a impl) => Ref a -> impl+desaturate = dispatch (undefined :: Desaturate ())+data DrawResize a+drawResize :: (FindOp a (DrawResize ()) (Match r), Op (DrawResize ()) r a impl) => Ref a -> impl+drawResize = dispatch (undefined :: DrawResize ())+data Uncache a+uncache :: (FindOp a (Uncache ()) (Match r), Op (Uncache ()) r a impl) => Ref a -> impl+uncache = dispatch (undefined :: Uncache ())++data CBitmap parent+type Bitmap = CBitmap Image+type BitmapFuncs =+  (Destroy+ (GetW+ (GetH+ (GetD+ (GetLd+ (GetCount+ (Copy+ (ColorAverage+ (Inactive+ (Desaturate+ (DrawResize+ (Draw+ (Uncache+ ())))))))))))))+instance Functions Bitmap BitmapFuncs++data CPixmap parent+type Pixmap = CPixmap Image+type PixmapFuncs =+  (Destroy+  (GetW+  (GetH+  (GetD+  (GetLd+  (GetCount+  (Copy+  (ColorAverage+  (Inactive+  (Desaturate+  (DrawResize+  (Draw+  (Uncache+  ())))))))))))))+instance Functions Pixmap PixmapFuncs++data CCopySurface parent+type CopySurface = CCopySurface Base+type CopySurfaceFuncs =+  (Destroy+  (ClassName+  (SetCurrent+  (Draw+  ()))))+instance Functions CopySurface CopySurfaceFuncs++data ClassName a+className :: (FindOp a (ClassName ()) (Match r), Op (ClassName ()) r a impl) => Ref a -> impl+className = dispatch (undefined :: ClassName ())+data SetCurrent a+setCurrent :: (FindOp a (SetCurrent ()) (Match r), Op (SetCurrent ()) r a impl) => Ref a -> impl+setCurrent = dispatch (undefined :: SetCurrent ())++data CImageSurface parent+type ImageSurface = CImageSurface Base+type ImageSurfaceFuncs =+  (Destroy+  (ClassName+  (SetCurrent+  (Draw+  ()))))+instance Functions ImageSurface ImageSurfaceFuncs+++data CAdjuster parent+type Adjuster = CAdjuster Valuator+type AdjusterFuncs =+  (Destroy+  (SetSoft+  (GetSoft+  ())))+instance Functions Adjuster AdjusterFuncs+++data SetSoft a+setSoft :: (FindOp a (SetSoft ()) (Match r), Op (SetSoft ()) r a impl) => Ref a -> impl+setSoft = dispatch (undefined :: SetSoft ())+data GetSoft a+getSoft :: (FindOp a (GetSoft ()) (Match r), Op (GetSoft ()) r a impl) => Ref a -> impl+getSoft = dispatch (undefined :: GetSoft ())++data CDial parent+type Dial = CDial Valuator+type DialFuncs =+  (Destroy+ (GetAngle1+ (SetAngle1+ (GetAngle2+ (SetAngle2+ (SetAngles+ ()))))))+instance Functions Dial DialFuncs++data GetAngle1 a+getAngle1 :: (FindOp a (GetAngle1 ()) (Match r), Op (GetAngle1 ()) r a impl) => Ref a -> impl+getAngle1 = dispatch (undefined :: GetAngle1 ())+data SetAngle1 a+setAngle1 :: (FindOp a (SetAngle1 ()) (Match r), Op (SetAngle1 ()) r a impl) => Ref a -> impl+setAngle1 = dispatch (undefined :: SetAngle1 ())+data GetAngle2 a+getAngle2 :: (FindOp a (GetAngle2 ()) (Match r), Op (GetAngle2 ()) r a impl) => Ref a -> impl+getAngle2 = dispatch (undefined :: GetAngle2 ())+data SetAngle2 a+setAngle2 :: (FindOp a (SetAngle2 ()) (Match r), Op (SetAngle2 ()) r a impl) => Ref a -> impl+setAngle2 = dispatch (undefined :: SetAngle2 ())+data SetAngles a+setAngles :: (FindOp a (SetAngles ()) (Match r), Op (SetAngles ()) r a impl) => Ref a -> impl+setAngles = dispatch (undefined :: SetAngles ())++data CFillDial parent+type FillDial = CFillDial Dial+instance Functions FillDial ()++data CLineDial parent+type LineDial = CLineDial Dial+instance Functions LineDial ()++data CRoller parent+type Roller = CRoller Valuator+type RollerFuncs =+  (Destroy+  (Handle+  ()))+instance Functions Roller RollerFuncs++data CCounter parent+type Counter = CCounter Valuator+type CounterFuncs =+  (Destroy+  (Handle+  (SetLstep+  (SetTextfont+  (GetTextfont+  (SetTextsize+  (GetTextsize+  (SetTextcolor+  (GetTextcolor+  ())))))))))+instance Functions Counter CounterFuncs++data SetLstep a+setLstep :: (FindOp a (SetLstep ()) (Match r), Op (SetLstep ()) r a impl) => Ref a -> impl+setLstep = dispatch (undefined :: SetLstep ())++data CSimpleCounter parent+type SimpleCounter = CSimpleCounter Counter+instance Functions SimpleCounter ()++data CScrollbar parent+type Scrollbar = CScrollbar Slider+type ScrollbarFuncs =+  (Destroy+ (SetValue+ (Handle+ (SetLinesize+ (GetLinesize+ ())))))+instance Functions Scrollbar ScrollbarFuncs++data SetLinesize a+setLinesize :: (FindOp a (SetLinesize ()) (Match r), Op (SetLinesize ()) r a impl) => Ref a -> impl+setLinesize = dispatch (undefined :: SetLinesize ())+data GetLinesize a+getLinesize :: (FindOp a (GetLinesize ()) (Match r), Op (GetLinesize ()) r a impl) => Ref a -> impl+getLinesize = dispatch (undefined :: GetLinesize ())++data CValueSlider parent+type ValueSlider = CValueSlider Slider+type ValueSliderFuncs =+  (Destroy+  (Handle+  (GetTextfont+  (SetTextfont+  (GetTextsize+  (SetTextsize+  (GetTextcolor+  (SetTextcolor+  ()))))))))+instance Functions ValueSlider ValueSliderFuncs++data CHorValueSlider parent+type HorValueSlider = CHorValueSlider ValueSlider+instance Functions HorValueSlider ()++data CInput parent+type Input = CInput Widget+type InputFuncs =+  (Destroy+  (Handle+  (SetValue+  (StaticValue+  (GetValue+  (Index+  (SetSize+  (GetMaximumSize+  (GetSize+  (SetMaximumSize+  (GetPosition+  (GetMark+  (SetPosition+  (SetMark+  (Replace+  (Cut+  (CutFromCursor+  (CutRange+  (Insert+  (InsertWithLength+  (Copy+  (Undo+  (CopyCuts+  (GetShortcut+  (SetShortcut+  (GetTextfont+  (SetTextfont+  (GetTextsize+  (SetTextsize+  (GetTextcolor+  (SetTextcolor+  (GetCursorColor+  (SetCursorColor+  (GetInputType+  (SetInputType+  (GetReadonly+  (SetReadonly+  (GetWrap+  (SetWrap+  (GetTabNav+  (SetTabNav+  ())))))))))))))))))))))))))))))))))))))))))+instance Functions Input InputFuncs++data StaticValue a+staticValue :: (FindOp a (StaticValue ()) (Match r), Op (StaticValue ()) r a impl) => Ref a -> impl+staticValue = dispatch (undefined :: StaticValue ())+data Index a+index :: (FindOp a (Index ()) (Match r), Op (Index ()) r a impl) => Ref a -> impl+index = dispatch (undefined :: Index ())+data GetMaximumSize a+getMaximumSize :: (FindOp a (GetMaximumSize ()) (Match r), Op (GetMaximumSize ()) r a impl) => Ref a -> impl+getMaximumSize = dispatch (undefined :: GetMaximumSize ())+data SetMaximumSize a+setMaximumSize :: (FindOp a (SetMaximumSize ()) (Match r), Op (SetMaximumSize ()) r a impl) => Ref a -> impl+setMaximumSize = dispatch (undefined :: SetMaximumSize ())+data GetPosition a+getPosition :: (FindOp a (GetPosition ()) (Match r), Op (GetPosition ()) r a impl) => Ref a -> impl+getPosition = dispatch (undefined :: GetPosition ())+data GetMark a+getMark :: (FindOp a (GetMark ()) (Match r), Op (GetMark ()) r a impl) => Ref a -> impl+getMark = dispatch (undefined :: GetMark ())+data SetPosition a+setPosition :: (FindOp a (SetPosition ()) (Match r), Op (SetPosition ()) r a impl) => Ref a -> impl+setPosition = dispatch (undefined :: SetPosition ())+data SetMark a+setMark :: (FindOp a (SetMark ()) (Match r), Op (SetMark ()) r a impl) => Ref a -> impl+setMark = dispatch (undefined :: SetMark ())+data Cut a+cut :: (FindOp a (Cut ()) (Match r), Op (Cut ()) r a impl) => Ref a -> impl+cut = dispatch (undefined :: Cut ())+data CutFromCursor a+cutFromCursor :: (FindOp a (CutFromCursor ()) (Match r), Op (CutFromCursor ()) r a impl) => Ref a -> impl+cutFromCursor = dispatch (undefined :: CutFromCursor ())+data CutRange a+cutRange :: (FindOp a (CutRange ()) (Match r), Op (CutRange ()) r a impl) => Ref a -> impl+cutRange = dispatch (undefined :: CutRange ())+data InsertWithLength a+insertWithLength :: (FindOp a (InsertWithLength ()) (Match r), Op (InsertWithLength ()) r a impl) => Ref a -> impl+insertWithLength = dispatch (undefined :: InsertWithLength ())+data Undo a+undo :: (FindOp a (Undo ()) (Match r), Op (Undo ()) r a impl) => Ref a -> impl+undo = dispatch (undefined :: Undo ())+data CopyCuts a+copyCuts :: (FindOp a (CopyCuts ()) (Match r), Op (CopyCuts ()) r a impl) => Ref a -> impl+copyCuts = dispatch (undefined :: CopyCuts ())+data GetCursorColor a+getCursorColor :: (FindOp a (GetCursorColor ()) (Match r), Op (GetCursorColor ()) r a impl) => Ref a -> impl+getCursorColor = dispatch (undefined :: GetCursorColor ())+data SetCursorColor a+setCursorColor :: (FindOp a (SetCursorColor ()) (Match r), Op (SetCursorColor ()) r a impl) => Ref a -> impl+setCursorColor = dispatch (undefined :: SetCursorColor ())+data GetInputType a+getInputType :: (FindOp a (GetInputType ()) (Match r), Op (GetInputType ()) r a impl) => Ref a -> impl+getInputType = dispatch (undefined :: GetInputType ())+data SetInputType a+setInputType :: (FindOp a (SetInputType ()) (Match r), Op (SetInputType ()) r a impl) => Ref a -> impl+setInputType = dispatch (undefined :: SetInputType ())+data GetReadonly a+getReadonly :: (FindOp a (GetReadonly ()) (Match r), Op (GetReadonly ()) r a impl) => Ref a -> impl+getReadonly = dispatch (undefined :: GetReadonly ())+data SetReadonly a+setReadonly :: (FindOp a (SetReadonly ()) (Match r), Op (SetReadonly ()) r a impl) => Ref a -> impl+setReadonly = dispatch (undefined :: SetReadonly ())+data GetWrap a+getWrap :: (FindOp a (GetWrap ()) (Match r), Op (GetWrap ()) r a impl) => Ref a -> impl+getWrap = dispatch (undefined :: GetWrap ())+data SetWrap a+setWrap :: (FindOp a (SetWrap ()) (Match r), Op (SetWrap ()) r a impl) => Ref a -> impl+setWrap = dispatch (undefined :: SetWrap ())+data GetTabNav a+getTabNav :: (FindOp a (GetTabNav ()) (Match r), Op (GetTabNav ()) r a impl) => Ref a -> impl+getTabNav = dispatch (undefined :: GetTabNav ())+data SetTabNav a+setTabNav :: (FindOp a (SetTabNav ()) (Match r), Op (SetTabNav ()) r a impl) => Ref a -> impl+setTabNav = dispatch (undefined :: SetTabNav ())++data CValueInput parent+type ValueInput = CValueInput Valuator+type ValueInputFuncs =+  (Destroy+  (Handle+  (GetSoft+  (SetSoft+  (GetShortcut+  (SetShortcut+  (SetTextfont+  (GetTextfont+  (SetTextsize+  (GetTextsize+  (SetTextcolor+  (GetTextcolor+  ()))))))))))))+instance Functions ValueInput ValueInputFuncs++data CValueOutput parent+type ValueOutput = CValueOutput Valuator+type ValueOutputFuncs =+  (Destroy+  (Handle+  (GetSoft+  (SetSoft+  (SetTextfont+  (GetTextfont+  (SetTextsize+  (GetTextsize+  (SetTextcolor+  (GetTextcolor+  ()))))))))))+instance Functions ValueOutput ValueOutputFuncs++data CTimer parent+type Timer = CTimer Widget+type TimerFuncs =+  (Destroy+  (Handle+  (GetDirection+  (SetDirection+  (GetValue+  (SetValue+  (GetSuspended+  (SetSuspended+  ()))))))))+instance Functions Timer TimerFuncs++data GetDirection a+getDirection :: (FindOp a (GetDirection ()) (Match r), Op (GetDirection ()) r a impl) => Ref a -> impl+getDirection = dispatch (undefined :: GetDirection ())+data SetDirection a+setDirection :: (FindOp a (SetDirection ()) (Match r), Op (SetDirection ()) r a impl) => Ref a -> impl+setDirection = dispatch (undefined :: SetDirection ())+data GetSuspended a+getSuspended :: (FindOp a (GetSuspended ()) (Match r), Op (GetSuspended ()) r a impl) => Ref a -> impl+getSuspended = dispatch (undefined :: GetSuspended ())+data SetSuspended a+setSuspended :: (FindOp a (SetSuspended ()) (Match r), Op (SetSuspended ()) r a impl) => Ref a -> impl+setSuspended = dispatch (undefined :: SetSuspended ())++data CHiddenTimer parent+type HiddenTimer = CHiddenTimer Widget+instance Functions HiddenTimer ()++data CValueTimer parent+type ValueTimer = CValueTimer Widget+instance Functions ValueTimer ()++data CProgress parent+type Progress = CProgress Widget+type ProgressFuncs =+  (Destroy+  (SetMaximum+  (GetMaximum+  (SetMinimum+  (GetMinimum+  (SetValue+  (GetValue+  ())))))))+instance Functions Progress ProgressFuncs++data CPositioner parent+type Positioner = CPositioner Widget+type PositionerFuncs =+  (Destroy+  (Handle+  (SetXvalue+  (GetXvalue+  (SetYvalue+  (GetYvalue+  (SetXminimum+  (GetXminimum+  (SetYminimum+  (GetYminimum+  (SetXmaximum+  (GetXmaximum+  (SetYmaximum+  (GetYmaximum+  (SetXbounds+  (SetYbounds+  (SetXstep+  (SetYstep+  ()))))))))))))))))))+instance Functions Positioner PositionerFuncs++data SetXvalue a+setXvalue :: (FindOp a (SetXvalue ()) (Match r), Op (SetXvalue ()) r a impl) => Ref a -> impl+setXvalue = dispatch (undefined :: SetXvalue ())+data GetXvalue a+getXvalue :: (FindOp a (GetXvalue ()) (Match r), Op (GetXvalue ()) r a impl) => Ref a -> impl+getXvalue = dispatch (undefined :: GetXvalue ())+data SetYvalue a+setYvalue :: (FindOp a (SetYvalue ()) (Match r), Op (SetYvalue ()) r a impl) => Ref a -> impl+setYvalue = dispatch (undefined :: SetYvalue ())+data GetYvalue a+getYvalue :: (FindOp a (GetYvalue ()) (Match r), Op (GetYvalue ()) r a impl) => Ref a -> impl+getYvalue = dispatch (undefined :: GetYvalue ())+data SetXminimum a+setXminimum :: (FindOp a (SetXminimum ()) (Match r), Op (SetXminimum ()) r a impl) => Ref a -> impl+setXminimum = dispatch (undefined :: SetXminimum ())+data GetXminimum a+getXminimum :: (FindOp a (GetXminimum ()) (Match r), Op (GetXminimum ()) r a impl) => Ref a -> impl+getXminimum = dispatch (undefined :: GetXminimum ())+data SetYminimum a+setYminimum :: (FindOp a (SetYminimum ()) (Match r), Op (SetYminimum ()) r a impl) => Ref a -> impl+setYminimum = dispatch (undefined :: SetYminimum ())+data GetYminimum a+getYminimum :: (FindOp a (GetYminimum ()) (Match r), Op (GetYminimum ()) r a impl) => Ref a -> impl+getYminimum = dispatch (undefined :: GetYminimum ())+data SetXmaximum a+setXmaximum :: (FindOp a (SetXmaximum ()) (Match r), Op (SetXmaximum ()) r a impl) => Ref a -> impl+setXmaximum = dispatch (undefined :: SetXmaximum ())+data GetXmaximum a+getXmaximum :: (FindOp a (GetXmaximum ()) (Match r), Op (GetXmaximum ()) r a impl) => Ref a -> impl+getXmaximum = dispatch (undefined :: GetXmaximum ())+data SetYmaximum a+setYmaximum :: (FindOp a (SetYmaximum ()) (Match r), Op (SetYmaximum ()) r a impl) => Ref a -> impl+setYmaximum = dispatch (undefined :: SetYmaximum ())+data GetYmaximum a+getYmaximum :: (FindOp a (GetYmaximum ()) (Match r), Op (GetYmaximum ()) r a impl) => Ref a -> impl+getYmaximum = dispatch (undefined :: GetYmaximum ())+data SetXbounds a+setXbounds :: (FindOp a (SetXbounds ()) (Match r), Op (SetXbounds ()) r a impl) => Ref a -> impl+setXbounds = dispatch (undefined :: SetXbounds ())+data SetYbounds a+setYbounds :: (FindOp a (SetYbounds ()) (Match r), Op (SetYbounds ()) r a impl) => Ref a -> impl+setYbounds = dispatch (undefined :: SetYbounds ())+data SetXstep a+setXstep :: (FindOp a (SetXstep ()) (Match r), Op (SetXstep ()) r a impl) => Ref a -> impl+setXstep = dispatch (undefined :: SetXstep ())+data SetYstep a+setYstep :: (FindOp a (SetYstep ()) (Match r), Op (SetYstep ()) r a impl) => Ref a -> impl+setYstep = dispatch (undefined :: SetYstep ())++data CWizard parent+type Wizard = CWizard Widget+type WizardFuncs =+  (Destroy+  (Next+  (Prev+  (SetValue+  (GetValue+  ())))))+instance Functions Wizard WizardFuncs++data Prev a+prev :: (FindOp a (Prev ()) (Match r), Op (Prev ()) r a impl) => Ref a -> impl+prev = dispatch (undefined :: Prev ())++data CTable parent+type Table = CTable Group+type TableFuncs =+  (Destroy+  (SetTableBox+  (GetTableBox+  (SetRows+  (GetRows+  (SetCols+  (GetCols+  (SetVisibleCells+  (IsInteractiveResize+  (GetRowResize+  (SetRowResize+  (GetColResize+  (SetColResize+  (GetColResizeMin+  (SetColResizeMin+  (GetRowResizeMin+  (SetRowResizeMin+  (GetRowHeader+  (SetRowHeader+  (GetColHeader+  (SetColHeader+  (SetColHeaderHeight+  (GetColHeaderHeight+  (SetRowHeaderWidth+  (GetRowHeaderWidth+  (SetRowHeaderColor+  (GetRowHeaderColor+  (SetColHeaderColor+  (GetColHeaderColor+  (SetRowHeight+  (GetRowHeight+  (SetColWidth+  (GetColWidth+  (SetRowHeightAll+  (SetColWidthAll+  (SetRowPosition+  (SetColPosition+  (GetRowPosition+  (GetColPosition+  (SetTopRow+  (GetTopRow+  (IsSelected+  (GetSelection+  (SetSelection+  (MoveCursor+  (InitSizes+  (Add+  (Insert+  (InsertWithBefore+  (Begin+  (End+  (GetArray+  (GetChild+  (Children+  (Find+  (CallbackRow+  (CallbackCol+  (CallbackContext+  (DoCallback+  (FindCell+  (DrawSuper+  (Draw+  (Handle+  (ResizeSuper+  (Resize+  (ClearSuper+  (Clear+  (SetRowsSuper+  (SetColsSuper+  (ShowWidget+  (ShowWidgetSuper+  (Hide+  (HideSuper+  ())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))+instance Functions Table TableFuncs++data SetTableBox a+setTableBox :: (FindOp a (SetTableBox ()) (Match r), Op (SetTableBox ()) r a impl) => Ref a -> impl+setTableBox = dispatch (undefined :: SetTableBox ())+data GetTableBox a+getTableBox :: (FindOp a (GetTableBox ()) (Match r), Op (GetTableBox ()) r a impl) => Ref a -> impl+getTableBox = dispatch (undefined :: GetTableBox ())+data SetRows a+setRows :: (FindOp a (SetRows ()) (Match r), Op (SetRows ()) r a impl) => Ref a -> impl+setRows = dispatch (undefined :: SetRows ())+data GetRows a+getRows :: (FindOp a (GetRows ()) (Match r), Op (GetRows ()) r a impl) => Ref a -> impl+getRows = dispatch (undefined :: GetRows ())+data SetCols a+setCols :: (FindOp a (SetCols ()) (Match r), Op (SetCols ()) r a impl) => Ref a -> impl+setCols = dispatch (undefined :: SetCols ())+data GetCols a+getCols :: (FindOp a (GetCols ()) (Match r), Op (GetCols ()) r a impl) => Ref a -> impl+getCols = dispatch (undefined :: GetCols ())+data SetVisibleCells a+setVisibleCells :: (FindOp a (SetVisibleCells ()) (Match r), Op (SetVisibleCells ()) r a impl) => Ref a -> impl+setVisibleCells = dispatch (undefined :: SetVisibleCells ())+data IsInteractiveResize a+isInteractiveResize :: (FindOp a (IsInteractiveResize ()) (Match r), Op (IsInteractiveResize ()) r a impl) => Ref a -> impl+isInteractiveResize = dispatch (undefined :: IsInteractiveResize ())+data GetRowResize a+getRowResize :: (FindOp a (GetRowResize ()) (Match r), Op (GetRowResize ()) r a impl) => Ref a -> impl+getRowResize = dispatch (undefined :: GetRowResize ())+data SetRowResize a+setRowResize :: (FindOp a (SetRowResize ()) (Match r), Op (SetRowResize ()) r a impl) => Ref a -> impl+setRowResize = dispatch (undefined :: SetRowResize ())+data GetColResize a+getColResize :: (FindOp a (GetColResize ()) (Match r), Op (GetColResize ()) r a impl) => Ref a -> impl+getColResize = dispatch (undefined :: GetColResize ())+data SetColResize a+setColResize :: (FindOp a (SetColResize ()) (Match r), Op (SetColResize ()) r a impl) => Ref a -> impl+setColResize = dispatch (undefined :: SetColResize ())+data GetColResizeMin a+getColResizeMin :: (FindOp a (GetColResizeMin ()) (Match r), Op (GetColResizeMin ()) r a impl) => Ref a -> impl+getColResizeMin = dispatch (undefined :: GetColResizeMin ())+data SetColResizeMin a+setColResizeMin :: (FindOp a (SetColResizeMin ()) (Match r), Op (SetColResizeMin ()) r a impl) => Ref a -> impl+setColResizeMin = dispatch (undefined :: SetColResizeMin ())+data GetRowResizeMin a+getRowResizeMin :: (FindOp a (GetRowResizeMin ()) (Match r), Op (GetRowResizeMin ()) r a impl) => Ref a -> impl+getRowResizeMin = dispatch (undefined :: GetRowResizeMin ())+data SetRowResizeMin a+setRowResizeMin :: (FindOp a (SetRowResizeMin ()) (Match r), Op (SetRowResizeMin ()) r a impl) => Ref a -> impl+setRowResizeMin = dispatch (undefined :: SetRowResizeMin ())+data GetRowHeader a+getRowHeader :: (FindOp a (GetRowHeader ()) (Match r), Op (GetRowHeader ()) r a impl) => Ref a -> impl+getRowHeader = dispatch (undefined :: GetRowHeader ())+data SetRowHeader a+setRowHeader :: (FindOp a (SetRowHeader ()) (Match r), Op (SetRowHeader ()) r a impl) => Ref a -> impl+setRowHeader = dispatch (undefined :: SetRowHeader ())+data GetColHeader a+getColHeader :: (FindOp a (GetColHeader ()) (Match r), Op (GetColHeader ()) r a impl) => Ref a -> impl+getColHeader = dispatch (undefined :: GetColHeader ())+data SetColHeader a+setColHeader :: (FindOp a (SetColHeader ()) (Match r), Op (SetColHeader ()) r a impl) => Ref a -> impl+setColHeader = dispatch (undefined :: SetColHeader ())+data SetColHeaderHeight a+setColHeaderHeight :: (FindOp a (SetColHeaderHeight ()) (Match r), Op (SetColHeaderHeight ()) r a impl) => Ref a -> impl+setColHeaderHeight = dispatch (undefined :: SetColHeaderHeight ())+data GetColHeaderHeight a+getColHeaderHeight :: (FindOp a (GetColHeaderHeight ()) (Match r), Op (GetColHeaderHeight ()) r a impl) => Ref a -> impl+getColHeaderHeight = dispatch (undefined :: GetColHeaderHeight ())+data SetRowHeaderWidth a+setRowHeaderWidth :: (FindOp a (SetRowHeaderWidth ()) (Match r), Op (SetRowHeaderWidth ()) r a impl) => Ref a -> impl+setRowHeaderWidth = dispatch (undefined :: SetRowHeaderWidth ())+data GetRowHeaderWidth a+getRowHeaderWidth :: (FindOp a (GetRowHeaderWidth ()) (Match r), Op (GetRowHeaderWidth ()) r a impl) => Ref a -> impl+getRowHeaderWidth = dispatch (undefined :: GetRowHeaderWidth ())+data SetRowHeaderColor a+setRowHeaderColor :: (FindOp a (SetRowHeaderColor ()) (Match r), Op (SetRowHeaderColor ()) r a impl) => Ref a -> impl+setRowHeaderColor = dispatch (undefined :: SetRowHeaderColor ())+data GetRowHeaderColor a+getRowHeaderColor :: (FindOp a (GetRowHeaderColor ()) (Match r), Op (GetRowHeaderColor ()) r a impl) => Ref a -> impl+getRowHeaderColor = dispatch (undefined :: GetRowHeaderColor ())+data SetColHeaderColor a+setColHeaderColor :: (FindOp a (SetColHeaderColor ()) (Match r), Op (SetColHeaderColor ()) r a impl) => Ref a -> impl+setColHeaderColor = dispatch (undefined :: SetColHeaderColor ())+data GetColHeaderColor a+getColHeaderColor :: (FindOp a (GetColHeaderColor ()) (Match r), Op (GetColHeaderColor ()) r a impl) => Ref a -> impl+getColHeaderColor = dispatch (undefined :: GetColHeaderColor ())+data SetRowHeight a+setRowHeight :: (FindOp a (SetRowHeight ()) (Match r), Op (SetRowHeight ()) r a impl) => Ref a -> impl+setRowHeight = dispatch (undefined :: SetRowHeight ())+data GetRowHeight a+getRowHeight :: (FindOp a (GetRowHeight ()) (Match r), Op (GetRowHeight ()) r a impl) => Ref a -> impl+getRowHeight = dispatch (undefined :: GetRowHeight ())+data SetColWidth a+setColWidth :: (FindOp a (SetColWidth ()) (Match r), Op (SetColWidth ()) r a impl) => Ref a -> impl+setColWidth = dispatch (undefined :: SetColWidth ())+data GetColWidth a+getColWidth :: (FindOp a (GetColWidth ()) (Match r), Op (GetColWidth ()) r a impl) => Ref a -> impl+getColWidth = dispatch (undefined :: GetColWidth ())+data SetRowHeightAll a+setRowHeightAll :: (FindOp a (SetRowHeightAll ()) (Match r), Op (SetRowHeightAll ()) r a impl) => Ref a -> impl+setRowHeightAll = dispatch (undefined :: SetRowHeightAll ())+data SetColWidthAll a+setColWidthAll :: (FindOp a (SetColWidthAll ()) (Match r), Op (SetColWidthAll ()) r a impl) => Ref a -> impl+setColWidthAll = dispatch (undefined :: SetColWidthAll ())+data SetRowPosition a+setRowPosition :: (FindOp a (SetRowPosition ()) (Match r), Op (SetRowPosition ()) r a impl) => Ref a -> impl+setRowPosition = dispatch (undefined :: SetRowPosition ())+data SetColPosition a+setColPosition :: (FindOp a (SetColPosition ()) (Match r), Op (SetColPosition ()) r a impl) => Ref a -> impl+setColPosition = dispatch (undefined :: SetColPosition ())+data GetRowPosition a+getRowPosition :: (FindOp a (GetRowPosition ()) (Match r), Op (GetRowPosition ()) r a impl) => Ref a -> impl+getRowPosition = dispatch (undefined :: GetRowPosition ())+data GetColPosition a+getColPosition :: (FindOp a (GetColPosition ()) (Match r), Op (GetColPosition ()) r a impl) => Ref a -> impl+getColPosition = dispatch (undefined :: GetColPosition ())+data SetTopRow a+setTopRow :: (FindOp a (SetTopRow ()) (Match r), Op (SetTopRow ()) r a impl) => Ref a -> impl+setTopRow = dispatch (undefined :: SetTopRow ())+data GetTopRow a+getTopRow :: (FindOp a (GetTopRow ()) (Match r), Op (GetTopRow ()) r a impl) => Ref a -> impl+getTopRow = dispatch (undefined :: GetTopRow ())+data IsSelected a+isSelected :: (FindOp a (IsSelected ()) (Match r), Op (IsSelected ()) r a impl) => Ref a -> impl+isSelected = dispatch (undefined :: IsSelected ())+data GetSelection a+getSelection :: (FindOp a (GetSelection ()) (Match r), Op (GetSelection ()) r a impl) => Ref a -> impl+getSelection = dispatch (undefined :: GetSelection ())+data SetSelection a+setSelection :: (FindOp a (SetSelection ()) (Match r), Op (SetSelection ()) r a impl) => Ref a -> impl+setSelection = dispatch (undefined :: SetSelection ())+data MoveCursor a+moveCursor :: (FindOp a (MoveCursor ()) (Match r), Op (MoveCursor ()) r a impl) => Ref a -> impl+moveCursor = dispatch (undefined :: MoveCursor ())+data CallbackRow a+callbackRow :: (FindOp a (CallbackRow ()) (Match r), Op (CallbackRow ()) r a impl) => Ref a -> impl+callbackRow = dispatch (undefined :: CallbackRow ())+data CallbackCol a+callbackCol :: (FindOp a (CallbackCol ()) (Match r), Op (CallbackCol ()) r a impl) => Ref a -> impl+callbackCol = dispatch (undefined :: CallbackCol ())+data CallbackContext a+callbackContext :: (FindOp a (CallbackContext ()) (Match r), Op (CallbackContext ()) r a impl) => Ref a -> impl+callbackContext = dispatch (undefined :: CallbackContext ())+data FindCell a+findCell :: (FindOp a (FindCell ()) (Match r), Op (FindCell ()) r a impl) => Ref a -> impl+findCell = dispatch (undefined :: FindCell ())+data ClearSuper a+clearSuper :: (FindOp a (ClearSuper ()) (Match r), Op (ClearSuper ()) r a impl) => Ref a -> impl+clearSuper = dispatch (undefined :: ClearSuper ())+data SetRowsSuper a+setRowsSuper :: (FindOp a (SetRowsSuper ()) (Match r), Op (SetRowsSuper ()) r a impl) => Ref a -> impl+setRowsSuper = dispatch (undefined :: SetRowsSuper ())+data SetColsSuper a+setColsSuper :: (FindOp a (SetColsSuper ()) (Match r), Op (SetColsSuper ()) r a impl) => Ref a -> impl+setColsSuper = dispatch (undefined :: SetColsSuper ())++data CTableRow parent+type TableRow = CTableRow Table+type TableRowFuncs =+  (Destroy+  (GetRows+  (SetType+  (GetType+  (SetRows+  (SetCols+  (ClearSuper+  (Clear+  (SetRowsSuper+  (SetColsSuper+  (Handle+  (ResizeSuper+  (Resize+  (GetRowSelected+  (SelectAllRows+  ())))))))))))))))+instance Functions TableRow TableRowFuncs++data GetType a+getType :: (FindOp a (GetType ()) (Match r), Op (GetType ()) r a impl) => Ref a -> impl+getType = dispatch (undefined :: GetType ())+data GetRowSelected a+getRowSelected :: (FindOp a (GetRowSelected ()) (Match r), Op (GetRowSelected ()) r a impl) => Ref a -> impl+getRowSelected = dispatch (undefined :: GetRowSelected ())+data SelectAllRows a+selectAllRows :: (FindOp a (SelectAllRows ()) (Match r), Op (SelectAllRows ()) r a impl) => Ref a -> impl+selectAllRows = dispatch (undefined :: SelectAllRows ())++data CGlWindow parent+type GlWindow = CGlWindow Window+type GlWindowFuncs =+  (DrawSuper+  (HideSuper+  (FlushSuper+  (Flush+  (ShowWidgetSuper+  (ResizeSuper+  (Hide+  (ShowWidget+  (Resize+  (Handle+  (HandleSuper+  (Destroy+  (GetValid+  (SetValid+  (Invalidate+  (GetContextValid+  (SetContextValid+  (CanDoWithM+  (CanDo+  (GetMode+  (SetMode+  (GetContext+  (SetContext+  (SetContextWithDestroyFlag+  (SwapBuffers+  (Ortho+  (CanDoOverlay+  (RedrawOverlay+  (HideOverlay+  (MakeOverlayCurrent+  ()))))))))))))))))))))))))))))))+instance Functions GlWindow GlWindowFuncs++data GetValid a+getValid :: (FindOp a (GetValid ()) (Match r), Op (GetValid ()) r a impl) => Ref a -> impl+getValid = dispatch (undefined :: GetValid ())+data SetValid a+setValid :: (FindOp a (SetValid ()) (Match r), Op (SetValid ()) r a impl) => Ref a -> impl+setValid = dispatch (undefined :: SetValid ())+data Invalidate a+invalidate :: (FindOp a (Invalidate ()) (Match r), Op (Invalidate ()) r a impl) => Ref a -> impl+invalidate = dispatch (undefined :: Invalidate ())+data GetContextValid a+getContextValid :: (FindOp a (GetContextValid ()) (Match r), Op (GetContextValid ()) r a impl) => Ref a -> impl+getContextValid = dispatch (undefined :: GetContextValid ())+data SetContextValid a+setContextValid :: (FindOp a (SetContextValid ()) (Match r), Op (SetContextValid ()) r a impl) => Ref a -> impl+setContextValid = dispatch (undefined :: SetContextValid ())+data CanDoWithM a+canDoWithM :: (FindOp a (CanDoWithM ()) (Match r), Op (CanDoWithM ()) r a impl) => Ref a -> impl+canDoWithM = dispatch (undefined :: CanDoWithM ())+data CanDo a+canDo :: (FindOp a (CanDo ()) (Match r), Op (CanDo ()) r a impl) => Ref a -> impl+canDo = dispatch (undefined :: CanDo ())+data GetContext a+getContext :: (FindOp a (GetContext ()) (Match r), Op (GetContext ()) r a impl) => Ref a -> impl+getContext = dispatch (undefined :: GetContext ())+data SetContext a+setContext :: (FindOp a (SetContext ()) (Match r), Op (SetContext ()) r a impl) => Ref a -> impl+setContext = dispatch (undefined :: SetContext ())+data SetContextWithDestroyFlag a+setContextWithDestroyFlag :: (FindOp a (SetContextWithDestroyFlag ()) (Match r), Op (SetContextWithDestroyFlag ()) r a impl) => Ref a -> impl+setContextWithDestroyFlag = dispatch (undefined :: SetContextWithDestroyFlag ())+data SwapBuffers a+swapBuffers :: (FindOp a (SwapBuffers ()) (Match r), Op (SwapBuffers ()) r a impl) => Ref a -> impl+swapBuffers = dispatch (undefined :: SwapBuffers ())+data Ortho a+ortho :: (FindOp a (Ortho ()) (Match r), Op (Ortho ()) r a impl) => Ref a -> impl+ortho = dispatch (undefined :: Ortho ())+data HideOverlay a+hideOverlay :: (FindOp a (HideOverlay ()) (Match r), Op (HideOverlay ()) r a impl) => Ref a -> impl+hideOverlay = dispatch (undefined :: HideOverlay ())+data MakeOverlayCurrent a+makeOverlayCurrent :: (FindOp a (MakeOverlayCurrent ()) (Match r), Op (MakeOverlayCurrent ()) r a impl) => Ref a -> impl+makeOverlayCurrent = dispatch (undefined :: MakeOverlayCurrent ())++data CBox parent+type Box = CBox Widget+instance Functions Box ()++data CBrowser parent+type Browser = CBrowser Group+type BrowserFuncs =+  (Handle+  (Destroy+  (Remove+  (Add+  (Insert+  (Move+  (Load+  (Swap+  (Clear+  (GetSize+  (SetSize+  (GetTopline+  (Lineposition+  (SetTopline+  (SetBottomline+  (SetMiddleline+  (Select+  (Selected+  (ShowWidgetLine+  (ShowWidget+  (HideLine+  (Hide+  (Visible+  (GetValue+  (SetValue+  (GetText+  (SetText+  (GetFormatChar+  (SetFormatChar+  (GetColumnChar+  (SetColumnChar+  (GetColumnWidths+  (SetColumnWidths+  (Displayed+  (MakeVisible+  (SetIcon+  (GetIcon+  (RemoveIcon+  (Deselect+  (DeselectAndCallback+  (GetPosition+  (SetPosition+  (GetHposition+  (SetHposition+  (GetHasScrollbar+  (SetHasScrollbar+  (GetTextfont+  (SetTextfont+  (GetTextsize+  (SetTextsize+  (GetTextcolor+  (SetTextcolor+  (GetScrollbarSize+  (SetScrollbarSize+  (GetScrollbarWidth+  (SetScrollbarWidth+  (Sort+  (SortWithSortType+  ()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))+instance Functions Browser BrowserFuncs++data Move a+move :: (FindOp a (Move ()) (Match r), Op (Move ()) r a impl) => Ref a -> impl+move = dispatch (undefined :: Move ())+data Load a+load :: (FindOp a (Load ()) (Match r), Op (Load ()) r a impl) => Ref a -> impl+load = dispatch (undefined :: Load ())+data Swap a+swap :: (FindOp a (Swap ()) (Match r), Op (Swap ()) r a impl) => Ref a -> impl+swap = dispatch (undefined :: Swap ())+data GetTopline a+getTopline :: (FindOp a (GetTopline ()) (Match r), Op (GetTopline ()) r a impl) => Ref a -> impl+getTopline = dispatch (undefined :: GetTopline ())+data Lineposition a+lineposition :: (FindOp a (Lineposition ()) (Match r), Op (Lineposition ()) r a impl) => Ref a -> impl+lineposition = dispatch (undefined :: Lineposition ())+data SetTopline a+setTopline :: (FindOp a (SetTopline ()) (Match r), Op (SetTopline ()) r a impl) => Ref a -> impl+setTopline = dispatch (undefined :: SetTopline ())+data SetBottomline a+setBottomline :: (FindOp a (SetBottomline ()) (Match r), Op (SetBottomline ()) r a impl) => Ref a -> impl+setBottomline = dispatch (undefined :: SetBottomline ())+data SetMiddleline a+setMiddleline :: (FindOp a (SetMiddleline ()) (Match r), Op (SetMiddleline ()) r a impl) => Ref a -> impl+setMiddleline = dispatch (undefined :: SetMiddleline ())+data Select a+select :: (FindOp a (Select ()) (Match r), Op (Select ()) r a impl) => Ref a -> impl+select = dispatch (undefined :: Select ())+data Selected a+selected :: (FindOp a (Selected ()) (Match r), Op (Selected ()) r a impl) => Ref a -> impl+selected = dispatch (undefined :: Selected ())+data ShowWidgetLine a+showWidgetLine :: (FindOp a (ShowWidgetLine ()) (Match r), Op (ShowWidgetLine ()) r a impl) => Ref a -> impl+showWidgetLine = dispatch (undefined :: ShowWidgetLine ())+data HideLine a+hideLine :: (FindOp a (HideLine ()) (Match r), Op (HideLine ()) r a impl) => Ref a -> impl+hideLine = dispatch (undefined :: HideLine ())+data SetText a+setText :: (FindOp a (SetText ()) (Match r), Op (SetText ()) r a impl) => Ref a -> impl+setText = dispatch (undefined :: SetText ())+data GetFormatChar a+getFormatChar :: (FindOp a (GetFormatChar ()) (Match r), Op (GetFormatChar ()) r a impl) => Ref a -> impl+getFormatChar = dispatch (undefined :: GetFormatChar ())+data SetFormatChar a+setFormatChar :: (FindOp a (SetFormatChar ()) (Match r), Op (SetFormatChar ()) r a impl) => Ref a -> impl+setFormatChar = dispatch (undefined :: SetFormatChar ())+data GetColumnChar a+getColumnChar :: (FindOp a (GetColumnChar ()) (Match r), Op (GetColumnChar ()) r a impl) => Ref a -> impl+getColumnChar = dispatch (undefined :: GetColumnChar ())+data SetColumnChar a+setColumnChar :: (FindOp a (SetColumnChar ()) (Match r), Op (SetColumnChar ()) r a impl) => Ref a -> impl+setColumnChar = dispatch (undefined :: SetColumnChar ())+data GetColumnWidths a+getColumnWidths :: (FindOp a (GetColumnWidths ()) (Match r), Op (GetColumnWidths ()) r a impl) => Ref a -> impl+getColumnWidths = dispatch (undefined :: GetColumnWidths ())+data SetColumnWidths a+setColumnWidths :: (FindOp a (SetColumnWidths ()) (Match r), Op (SetColumnWidths ()) r a impl) => Ref a -> impl+setColumnWidths = dispatch (undefined :: SetColumnWidths ())+data Displayed a+displayed :: (FindOp a (Displayed ()) (Match r), Op (Displayed ()) r a impl) => Ref a -> impl+displayed = dispatch (undefined :: Displayed ())+data MakeVisible a+makeVisible :: (FindOp a (MakeVisible ()) (Match r), Op (MakeVisible ()) r a impl) => Ref a -> impl+makeVisible = dispatch (undefined :: MakeVisible ())+data RemoveIcon a+removeIcon :: (FindOp a (RemoveIcon ()) (Match r), Op (RemoveIcon ()) r a impl) => Ref a -> impl+removeIcon = dispatch (undefined :: RemoveIcon ())+data SelectOnly a+selectOnly :: (FindOp a (SelectOnly ()) (Match r), Op (SelectOnly ()) r a impl) => Ref a -> impl+selectOnly = dispatch (undefined :: SelectOnly ())+data SelectOnlyAndCallback a+selectOnlyAndCallback :: (FindOp a (SelectOnlyAndCallback ()) (Match r), Op (SelectOnlyAndCallback ()) r a impl) => Ref a -> impl+selectOnlyAndCallback = dispatch (undefined :: SelectOnlyAndCallback ())+data Deselect a+deselect :: (FindOp a (Deselect ()) (Match r), Op (Deselect ()) r a impl) => Ref a -> impl+deselect = dispatch (undefined :: Deselect ())+data DeselectAndCallback a+deselectAndCallback :: (FindOp a (DeselectAndCallback ()) (Match r), Op (DeselectAndCallback ()) r a impl) => Ref a -> impl+deselectAndCallback = dispatch (undefined :: DeselectAndCallback ())+data GetHposition a+getHposition :: (FindOp a (GetHposition ()) (Match r), Op (GetHposition ()) r a impl) => Ref a -> impl+getHposition = dispatch (undefined :: GetHposition ())+data SetHposition a+setHposition :: (FindOp a (SetHposition ()) (Match r), Op (SetHposition ()) r a impl) => Ref a -> impl+setHposition = dispatch (undefined :: SetHposition ())+data GetHasScrollbar a+getHasScrollbar :: (FindOp a (GetHasScrollbar ()) (Match r), Op (GetHasScrollbar ()) r a impl) => Ref a -> impl+getHasScrollbar = dispatch (undefined :: GetHasScrollbar ())+data SetHasScrollbar a+setHasScrollbar :: (FindOp a (SetHasScrollbar ()) (Match r), Op (SetHasScrollbar ()) r a impl) => Ref a -> impl+setHasScrollbar = dispatch (undefined :: SetHasScrollbar ())+data GetScrollbarSize a+getScrollbarSize :: (FindOp a (GetScrollbarSize ()) (Match r), Op (GetScrollbarSize ()) r a impl) => Ref a -> impl+getScrollbarSize = dispatch (undefined :: GetScrollbarSize ())+data SetScrollbarSize a+setScrollbarSize :: (FindOp a (SetScrollbarSize ()) (Match r), Op (SetScrollbarSize ()) r a impl) => Ref a -> impl+setScrollbarSize = dispatch (undefined :: SetScrollbarSize ())+data GetScrollbarWidth a+getScrollbarWidth :: (FindOp a (GetScrollbarWidth ()) (Match r), Op (GetScrollbarWidth ()) r a impl) => Ref a -> impl+getScrollbarWidth = dispatch (undefined :: GetScrollbarWidth ())+data SetScrollbarWidth a+setScrollbarWidth :: (FindOp a (SetScrollbarWidth ()) (Match r), Op (SetScrollbarWidth ()) r a impl) => Ref a -> impl+setScrollbarWidth = dispatch (undefined :: SetScrollbarWidth ())+data SortWithSortType a+sortWithSortType :: (FindOp a (SortWithSortType ()) (Match r), Op (SortWithSortType ()) r a impl) => Ref a -> impl+sortWithSortType = dispatch (undefined :: SortWithSortType ())+data Sort a+sort :: (FindOp a (Sort ()) (Match r), Op (Sort ()) r a impl) => Ref a -> impl+sort = dispatch (undefined :: Sort ())++data CSelectBrowser parent+type SelectBrowser = CSelectBrowser Browser+instance Functions SelectBrowser ()++data CIntInput parent+type IntInput = CIntInput Input+instance Functions IntInput ()++data CClock parent+type Clock = CClock Widget+type ClockFuncs =+  (Handle+  (GetValue+  (GetValueSinceEpoch+  (SetValue+  ()))))++instance Functions Clock ClockFuncs+data GetValueSinceEpoch a+getValueSinceEpoch :: (FindOp a (GetValueSinceEpoch ()) (Match r), Op (GetValueSinceEpoch ()) r a impl) => Ref a -> impl+getValueSinceEpoch = dispatch (undefined :: GetValueSinceEpoch ())++data CTreePrefs parent+type TreePrefs = CTreePrefs Base+type TreePrefsFuncs =+  (GetItemLabelfont+  (SetItemLabelfont+  (GetItemLabelsize+  (SetItemLabelsize+  (SetItemLabelfgcolor+  (GetItemLabelbgcolor+  (SetItemLabelbgcolor+  (GetLabelfont+  (SetLabelfont+  (GetLabelsize+  (SetLabelsize+  (GetLabelfgcolor+  (SetLabelfgcolor+  (GetLabelbgcolor+  (SetLabelbgcolor+  (GetMarginleft+  (SetMarginleft+  (GetMargintop+  (SetMargintop+  (GetOpenchildMarginbottom+  (SetOpenchildMarginbottom+  (GetUsericonmarginleft+  (SetUsericonmarginleft+  (GetLabelmarginleft+  (SetLabelmarginleft+  (GetLinespacing+  (SetLinespacing+  (GetConnectorcolor+  (SetConnectorcolor+  (GetConnectorstyle+  (SetConnectorstyle+  (GetConnectorwidth+  (SetConnectorwidth+  (GetOpenicon+  (SetOpenicon+  (GetCloseicon+  (SetCloseicon+  (GetUsericon+  (SetUsericon+  (GetShowcollapse+  (SetShowcollapse+  (GetSortorder+  (SetSortorder+  (GetSelectbox+  (SetSelectbox+  (GetShowroot+  (SetShowroot+  (GetSelectmode+  (SetSelectmode+  ())))))))))))))))))))))))))))))))))))))))))))))))))+instance Functions TreePrefs TreePrefsFuncs++data GetItemLabelfont a+getItemLabelfont :: (FindOp a (GetItemLabelfont ()) (Match r), Op (GetItemLabelfont ()) r a impl) => Ref a -> impl+getItemLabelfont = dispatch (undefined :: GetItemLabelfont ())+data GetItemLabelsize a+getItemLabelsize :: (FindOp a (GetItemLabelsize ()) (Match r), Op (GetItemLabelsize ()) r a impl) => Ref a -> impl+getItemLabelsize = dispatch (undefined :: GetItemLabelsize ())+data SetItemLabelsize a+setItemLabelsize :: (FindOp a (SetItemLabelsize ()) (Match r), Op (SetItemLabelsize ()) r a impl) => Ref a -> impl+setItemLabelsize = dispatch (undefined :: SetItemLabelsize ())+data SetItemLabelfgcolor a+setItemLabelfgcolor :: (FindOp a (SetItemLabelfgcolor ()) (Match r), Op (SetItemLabelfgcolor ()) r a impl) => Ref a -> impl+setItemLabelfgcolor = dispatch (undefined :: SetItemLabelfgcolor ())+data GetItemLabelbgcolor a+getItemLabelbgcolor :: (FindOp a (GetItemLabelbgcolor ()) (Match r), Op (GetItemLabelbgcolor ()) r a impl) => Ref a -> impl+getItemLabelbgcolor = dispatch (undefined :: GetItemLabelbgcolor ())+data SetItemLabelbgcolor a+setItemLabelbgcolor :: (FindOp a (SetItemLabelbgcolor ()) (Match r), Op (SetItemLabelbgcolor ()) r a impl) => Ref a -> impl+setItemLabelbgcolor = dispatch (undefined :: SetItemLabelbgcolor ())+data GetLabelfgcolor a+getLabelfgcolor :: (FindOp a (GetLabelfgcolor ()) (Match r), Op (GetLabelfgcolor ()) r a impl) => Ref a -> impl+getLabelfgcolor = dispatch (undefined :: GetLabelfgcolor ())+data SetLabelfgcolor a+setLabelfgcolor :: (FindOp a (SetLabelfgcolor ()) (Match r), Op (SetLabelfgcolor ()) r a impl) => Ref a -> impl+setLabelfgcolor = dispatch (undefined :: SetLabelfgcolor ())+data GetLabelbgcolor a+getLabelbgcolor :: (FindOp a (GetLabelbgcolor ()) (Match r), Op (GetLabelbgcolor ()) r a impl) => Ref a -> impl+getLabelbgcolor = dispatch (undefined :: GetLabelbgcolor ())+data SetLabelbgcolor a+setLabelbgcolor :: (FindOp a (SetLabelbgcolor ()) (Match r), Op (SetLabelbgcolor ()) r a impl) => Ref a -> impl+setLabelbgcolor = dispatch (undefined :: SetLabelbgcolor ())+data GetMarginleft a+getMarginleft :: (FindOp a (GetMarginleft ()) (Match r), Op (GetMarginleft ()) r a impl) => Ref a -> impl+getMarginleft = dispatch (undefined :: GetMarginleft ())+data SetMarginleft a+setMarginleft :: (FindOp a (SetMarginleft ()) (Match r), Op (SetMarginleft ()) r a impl) => Ref a -> impl+setMarginleft = dispatch (undefined :: SetMarginleft ())+data GetMargintop a+getMargintop :: (FindOp a (GetMargintop ()) (Match r), Op (GetMargintop ()) r a impl) => Ref a -> impl+getMargintop = dispatch (undefined :: GetMargintop ())+data SetMargintop a+setMargintop :: (FindOp a (SetMargintop ()) (Match r), Op (SetMargintop ()) r a impl) => Ref a -> impl+setMargintop = dispatch (undefined :: SetMargintop ())+data GetOpenchildMarginbottom a+getOpenchildMarginbottom :: (FindOp a (GetOpenchildMarginbottom ()) (Match r), Op (GetOpenchildMarginbottom ()) r a impl) => Ref a -> impl+getOpenchildMarginbottom = dispatch (undefined :: GetOpenchildMarginbottom ())+data SetOpenchildMarginbottom a+setOpenchildMarginbottom :: (FindOp a (SetOpenchildMarginbottom ()) (Match r), Op (SetOpenchildMarginbottom ()) r a impl) => Ref a -> impl+setOpenchildMarginbottom = dispatch (undefined :: SetOpenchildMarginbottom ())+data GetUsericonmarginleft a+getUsericonmarginleft :: (FindOp a (GetUsericonmarginleft ()) (Match r), Op (GetUsericonmarginleft ()) r a impl) => Ref a -> impl+getUsericonmarginleft = dispatch (undefined :: GetUsericonmarginleft ())+data SetUsericonmarginleft a+setUsericonmarginleft :: (FindOp a (SetUsericonmarginleft ()) (Match r), Op (SetUsericonmarginleft ()) r a impl) => Ref a -> impl+setUsericonmarginleft = dispatch (undefined :: SetUsericonmarginleft ())+data GetLabelmarginleft a+getLabelmarginleft :: (FindOp a (GetLabelmarginleft ()) (Match r), Op (GetLabelmarginleft ()) r a impl) => Ref a -> impl+getLabelmarginleft = dispatch (undefined :: GetLabelmarginleft ())+data SetLabelmarginleft a+setLabelmarginleft :: (FindOp a (SetLabelmarginleft ()) (Match r), Op (SetLabelmarginleft ()) r a impl) => Ref a -> impl+setLabelmarginleft = dispatch (undefined :: SetLabelmarginleft ())+data GetLinespacing a+getLinespacing :: (FindOp a (GetLinespacing ()) (Match r), Op (GetLinespacing ()) r a impl) => Ref a -> impl+getLinespacing = dispatch (undefined :: GetLinespacing ())+data SetLinespacing a+setLinespacing :: (FindOp a (SetLinespacing ()) (Match r), Op (SetLinespacing ()) r a impl) => Ref a -> impl+setLinespacing = dispatch (undefined :: SetLinespacing ())+data GetConnectorcolor a+getConnectorcolor :: (FindOp a (GetConnectorcolor ()) (Match r), Op (GetConnectorcolor ()) r a impl) => Ref a -> impl+getConnectorcolor = dispatch (undefined :: GetConnectorcolor ())+data SetConnectorcolor a+setConnectorcolor :: (FindOp a (SetConnectorcolor ()) (Match r), Op (SetConnectorcolor ()) r a impl) => Ref a -> impl+setConnectorcolor = dispatch (undefined :: SetConnectorcolor ())+data GetConnectorstyle a+getConnectorstyle :: (FindOp a (GetConnectorstyle ()) (Match r), Op (GetConnectorstyle ()) r a impl) => Ref a -> impl+getConnectorstyle = dispatch (undefined :: GetConnectorstyle ())+data SetConnectorstyle a+setConnectorstyle :: (FindOp a (SetConnectorstyle ()) (Match r), Op (SetConnectorstyle ()) r a impl) => Ref a -> impl+setConnectorstyle = dispatch (undefined :: SetConnectorstyle ())+data GetConnectorwidth a+getConnectorwidth :: (FindOp a (GetConnectorwidth ()) (Match r), Op (GetConnectorwidth ()) r a impl) => Ref a -> impl+getConnectorwidth = dispatch (undefined :: GetConnectorwidth ())+data SetConnectorwidth a+setConnectorwidth :: (FindOp a (SetConnectorwidth ()) (Match r), Op (SetConnectorwidth ()) r a impl) => Ref a -> impl+setConnectorwidth = dispatch (undefined :: SetConnectorwidth ())+data GetOpenicon a+getOpenicon :: (FindOp a (GetOpenicon ()) (Match r), Op (GetOpenicon ()) r a impl) => Ref a -> impl+getOpenicon = dispatch (undefined :: GetOpenicon ())+data SetOpenicon a+setOpenicon :: (FindOp a (SetOpenicon ()) (Match r), Op (SetOpenicon ()) r a impl) => Ref a -> impl+setOpenicon = dispatch (undefined :: SetOpenicon ())+data GetCloseicon a+getCloseicon :: (FindOp a (GetCloseicon ()) (Match r), Op (GetCloseicon ()) r a impl) => Ref a -> impl+getCloseicon = dispatch (undefined :: GetCloseicon ())+data SetCloseicon a+setCloseicon :: (FindOp a (SetCloseicon ()) (Match r), Op (SetCloseicon ()) r a impl) => Ref a -> impl+setCloseicon = dispatch (undefined :: SetCloseicon ())+data GetUsericon a+getUsericon :: (FindOp a (GetUsericon ()) (Match r), Op (GetUsericon ()) r a impl) => Ref a -> impl+getUsericon = dispatch (undefined :: GetUsericon ())+data SetUsericon a+setUsericon :: (FindOp a (SetUsericon ()) (Match r), Op (SetUsericon ()) r a impl) => Ref a -> impl+setUsericon = dispatch (undefined :: SetUsericon ())+data GetShowcollapse a+getShowcollapse :: (FindOp a (GetShowcollapse ()) (Match r), Op (GetShowcollapse ()) r a impl) => Ref a -> impl+getShowcollapse = dispatch (undefined :: GetShowcollapse ())+data SetShowcollapse a+setShowcollapse :: (FindOp a (SetShowcollapse ()) (Match r), Op (SetShowcollapse ()) r a impl) => Ref a -> impl+setShowcollapse = dispatch (undefined :: SetShowcollapse ())+data GetSortorder a+getSortorder :: (FindOp a (GetSortorder ()) (Match r), Op (GetSortorder ()) r a impl) => Ref a -> impl+getSortorder = dispatch (undefined :: GetSortorder ())+data SetSortorder a+setSortorder :: (FindOp a (SetSortorder ()) (Match r), Op (SetSortorder ()) r a impl) => Ref a -> impl+setSortorder = dispatch (undefined :: SetSortorder ())+data GetSelectbox a+getSelectbox :: (FindOp a (GetSelectbox ()) (Match r), Op (GetSelectbox ()) r a impl) => Ref a -> impl+getSelectbox = dispatch (undefined :: GetSelectbox ())+data SetSelectbox a+setSelectbox :: (FindOp a (SetSelectbox ()) (Match r), Op (SetSelectbox ()) r a impl) => Ref a -> impl+setSelectbox = dispatch (undefined :: SetSelectbox ())+data GetShowroot a+getShowroot :: (FindOp a (GetShowroot ()) (Match r), Op (GetShowroot ()) r a impl) => Ref a -> impl+getShowroot = dispatch (undefined :: GetShowroot ())+data SetShowroot a+setShowroot :: (FindOp a (SetShowroot ()) (Match r), Op (SetShowroot ()) r a impl) => Ref a -> impl+setShowroot = dispatch (undefined :: SetShowroot ())+data GetSelectmode a+getSelectmode :: (FindOp a (GetSelectmode ()) (Match r), Op (GetSelectmode ()) r a impl) => Ref a -> impl+getSelectmode = dispatch (undefined :: GetSelectmode ())+data SetSelectmode a+setSelectmode :: (FindOp a (SetSelectmode ()) (Match r), Op (SetSelectmode ()) r a impl) => Ref a -> impl+setSelectmode = dispatch (undefined :: SetSelectmode ())++data CTreeItem parent+type TreeItem = CTreeItem Base+type TreeItemFuncs =+  (Destroy+  (GetX+  (GetY+  (GetW+  (GetH+  (GetX+  (ShowSelf+  (SetLabel+  (GetLabel+  (SetLabelfont+  (GetLabelfont+  (SetLabelsize+  (GetLabelsize+  (SetLabelcolor+  (GetLabelcolor+  (GetLabelfgcolor+  (SetLabelfgcolor+  (SetLabelbgcolor+  (GetLabelbgcolor+  (SetWidget+  (GetWidget+  (Children+  (Child+  (HasChildren+  (FindChild+  (RemoveChild+  (RemoveChild+  (ClearChildren+  (SwapChildren+  (SwapChildrenByTreeItem+  (FindInChildren+  (FindItem+  (Add+  (AddAt+  (Insert+  (InsertAbove+  (Deparent+  (Reparent+  (Move+  (MoveTo+  (GetDepth+  (Prev+  (Next+  (NextSibling+  (PrevSibling+  (UpdatePrevNext+  (NextDisplayed+  (PrevDisplayed+  (GetParent+  (SetParent+  (Open+  (Close+  (IsOpen+  (IsClose+  (OpenToggle+  (Select+  (SelectWithVal+  (SelectToggle+  (SelectAll+  (Deselect+  (DeselectAll+  (IsSelected+  (Activate+  (ActivateWithVal+  (IsActive+  (Visible+  (IsVisible+  (VisibleR+  (SetUsericon+  (GetUsericon+  (FindClicked+  (EventOnCollapseIcon+  (EventOnLabel+  (IsRoot+  (LabelX+  (LabelY+  (LabelW+  (LabelH+  ()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))++instance Functions TreeItem TreeItemFuncs++data ShowSelf a+showSelf :: (FindOp a (ShowSelf ()) (Match r), Op (ShowSelf ()) r a impl) => Ref a -> impl+showSelf = dispatch (undefined :: ShowSelf ())+data SetWidget a+setWidget :: (FindOp a (SetWidget ()) (Match r), Op (SetWidget ()) r a impl) => Ref a -> impl+setWidget = dispatch (undefined :: SetWidget ())+data GetWidget a+getWidget :: (FindOp a (GetWidget ()) (Match r), Op (GetWidget ()) r a impl) => Ref a -> impl+getWidget = dispatch (undefined :: GetWidget ())+data Child a+child :: (FindOp a (Child ()) (Match r), Op (Child ()) r a impl) => Ref a -> impl+child = dispatch (undefined :: Child ())+data HasChildren a+hasChildren :: (FindOp a (HasChildren ()) (Match r), Op (HasChildren ()) r a impl) => Ref a -> impl+hasChildren = dispatch (undefined :: HasChildren ())+data FindChild a+findChild :: (FindOp a (FindChild ()) (Match r), Op (FindChild ()) r a impl) => Ref a -> impl+findChild = dispatch (undefined :: FindChild ())+data RemoveChild a+removeChild :: (FindOp a (RemoveChild ()) (Match r), Op (RemoveChild ()) r a impl) => Ref a -> impl+removeChild = dispatch (undefined :: RemoveChild ())+data ClearChildren a+clearChildren :: (FindOp a (ClearChildren ()) (Match r), Op (ClearChildren ()) r a impl) => Ref a -> impl+clearChildren = dispatch (undefined :: ClearChildren ())+data SwapChildren a+swapChildren :: (FindOp a (SwapChildren ()) (Match r), Op (SwapChildren ()) r a impl) => Ref a -> impl+swapChildren = dispatch (undefined :: SwapChildren ())+data SwapChildrenByTreeItem a+swapChildrenByTreeItem :: (FindOp a (SwapChildrenByTreeItem ()) (Match r), Op (SwapChildrenByTreeItem ()) r a impl) => Ref a -> impl+swapChildrenByTreeItem = dispatch (undefined :: SwapChildrenByTreeItem ())+data FindInChildren a+findInChildren :: (FindOp a (FindInChildren ()) (Match r), Op (FindInChildren ()) r a impl) => Ref a -> impl+findInChildren = dispatch (undefined :: FindInChildren ())+data FindItem a+findItem :: (FindOp a (FindItem ()) (Match r), Op (FindItem ()) r a impl) => Ref a -> impl+findItem = dispatch (undefined :: FindItem ())+data AddAt a+addAt :: (FindOp a (AddAt ()) (Match r), Op (AddAt ()) r a impl) => Ref a -> impl+addAt = dispatch (undefined :: AddAt ())+data InsertAbove a+insertAbove :: (FindOp a (InsertAbove ()) (Match r), Op (InsertAbove ()) r a impl) => Ref a -> impl+insertAbove = dispatch (undefined :: InsertAbove ())+data Deparent a+deparent :: (FindOp a (Deparent ()) (Match r), Op (Deparent ()) r a impl) => Ref a -> impl+deparent = dispatch (undefined :: Deparent ())+data Reparent a+reparent :: (FindOp a (Reparent ()) (Match r), Op (Reparent ()) r a impl) => Ref a -> impl+reparent = dispatch (undefined :: Reparent ())+data MoveTo a+moveTo :: (FindOp a (MoveTo ()) (Match r), Op (MoveTo ()) r a impl) => Ref a -> impl+moveTo = dispatch (undefined :: MoveTo ())+data GetDepth a+getDepth :: (FindOp a (GetDepth ()) (Match r), Op (GetDepth ()) r a impl) => Ref a -> impl+getDepth = dispatch (undefined :: GetDepth ())+data NextSibling a+nextSibling :: (FindOp a (NextSibling ()) (Match r), Op (NextSibling ()) r a impl) => Ref a -> impl+nextSibling = dispatch (undefined :: NextSibling ())+data PrevSibling a+prevSibling :: (FindOp a (PrevSibling ()) (Match r), Op (PrevSibling ()) r a impl) => Ref a -> impl+prevSibling = dispatch (undefined :: PrevSibling ())+data UpdatePrevNext a+updatePrevNext :: (FindOp a (UpdatePrevNext ()) (Match r), Op (UpdatePrevNext ()) r a impl) => Ref a -> impl+updatePrevNext = dispatch (undefined :: UpdatePrevNext ())+data NextDisplayed a+nextDisplayed :: (FindOp a (NextDisplayed ()) (Match r), Op (NextDisplayed ()) r a impl) => Ref a -> impl+nextDisplayed = dispatch (undefined :: NextDisplayed ())+data PrevDisplayed a+prevDisplayed :: (FindOp a (PrevDisplayed ()) (Match r), Op (PrevDisplayed ()) r a impl) => Ref a -> impl+prevDisplayed = dispatch (undefined :: PrevDisplayed ())+data Open a+open :: (FindOp a (Open ()) (Match r), Op (Open ()) r a impl) => Ref a -> impl+open = dispatch (undefined :: Open ())+data Close a+close :: (FindOp a (Close ()) (Match r), Op (Close ()) r a impl) => Ref a -> impl+close = dispatch (undefined :: Close ())+data IsOpen a+isOpen :: (FindOp a (IsOpen ()) (Match r), Op (IsOpen ()) r a impl) => Ref a -> impl+isOpen = dispatch (undefined :: IsOpen ())+data IsClose a+isClose :: (FindOp a (IsClose ()) (Match r), Op (IsClose ()) r a impl) => Ref a -> impl+isClose = dispatch (undefined :: IsClose ())+data OpenToggle a+openToggle :: (FindOp a (OpenToggle ()) (Match r), Op (OpenToggle ()) r a impl) => Ref a -> impl+openToggle = dispatch (undefined :: OpenToggle ())+data SelectWithVal a+selectWithVal :: (FindOp a (SelectWithVal ()) (Match r), Op (SelectWithVal ()) r a impl) => Ref a -> impl+selectWithVal = dispatch (undefined :: SelectWithVal ())+data SelectToggle a+selectToggle :: (FindOp a (SelectToggle ()) (Match r), Op (SelectToggle ()) r a impl) => Ref a -> impl+selectToggle = dispatch (undefined :: SelectToggle ())+data SelectAll a+selectAll :: (FindOp a (SelectAll ()) (Match r), Op (SelectAll ()) r a impl) => Ref a -> impl+selectAll = dispatch (undefined :: SelectAll ())+data DeselectAll a+deselectAll :: (FindOp a (DeselectAll ()) (Match r), Op (DeselectAll ()) r a impl) => Ref a -> impl+deselectAll = dispatch (undefined :: DeselectAll ())+data ActivateWithVal a+activateWithVal :: (FindOp a (ActivateWithVal ()) (Match r), Op (ActivateWithVal ()) r a impl) => Ref a -> impl+activateWithVal = dispatch (undefined :: ActivateWithVal ())+data IsActive a+isActive :: (FindOp a (IsActive ()) (Match r), Op (IsActive ()) r a impl) => Ref a -> impl+isActive = dispatch (undefined :: IsActive ())+data IsVisible a+isVisible :: (FindOp a (IsVisible ()) (Match r), Op (IsVisible ()) r a impl) => Ref a -> impl+isVisible = dispatch (undefined :: IsVisible ())+data VisibleR a+visibleR :: (FindOp a (VisibleR ()) (Match r), Op (VisibleR ()) r a impl) => Ref a -> impl+visibleR = dispatch (undefined :: VisibleR ())+data FindClicked a+findClicked :: (FindOp a (FindClicked ()) (Match r), Op (FindClicked ()) r a impl) => Ref a -> impl+findClicked = dispatch (undefined :: FindClicked ())+data EventOnCollapseIcon a+eventOnCollapseIcon :: (FindOp a (EventOnCollapseIcon ()) (Match r), Op (EventOnCollapseIcon ()) r a impl) => Ref a -> impl+eventOnCollapseIcon = dispatch (undefined :: EventOnCollapseIcon ())+data EventOnLabel a+eventOnLabel :: (FindOp a (EventOnLabel ()) (Match r), Op (EventOnLabel ()) r a impl) => Ref a -> impl+eventOnLabel = dispatch (undefined :: EventOnLabel ())+data IsRoot a+isRoot :: (FindOp a (IsRoot ()) (Match r), Op (IsRoot ()) r a impl) => Ref a -> impl+isRoot = dispatch (undefined :: IsRoot ())+data LabelX a+labelX :: (FindOp a (LabelX ()) (Match r), Op (LabelX ()) r a impl) => Ref a -> impl+labelX = dispatch (undefined :: LabelX ())+data LabelY a+labelY :: (FindOp a (LabelY ()) (Match r), Op (LabelY ()) r a impl) => Ref a -> impl+labelY = dispatch (undefined :: LabelY ())+data LabelW a+labelW :: (FindOp a (LabelW ()) (Match r), Op (LabelW ()) r a impl) => Ref a -> impl+labelW = dispatch (undefined :: LabelW ())+data LabelH a+labelH :: (FindOp a (LabelH ()) (Match r), Op (LabelH ()) r a impl) => Ref a -> impl+labelH = dispatch (undefined :: LabelH ())++data CTree parent+type Tree = CTree Group+type TreeFuncs =+  (Destroy+  (Handle+  (Draw+  (ShowSelf+  (RootLabel+  (Root+  (Add+  (AddAt+  (InsertAbove+  (Insert+  (Remove+  (Clear+  (ClearChildren+  (FindItem+  (ItemPathname+  (ItemClicked+  (GetFirst+  (FirstVisible+  (Next+  (NextWithItem+  (Prev+  (PrevWithItem+  (GetLast+  (LastVisible+  (FirstSelectedItem+  (NextSelectedItem+  (NextSelectedItemWithItem+  (Open+  (OpenAndCallback+  (OpenToggle+  (OpenToggleAndCallback+  (Close+  (CloseAndCallback+  (IsOpen+  (IsClose+  (Select+  (SelectAndCallback+  (SelectToggle+  (SelectToggleAndCallback+  (Deselect+  (DeselectAndCallback+  (SelectOnly+  (SelectOnlyAndCallback+  (SelectAll+  (SelectAllAndCallback+  (SetItemFocus+  (GetItemFocus+  (IsSelectedWithItem+  (GetItemLabelfont+  (SetItemLabelfont+  (GetItemLabelsize+  (SetItemLabelsize+  (GetItemLabelfgcolor+  (SetItemLabelfgcolor+  (GetItemLabelbgcolor+  (SetItemLabelbgcolor+  (GetConnectorcolor+  (SetConnectorcolor+  (GetMarginleft+  (SetMarginleft+  (GetMargintop+  (SetMargintop+  (GetLinespacing+  (SetLinespacing+  (GetOpenchildMarginbottom+  (SetOpenchildMarginbottom+  (GetUsericonmarginleft+  (SetUsericonmarginleft+  (GetLabelmarginleft+  (SetLabelmarginleft+  (GetConnectorwidth+  (SetConnectorwidth+  (GetUsericon+  (SetUsericon+  (GetOpenicon+  (SetOpenicon+  (GetCloseicon+  (SetCloseicon+  (GetShowcollapse+  (SetShowcollapse+  (GetShowroot+  (SetShowroot+  (GetConnectorstyle+  (SetConnectorstyle+  (GetSortorder+  (SetSortorder+  (GetSelectbox+  (SetSelectbox+  (Selectmode+  (SetSelectmode+  (Displayed+  (ShowItemWithYoff+  (ShowItemTop+  (ShowItemMiddle+  (ShowItemBottom+  (Display+  (GetVposition+  (SetVposition+  (IsScrollbar+  (GetScrollbarSize+  (SetScrollbarSize+  (IsVscrollVisible+  (SetCallbackItem+  (GetCallbackItem+  (SetCallbackReason+  (GetCallbackReason+  ()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))++instance Functions Tree TreeFuncs++data RootLabel a+rootLabel :: (FindOp a (RootLabel ()) (Match r), Op (RootLabel ()) r a impl) => Ref a -> impl+rootLabel = dispatch (undefined :: RootLabel ())+data Root a+root :: (FindOp a (Root ()) (Match r), Op (Root ()) r a impl) => Ref a -> impl+root = dispatch (undefined :: Root ())+data ItemClicked a+itemClicked :: (FindOp a (ItemClicked ()) (Match r), Op (ItemClicked ()) r a impl) => Ref a -> impl+itemClicked = dispatch (undefined :: ItemClicked ())+data FirstVisible a+firstVisible :: (FindOp a (FirstVisible ()) (Match r), Op (FirstVisible ()) r a impl) => Ref a -> impl+firstVisible = dispatch (undefined :: FirstVisible ())+data NextWithItem a+nextWithItem :: (FindOp a (NextWithItem ()) (Match r), Op (NextWithItem ()) r a impl) => Ref a -> impl+nextWithItem = dispatch (undefined :: NextWithItem ())+data PrevWithItem a+prevWithItem :: (FindOp a (PrevWithItem ()) (Match r), Op (PrevWithItem ()) r a impl) => Ref a -> impl+prevWithItem = dispatch (undefined :: PrevWithItem ())+data GetLast a+getLast :: (FindOp a (GetLast ()) (Match r), Op (GetLast ()) r a impl) => Ref a -> impl+getLast = dispatch (undefined :: GetLast ())+data LastVisible a+lastVisible :: (FindOp a (LastVisible ()) (Match r), Op (LastVisible ()) r a impl) => Ref a -> impl+lastVisible = dispatch (undefined :: LastVisible ())+data FirstSelectedItem a+firstSelectedItem :: (FindOp a (FirstSelectedItem ()) (Match r), Op (FirstSelectedItem ()) r a impl) => Ref a -> impl+firstSelectedItem = dispatch (undefined :: FirstSelectedItem ())+data NextSelectedItem a+nextSelectedItem :: (FindOp a (NextSelectedItem ()) (Match r), Op (NextSelectedItem ()) r a impl) => Ref a -> impl+nextSelectedItem = dispatch (undefined :: NextSelectedItem ())+data NextSelectedItemWithItem a+nextSelectedItemWithItem :: (FindOp a (NextSelectedItemWithItem ()) (Match r), Op (NextSelectedItemWithItem ()) r a impl) => Ref a -> impl+nextSelectedItemWithItem = dispatch (undefined :: NextSelectedItemWithItem ())+data OpenAndCallback a+openAndCallback :: (FindOp a (OpenAndCallback ()) (Match r), Op (OpenAndCallback ()) r a impl) => Ref a -> impl+openAndCallback = dispatch (undefined :: OpenAndCallback ())+data OpenToggleAndCallback a+openToggleAndCallback :: (FindOp a (OpenToggleAndCallback ()) (Match r), Op (OpenToggleAndCallback ()) r a impl) => Ref a -> impl+openToggleAndCallback = dispatch (undefined :: OpenToggleAndCallback ())+data TreeMenuItemLocator a+treeMenuItemLocator :: (FindOp a (TreeMenuItemLocator ()) (Match r), Op (TreeMenuItemLocator ()) r a impl) => Ref a -> impl+treeMenuItemLocator = dispatch (undefined :: TreeMenuItemLocator ())+data CloseAndCallback a+closeAndCallback :: (FindOp a (CloseAndCallback ()) (Match r), Op (CloseAndCallback ()) r a impl) => Ref a -> impl+closeAndCallback = dispatch (undefined :: CloseAndCallback ())+data SelectAndCallback a+selectAndCallback :: (FindOp a (SelectAndCallback ()) (Match r), Op (SelectAndCallback ()) r a impl) => Ref a -> impl+selectAndCallback = dispatch (undefined :: SelectAndCallback ())+data SelectToggleAndCallback a+selectToggleAndCallback :: (FindOp a (SelectToggleAndCallback ()) (Match r), Op (SelectToggleAndCallback ()) r a impl) => Ref a -> impl+selectToggleAndCallback = dispatch (undefined :: SelectToggleAndCallback ())+data SelectAllAndCallback a+selectAllAndCallback :: (FindOp a (SelectAllAndCallback ()) (Match r), Op (SelectAllAndCallback ()) r a impl) => Ref a -> impl+selectAllAndCallback = dispatch (undefined :: SelectAllAndCallback ())+data SetItemFocus a+setItemFocus :: (FindOp a (SetItemFocus ()) (Match r), Op (SetItemFocus ()) r a impl) => Ref a -> impl+setItemFocus = dispatch (undefined :: SetItemFocus ())+data GetItemFocus a+getItemFocus :: (FindOp a (GetItemFocus ()) (Match r), Op (GetItemFocus ()) r a impl) => Ref a -> impl+getItemFocus = dispatch (undefined :: GetItemFocus ())+data IsSelectedWithItem a+isSelectedWithItem :: (FindOp a (IsSelectedWithItem ()) (Match r), Op (IsSelectedWithItem ()) r a impl) => Ref a -> impl+isSelectedWithItem = dispatch (undefined :: IsSelectedWithItem ())+data SetItemLabelfont a+setItemLabelfont :: (FindOp a (SetItemLabelfont ()) (Match r), Op (SetItemLabelfont ()) r a impl) => Ref a -> impl+setItemLabelfont = dispatch (undefined :: SetItemLabelfont ())+data GetItemLabelfgcolor a+getItemLabelfgcolor :: (FindOp a (GetItemLabelfgcolor ()) (Match r), Op (GetItemLabelfgcolor ()) r a impl) => Ref a -> impl+getItemLabelfgcolor = dispatch (undefined :: GetItemLabelfgcolor ())+data Selectmode a+selectmode :: (FindOp a (Selectmode ()) (Match r), Op (Selectmode ()) r a impl) => Ref a -> impl+selectmode = dispatch (undefined :: Selectmode ())+data ShowItemWithYoff a+showItemWithYoff :: (FindOp a (ShowItemWithYoff ()) (Match r), Op (ShowItemWithYoff ()) r a impl) => Ref a -> impl+showItemWithYoff = dispatch (undefined :: ShowItemWithYoff ())+data ShowItemTop a+showItemTop :: (FindOp a (ShowItemTop ()) (Match r), Op (ShowItemTop ()) r a impl) => Ref a -> impl+showItemTop = dispatch (undefined :: ShowItemTop ())+data ShowItemMiddle a+showItemMiddle :: (FindOp a (ShowItemMiddle ()) (Match r), Op (ShowItemMiddle ()) r a impl) => Ref a -> impl+showItemMiddle = dispatch (undefined :: ShowItemMiddle ())+data ShowItemBottom a+showItemBottom :: (FindOp a (ShowItemBottom ()) (Match r), Op (ShowItemBottom ()) r a impl) => Ref a -> impl+showItemBottom = dispatch (undefined :: ShowItemBottom ())+data Display a+display :: (FindOp a (Display ()) (Match r), Op (Display ()) r a impl) => Ref a -> impl+display = dispatch (undefined :: Display ())+data GetVposition a+getVposition :: (FindOp a (GetVposition ()) (Match r), Op (GetVposition ()) r a impl) => Ref a -> impl+getVposition = dispatch (undefined :: GetVposition ())+data SetVposition a+setVposition :: (FindOp a (SetVposition ()) (Match r), Op (SetVposition ()) r a impl) => Ref a -> impl+setVposition = dispatch (undefined :: SetVposition ())+data IsScrollbar a+isScrollbar :: (FindOp a (IsScrollbar ()) (Match r), Op (IsScrollbar ()) r a impl) => Ref a -> impl+isScrollbar = dispatch (undefined :: IsScrollbar ())+data IsVscrollVisible a+isVscrollVisible :: (FindOp a (IsVscrollVisible ()) (Match r), Op (IsVscrollVisible ()) r a impl) => Ref a -> impl+isVscrollVisible = dispatch (undefined :: IsVscrollVisible ())+data SetCallbackItem a+setCallbackItem :: (FindOp a (SetCallbackItem ()) (Match r), Op (SetCallbackItem ()) r a impl) => Ref a -> impl+setCallbackItem = dispatch (undefined :: SetCallbackItem ())+data GetCallbackItem a+getCallbackItem :: (FindOp a (GetCallbackItem ()) (Match r), Op (GetCallbackItem ()) r a impl) => Ref a -> impl+getCallbackItem = dispatch (undefined :: GetCallbackItem ())+data SetCallbackReason a+setCallbackReason :: (FindOp a (SetCallbackReason ()) (Match r), Op (SetCallbackReason ()) r a impl) => Ref a -> impl+setCallbackReason = dispatch (undefined :: SetCallbackReason ())+data GetCallbackReason a+getCallbackReason :: (FindOp a (GetCallbackReason ()) (Match r), Op (GetCallbackReason ()) r a impl) => Ref a -> impl+getCallbackReason = dispatch (undefined :: GetCallbackReason ())++data CTextSelection parent+type TextSelection = CTextSelection Base+type TextSelectionFuncs =+  (Set+  (Update+  (Start+  (End+  (Selected+  (SetSelected+  (Includes+  (GetPosition+  ()))))))))+instance Functions TextSelection TextSelectionFuncs+data Update a+update :: (FindOp a (Update ()) (Match r), Op (Update ()) r a impl) => Ref a -> impl+update = dispatch (undefined :: Update ())+data Start a+start :: (FindOp a (Start ()) (Match r), Op (Start ()) r a impl) => Ref a -> impl+start = dispatch (undefined :: Start ())+data SetSelected a+setSelected :: (FindOp a (SetSelected ()) (Match r), Op (SetSelected ()) r a impl) => Ref a -> impl+setSelected = dispatch (undefined :: SetSelected ())+data Includes a+includes :: (FindOp a (Includes ()) (Match r), Op (Includes ()) r a impl) => Ref a -> impl+includes = dispatch (undefined :: Includes ())++data CTextBuffer parent+type TextBuffer = CTextBuffer Base+type TextBufferFuncs =+  (Destroy+  (InputFileWasTranscoded+  (FileEncodingWarningMessage+  (GetLength+  (GetText+  (SetText+  (TextRange+  (CharAt+  (ByteAt+  (Insert+  (AppendToBuffer+  (Remove+  (Replace+  (Copy+  (Undo+  (CanUndo+  (Insertfile+  (InsertfileWithBuflen+  (Appendfile+  (AppendfileWithBuflen+  (Loadfile+  (LoadfileWithBuflen+  (Outputfile+  (OutputfileWithBuflen+  (Savefile+  (SavefileWithBuflen+  (GetTabDistance+  (SetTabDistance+  (Select+  (Selected+  (Unselect+  (SelectionPosition+  (SelectionText+  (RemoveSelection+  (ReplaceSelection+  (SecondarySelect+  (SecondarySelected+  (SecondaryUnselect+  (SecondarySelectionPosition+  (SecondarySelectionText+  (RemoveSecondarySelection+  (ReplaceSecondarySelection+  (SetHighlight+  (GetHighlight+  (Unhighlight+  (HighlightPosition+  (HighlightText+  (AddModifyCallback+  (RemoveModifyCallback+  (CallModifyCallbacks+  (AddPredeleteCallback+  (RemovePredeleteCallback+  (CallPredeleteCallbacks+  (LineText+  (LineStart+  (LineEnd+  (WordStart+  (WordEnd+  (CountDisplayedCharacters+  (SkipDisplayedCharacters+  (CountLines+  (SkipLines+  (RewindLines+  (FindcharForward+  (FindcharBackward+  (SearchForwardWithMatchcase+  (SearchBackwardWithMatchcase+  (PrimarySelection+  (SecondarySelection+  (HighlightSelection+  (PrevChar+  (PrevCharClipped+  (NextChar+  (NextCharClipped+  (Utf8Align+  ())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))+instance Functions TextBuffer TextBufferFuncs++data InputFileWasTranscoded a+inputFileWasTranscoded :: (FindOp a (InputFileWasTranscoded ()) (Match r), Op (InputFileWasTranscoded ()) r a impl) => Ref a -> impl+inputFileWasTranscoded = dispatch (undefined :: InputFileWasTranscoded ())+data FileEncodingWarningMessage a+fileEncodingWarningMessage :: (FindOp a (FileEncodingWarningMessage ()) (Match r), Op (FileEncodingWarningMessage ()) r a impl) => Ref a -> impl+fileEncodingWarningMessage = dispatch (undefined :: FileEncodingWarningMessage ())+data GetLength a+getLength :: (FindOp a (GetLength ()) (Match r), Op (GetLength ()) r a impl) => Ref a -> impl+getLength = dispatch (undefined :: GetLength ())+data TextRange a+textRange :: (FindOp a (TextRange ()) (Match r), Op (TextRange ()) r a impl) => Ref a -> impl+textRange = dispatch (undefined :: TextRange ())+data CharAt a+charAt :: (FindOp a (CharAt ()) (Match r), Op (CharAt ()) r a impl) => Ref a -> impl+charAt = dispatch (undefined :: CharAt ())+data ByteAt a+byteAt :: (FindOp a (ByteAt ()) (Match r), Op (ByteAt ()) r a impl) => Ref a -> impl+byteAt = dispatch (undefined :: ByteAt ())+data AppendToBuffer a+appendToBuffer :: (FindOp a (AppendToBuffer ()) (Match r), Op (AppendToBuffer ()) r a impl) => Ref a -> impl+appendToBuffer = dispatch (undefined :: AppendToBuffer ())+data CanUndo a+canUndo :: (FindOp a (CanUndo ()) (Match r), Op (CanUndo ()) r a impl) => Ref a -> impl+canUndo = dispatch (undefined :: CanUndo ())+data Insertfile a+insertfile :: (FindOp a (Insertfile ()) (Match r), Op (Insertfile ()) r a impl) => Ref a -> impl+insertfile = dispatch (undefined :: Insertfile ())+data InsertfileWithBuflen a+insertfileWithBuflen :: (FindOp a (InsertfileWithBuflen ()) (Match r), Op (InsertfileWithBuflen ()) r a impl) => Ref a -> impl+insertfileWithBuflen = dispatch (undefined :: InsertfileWithBuflen ())+data Appendfile a+appendfile :: (FindOp a (Appendfile ()) (Match r), Op (Appendfile ()) r a impl) => Ref a -> impl+appendfile = dispatch (undefined :: Appendfile ())+data AppendfileWithBuflen a+appendfileWithBuflen :: (FindOp a (AppendfileWithBuflen ()) (Match r), Op (AppendfileWithBuflen ()) r a impl) => Ref a -> impl+appendfileWithBuflen = dispatch (undefined :: AppendfileWithBuflen ())+data Loadfile a+loadfile :: (FindOp a (Loadfile ()) (Match r), Op (Loadfile ()) r a impl) => Ref a -> impl+loadfile = dispatch (undefined :: Loadfile ())+data LoadfileWithBuflen a+loadfileWithBuflen :: (FindOp a (LoadfileWithBuflen ()) (Match r), Op (LoadfileWithBuflen ()) r a impl) => Ref a -> impl+loadfileWithBuflen = dispatch (undefined :: LoadfileWithBuflen ())+data Outputfile a+outputfile :: (FindOp a (Outputfile ()) (Match r), Op (Outputfile ()) r a impl) => Ref a -> impl+outputfile = dispatch (undefined :: Outputfile ())+data OutputfileWithBuflen a+outputfileWithBuflen :: (FindOp a (OutputfileWithBuflen ()) (Match r), Op (OutputfileWithBuflen ()) r a impl) => Ref a -> impl+outputfileWithBuflen = dispatch (undefined :: OutputfileWithBuflen ())+data Savefile a+savefile :: (FindOp a (Savefile ()) (Match r), Op (Savefile ()) r a impl) => Ref a -> impl+savefile = dispatch (undefined :: Savefile ())+data SavefileWithBuflen a+savefileWithBuflen :: (FindOp a (SavefileWithBuflen ()) (Match r), Op (SavefileWithBuflen ()) r a impl) => Ref a -> impl+savefileWithBuflen = dispatch (undefined :: SavefileWithBuflen ())+data GetTabDistance a+getTabDistance :: (FindOp a (GetTabDistance ()) (Match r), Op (GetTabDistance ()) r a impl) => Ref a -> impl+getTabDistance = dispatch (undefined :: GetTabDistance ())+data SetTabDistance a+setTabDistance :: (FindOp a (SetTabDistance ()) (Match r), Op (SetTabDistance ()) r a impl) => Ref a -> impl+setTabDistance = dispatch (undefined :: SetTabDistance ())+data Unselect a+unselect :: (FindOp a (Unselect ()) (Match r), Op (Unselect ()) r a impl) => Ref a -> impl+unselect = dispatch (undefined :: Unselect ())+data SelectionPosition a+selectionPosition :: (FindOp a (SelectionPosition ()) (Match r), Op (SelectionPosition ()) r a impl) => Ref a -> impl+selectionPosition = dispatch (undefined :: SelectionPosition ())+data SelectionText a+selectionText :: (FindOp a (SelectionText ()) (Match r), Op (SelectionText ()) r a impl) => Ref a -> impl+selectionText = dispatch (undefined :: SelectionText ())+data RemoveSelection a+removeSelection :: (FindOp a (RemoveSelection ()) (Match r), Op (RemoveSelection ()) r a impl) => Ref a -> impl+removeSelection = dispatch (undefined :: RemoveSelection ())+data ReplaceSelection a+replaceSelection :: (FindOp a (ReplaceSelection ()) (Match r), Op (ReplaceSelection ()) r a impl) => Ref a -> impl+replaceSelection = dispatch (undefined :: ReplaceSelection ())+data SecondarySelect a+secondarySelect :: (FindOp a (SecondarySelect ()) (Match r), Op (SecondarySelect ()) r a impl) => Ref a -> impl+secondarySelect = dispatch (undefined :: SecondarySelect ())+data SecondarySelected a+secondarySelected :: (FindOp a (SecondarySelected ()) (Match r), Op (SecondarySelected ()) r a impl) => Ref a -> impl+secondarySelected = dispatch (undefined :: SecondarySelected ())+data SecondaryUnselect a+secondaryUnselect :: (FindOp a (SecondaryUnselect ()) (Match r), Op (SecondaryUnselect ()) r a impl) => Ref a -> impl+secondaryUnselect = dispatch (undefined :: SecondaryUnselect ())+data SecondarySelectionPosition a+secondarySelectionPosition :: (FindOp a (SecondarySelectionPosition ()) (Match r), Op (SecondarySelectionPosition ()) r a impl) => Ref a -> impl+secondarySelectionPosition = dispatch (undefined :: SecondarySelectionPosition ())+data SecondarySelectionText a+secondarySelectionText :: (FindOp a (SecondarySelectionText ()) (Match r), Op (SecondarySelectionText ()) r a impl) => Ref a -> impl+secondarySelectionText = dispatch (undefined :: SecondarySelectionText ())+data RemoveSecondarySelection a+removeSecondarySelection :: (FindOp a (RemoveSecondarySelection ()) (Match r), Op (RemoveSecondarySelection ()) r a impl) => Ref a -> impl+removeSecondarySelection = dispatch (undefined :: RemoveSecondarySelection ())+data ReplaceSecondarySelection a+replaceSecondarySelection :: (FindOp a (ReplaceSecondarySelection ()) (Match r), Op (ReplaceSecondarySelection ()) r a impl) => Ref a -> impl+replaceSecondarySelection = dispatch (undefined :: ReplaceSecondarySelection ())+data GetHighlight a+getHighlight :: (FindOp a (GetHighlight ()) (Match r), Op (GetHighlight ()) r a impl) => Ref a -> impl+getHighlight = dispatch (undefined :: GetHighlight ())+data SetHighlight a+setHighlight :: (FindOp a (SetHighlight ()) (Match r), Op (SetHighlight ()) r a impl) => Ref a -> impl+setHighlight = dispatch (undefined :: SetHighlight ())+data Unhighlight a+unhighlight :: (FindOp a (Unhighlight ()) (Match r), Op (Unhighlight ()) r a impl) => Ref a -> impl+unhighlight = dispatch (undefined :: Unhighlight ())+data HighlightPosition a+highlightPosition :: (FindOp a (HighlightPosition ()) (Match r), Op (HighlightPosition ()) r a impl) => Ref a -> impl+highlightPosition = dispatch (undefined :: HighlightPosition ())+data HighlightText a+highlightText :: (FindOp a (HighlightText ()) (Match r), Op (HighlightText ()) r a impl) => Ref a -> impl+highlightText = dispatch (undefined :: HighlightText ())+data AddModifyCallback a+addModifyCallback :: (FindOp a (AddModifyCallback ()) (Match r), Op (AddModifyCallback ()) r a impl) => Ref a -> impl+addModifyCallback = dispatch (undefined :: AddModifyCallback ())+data RemoveModifyCallback a+removeModifyCallback :: (FindOp a (RemoveModifyCallback ()) (Match r), Op (RemoveModifyCallback ()) r a impl) => Ref a -> impl+removeModifyCallback = dispatch (undefined :: RemoveModifyCallback ())+data CallModifyCallbacks a+callModifyCallbacks :: (FindOp a (CallModifyCallbacks ()) (Match r), Op (CallModifyCallbacks ()) r a impl) => Ref a -> impl+callModifyCallbacks = dispatch (undefined :: CallModifyCallbacks ())+data AddPredeleteCallback a+addPredeleteCallback :: (FindOp a (AddPredeleteCallback ()) (Match r), Op (AddPredeleteCallback ()) r a impl) => Ref a -> impl+addPredeleteCallback = dispatch (undefined :: AddPredeleteCallback ())+data RemovePredeleteCallback a+removePredeleteCallback :: (FindOp a (RemovePredeleteCallback ()) (Match r), Op (RemovePredeleteCallback ()) r a impl) => Ref a -> impl+removePredeleteCallback = dispatch (undefined :: RemovePredeleteCallback ())+data CallPredeleteCallbacks a+callPredeleteCallbacks :: (FindOp a (CallPredeleteCallbacks ()) (Match r), Op (CallPredeleteCallbacks ()) r a impl) => Ref a -> impl+callPredeleteCallbacks = dispatch (undefined :: CallPredeleteCallbacks ())+data LineText a+lineText :: (FindOp a (LineText ()) (Match r), Op (LineText ()) r a impl) => Ref a -> impl+lineText = dispatch (undefined :: LineText ())+data LineStart a+lineStart :: (FindOp a (LineStart ()) (Match r), Op (LineStart ()) r a impl) => Ref a -> impl+lineStart = dispatch (undefined :: LineStart ())+data LineEnd a+lineEnd :: (FindOp a (LineEnd ()) (Match r), Op (LineEnd ()) r a impl) => Ref a -> impl+lineEnd = dispatch (undefined :: LineEnd ())+data WordStart a+wordStart :: (FindOp a (WordStart ()) (Match r), Op (WordStart ()) r a impl) => Ref a -> impl+wordStart = dispatch (undefined :: WordStart ())+data WordEnd a+wordEnd :: (FindOp a (WordEnd ()) (Match r), Op (WordEnd ()) r a impl) => Ref a -> impl+wordEnd = dispatch (undefined :: WordEnd ())+data CountDisplayedCharacters a+countDisplayedCharacters :: (FindOp a (CountDisplayedCharacters ()) (Match r), Op (CountDisplayedCharacters ()) r a impl) => Ref a -> impl+countDisplayedCharacters = dispatch (undefined :: CountDisplayedCharacters ())+data SkipDisplayedCharacters a+skipDisplayedCharacters :: (FindOp a (SkipDisplayedCharacters ()) (Match r), Op (SkipDisplayedCharacters ()) r a impl) => Ref a -> impl+skipDisplayedCharacters = dispatch (undefined :: SkipDisplayedCharacters ())+data CountLines a+countLines :: (FindOp a (CountLines ()) (Match r), Op (CountLines ()) r a impl) => Ref a -> impl+countLines = dispatch (undefined :: CountLines ())+data SkipLines a+skipLines :: (FindOp a (SkipLines ()) (Match r), Op (SkipLines ()) r a impl) => Ref a -> impl+skipLines = dispatch (undefined :: SkipLines ())+data RewindLines a+rewindLines :: (FindOp a (RewindLines ()) (Match r), Op (RewindLines ()) r a impl) => Ref a -> impl+rewindLines = dispatch (undefined :: RewindLines ())+data FindcharForward a+findcharForward :: (FindOp a (FindcharForward ()) (Match r), Op (FindcharForward ()) r a impl) => Ref a -> impl+findcharForward = dispatch (undefined :: FindcharForward ())+data FindcharBackward a+findcharBackward :: (FindOp a (FindcharBackward ()) (Match r), Op (FindcharBackward ()) r a impl) => Ref a -> impl+findcharBackward = dispatch (undefined :: FindcharBackward ())+data SearchForwardWithMatchcase a+searchForwardWithMatchcase :: (FindOp a (SearchForwardWithMatchcase ()) (Match r), Op (SearchForwardWithMatchcase ()) r a impl) => Ref a -> impl+searchForwardWithMatchcase = dispatch (undefined :: SearchForwardWithMatchcase ())+data SearchBackwardWithMatchcase a+searchBackwardWithMatchcase :: (FindOp a (SearchBackwardWithMatchcase ()) (Match r), Op (SearchBackwardWithMatchcase ()) r a impl) => Ref a -> impl+searchBackwardWithMatchcase = dispatch (undefined :: SearchBackwardWithMatchcase ())+data PrimarySelection a+primarySelection :: (FindOp a (PrimarySelection ()) (Match r), Op (PrimarySelection ()) r a impl) => Ref a -> impl+primarySelection = dispatch (undefined :: PrimarySelection ())+data SecondarySelection a+secondarySelection :: (FindOp a (SecondarySelection ()) (Match r), Op (SecondarySelection ()) r a impl) => Ref a -> impl+secondarySelection = dispatch (undefined :: SecondarySelection ())+data HighlightSelection a+highlightSelection :: (FindOp a (HighlightSelection ()) (Match r), Op (HighlightSelection ()) r a impl) => Ref a -> impl+highlightSelection = dispatch (undefined :: HighlightSelection ())+data PrevChar a+prevChar :: (FindOp a (PrevChar ()) (Match r), Op (PrevChar ()) r a impl) => Ref a -> impl+prevChar = dispatch (undefined :: PrevChar ())+data PrevCharClipped a+prevCharClipped :: (FindOp a (PrevCharClipped ()) (Match r), Op (PrevCharClipped ()) r a impl) => Ref a -> impl+prevCharClipped = dispatch (undefined :: PrevCharClipped ())+data NextChar a+nextChar :: (FindOp a (NextChar ()) (Match r), Op (NextChar ()) r a impl) => Ref a -> impl+nextChar = dispatch (undefined :: NextChar ())+data NextCharClipped a+nextCharClipped :: (FindOp a (NextCharClipped ()) (Match r), Op (NextCharClipped ()) r a impl) => Ref a -> impl+nextCharClipped = dispatch (undefined :: NextCharClipped ())+data Utf8Align a+utf8Align :: (FindOp a (Utf8Align ()) (Match r), Op (Utf8Align ()) r a impl) => Ref a -> impl+utf8Align = dispatch (undefined :: Utf8Align ())++data CTextDisplay parent+type TextDisplay = CTextDisplay Group+type TextDisplayFuncs =+  (Destroy+  (Resize+  (Handle+  (SetBuffer+  (GetBuffer+  (RedisplayRange+  (Scroll+  (Overstrike+  (SetInsertPosition+  (GetInsertPosition+  (PositionToXy+  (InSelection+  (ShowInsertPosition+  (MoveRight+  (MoveLeft+  (MoveUp+  (MoveDown+  (CountLines+  (LineStart+  (LineEnd+  (SkipLines+  (RewindLines+  (NextWord+  (PreviousWord+  (ShowCursor+  (SetCursorStyle+  (GetCursorColor+  (SetCursorColor+  (GetScrollbarWidth+  (SetScrollbarWidth+  (GetScrollbarAlign+  (SetScrollbarAlign+  (WordStart+  (WordEnd+  (HighlightData+  (PositionStyle+  (GetShortcut+  (SetShortcut+  (GetTextfont+  (GetTextsize+  (SetTextsize+  (GetTextcolor+  (SetTextcolor+  (XToCol+  (ColToX+  (SetLinenumberWidth+  (GetLinenumberWidth+  (SetLinenumberFont+  (GetLinenumberFont+  (SetLinenumberSize+  (GetLinenumberSize+  (SetLinenumberFgcolor+  (GetLinenumberFgcolor+  (SetLinenumberBgcolor+  (GetLinenumberBgcolor+  (SetLinenumberAlign+  (GetLinenumberAlign+  (SetLinenumberFormat+  (GetLinenumberFormat+  ())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))+instance Functions TextDisplay TextDisplayFuncs++data SetBuffer a+setBuffer :: (FindOp a (SetBuffer ()) (Match r), Op (SetBuffer ()) r a impl) => Ref a -> impl+setBuffer = dispatch (undefined :: SetBuffer ())+data GetBuffer a+getBuffer :: (FindOp a (GetBuffer ()) (Match r), Op (GetBuffer ()) r a impl) => Ref a -> impl+getBuffer = dispatch (undefined :: GetBuffer ())+data RedisplayRange a+redisplayRange :: (FindOp a (RedisplayRange ()) (Match r), Op (RedisplayRange ()) r a impl) => Ref a -> impl+redisplayRange = dispatch (undefined :: RedisplayRange ())+data Scroll a+scroll :: (FindOp a (Scroll ()) (Match r), Op (Scroll ()) r a impl) => Ref a -> impl+scroll = dispatch (undefined :: Scroll ())+data Overstrike a+overstrike :: (FindOp a (Overstrike ()) (Match r), Op (Overstrike ()) r a impl) => Ref a -> impl+overstrike = dispatch (undefined :: Overstrike ())+data SetInsertPosition a+setInsertPosition :: (FindOp a (SetInsertPosition ()) (Match r), Op (SetInsertPosition ()) r a impl) => Ref a -> impl+setInsertPosition = dispatch (undefined :: SetInsertPosition ())+data GetInsertPosition a+getInsertPosition :: (FindOp a (GetInsertPosition ()) (Match r), Op (GetInsertPosition ()) r a impl) => Ref a -> impl+getInsertPosition = dispatch (undefined :: GetInsertPosition ())+data PositionToXy a+positionToXy :: (FindOp a (PositionToXy ()) (Match r), Op (PositionToXy ()) r a impl) => Ref a -> impl+positionToXy = dispatch (undefined :: PositionToXy ())+data InSelection a+inSelection :: (FindOp a (InSelection ()) (Match r), Op (InSelection ()) r a impl) => Ref a -> impl+inSelection = dispatch (undefined :: InSelection ())+data ShowInsertPosition a+showInsertPosition :: (FindOp a (ShowInsertPosition ()) (Match r), Op (ShowInsertPosition ()) r a impl) => Ref a -> impl+showInsertPosition = dispatch (undefined :: ShowInsertPosition ())+data MoveRight a+moveRight :: (FindOp a (MoveRight ()) (Match r), Op (MoveRight ()) r a impl) => Ref a -> impl+moveRight = dispatch (undefined :: MoveRight ())+data MoveLeft a+moveLeft :: (FindOp a (MoveLeft ()) (Match r), Op (MoveLeft ()) r a impl) => Ref a -> impl+moveLeft = dispatch (undefined :: MoveLeft ())+data MoveUp a+moveUp :: (FindOp a (MoveUp ()) (Match r), Op (MoveUp ()) r a impl) => Ref a -> impl+moveUp = dispatch (undefined :: MoveUp ())+data MoveDown a+moveDown :: (FindOp a (MoveDown ()) (Match r), Op (MoveDown ()) r a impl) => Ref a -> impl+moveDown = dispatch (undefined :: MoveDown ())+data NextWord a+nextWord :: (FindOp a (NextWord ()) (Match r), Op (NextWord ()) r a impl) => Ref a -> impl+nextWord = dispatch (undefined :: NextWord ())+data PreviousWord a+previousWord :: (FindOp a (PreviousWord ()) (Match r), Op (PreviousWord ()) r a impl) => Ref a -> impl+previousWord = dispatch (undefined :: PreviousWord ())+data ShowCursor a+showCursor :: (FindOp a (ShowCursor ()) (Match r), Op (ShowCursor ()) r a impl) => Ref a -> impl+showCursor = dispatch (undefined :: ShowCursor ())+data SetCursorStyle a+setCursorStyle :: (FindOp a (SetCursorStyle ()) (Match r), Op (SetCursorStyle ()) r a impl) => Ref a -> impl+setCursorStyle = dispatch (undefined :: SetCursorStyle ())+data GetScrollbarAlign a+getScrollbarAlign :: (FindOp a (GetScrollbarAlign ()) (Match r), Op (GetScrollbarAlign ()) r a impl) => Ref a -> impl+getScrollbarAlign = dispatch (undefined :: GetScrollbarAlign ())+data SetScrollbarAlign a+setScrollbarAlign :: (FindOp a (SetScrollbarAlign ()) (Match r), Op (SetScrollbarAlign ()) r a impl) => Ref a -> impl+setScrollbarAlign = dispatch (undefined :: SetScrollbarAlign ())+data HighlightData a+highlightData :: (FindOp a (HighlightData ()) (Match r), Op (HighlightData ()) r a impl) => Ref a -> impl+highlightData = dispatch (undefined :: HighlightData ())+data PositionStyle a+positionStyle :: (FindOp a (PositionStyle ()) (Match r), Op (PositionStyle ()) r a impl) => Ref a -> impl+positionStyle = dispatch (undefined :: PositionStyle ())+data XToCol a+xToCol :: (FindOp a (XToCol ()) (Match r), Op (XToCol ()) r a impl) => Ref a -> impl+xToCol = dispatch (undefined :: XToCol ())+data ColToX a+colToX :: (FindOp a (ColToX ()) (Match r), Op (ColToX ()) r a impl) => Ref a -> impl+colToX = dispatch (undefined :: ColToX ())+data SetLinenumberWidth a+setLinenumberWidth :: (FindOp a (SetLinenumberWidth ()) (Match r), Op (SetLinenumberWidth ()) r a impl) => Ref a -> impl+setLinenumberWidth = dispatch (undefined :: SetLinenumberWidth ())+data GetLinenumberWidth a+getLinenumberWidth :: (FindOp a (GetLinenumberWidth ()) (Match r), Op (GetLinenumberWidth ()) r a impl) => Ref a -> impl+getLinenumberWidth = dispatch (undefined :: GetLinenumberWidth ())+data SetLinenumberFont a+setLinenumberFont :: (FindOp a (SetLinenumberFont ()) (Match r), Op (SetLinenumberFont ()) r a impl) => Ref a -> impl+setLinenumberFont = dispatch (undefined :: SetLinenumberFont ())+data GetLinenumberFont a+getLinenumberFont :: (FindOp a (GetLinenumberFont ()) (Match r), Op (GetLinenumberFont ()) r a impl) => Ref a -> impl+getLinenumberFont = dispatch (undefined :: GetLinenumberFont ())+data SetLinenumberSize a+setLinenumberSize :: (FindOp a (SetLinenumberSize ()) (Match r), Op (SetLinenumberSize ()) r a impl) => Ref a -> impl+setLinenumberSize = dispatch (undefined :: SetLinenumberSize ())+data GetLinenumberSize a+getLinenumberSize :: (FindOp a (GetLinenumberSize ()) (Match r), Op (GetLinenumberSize ()) r a impl) => Ref a -> impl+getLinenumberSize = dispatch (undefined :: GetLinenumberSize ())+data SetLinenumberFgcolor a+setLinenumberFgcolor :: (FindOp a (SetLinenumberFgcolor ()) (Match r), Op (SetLinenumberFgcolor ()) r a impl) => Ref a -> impl+setLinenumberFgcolor = dispatch (undefined :: SetLinenumberFgcolor ())+data GetLinenumberFgcolor a+getLinenumberFgcolor :: (FindOp a (GetLinenumberFgcolor ()) (Match r), Op (GetLinenumberFgcolor ()) r a impl) => Ref a -> impl+getLinenumberFgcolor = dispatch (undefined :: GetLinenumberFgcolor ())+data SetLinenumberBgcolor a+setLinenumberBgcolor :: (FindOp a (SetLinenumberBgcolor ()) (Match r), Op (SetLinenumberBgcolor ()) r a impl) => Ref a -> impl+setLinenumberBgcolor = dispatch (undefined :: SetLinenumberBgcolor ())+data GetLinenumberBgcolor a+getLinenumberBgcolor :: (FindOp a (GetLinenumberBgcolor ()) (Match r), Op (GetLinenumberBgcolor ()) r a impl) => Ref a -> impl+getLinenumberBgcolor = dispatch (undefined :: GetLinenumberBgcolor ())+data SetLinenumberAlign a+setLinenumberAlign :: (FindOp a (SetLinenumberAlign ()) (Match r), Op (SetLinenumberAlign ()) r a impl) => Ref a -> impl+setLinenumberAlign = dispatch (undefined :: SetLinenumberAlign ())+data GetLinenumberAlign a+getLinenumberAlign :: (FindOp a (GetLinenumberAlign ()) (Match r), Op (GetLinenumberAlign ()) r a impl) => Ref a -> impl+getLinenumberAlign = dispatch (undefined :: GetLinenumberAlign ())+data SetLinenumberFormat a+setLinenumberFormat :: (FindOp a (SetLinenumberFormat ()) (Match r), Op (SetLinenumberFormat ()) r a impl) => Ref a -> impl+setLinenumberFormat = dispatch (undefined :: SetLinenumberFormat ())+data GetLinenumberFormat a+getLinenumberFormat :: (FindOp a (GetLinenumberFormat ()) (Match r), Op (GetLinenumberFormat ()) r a impl) => Ref a -> impl+getLinenumberFormat = dispatch (undefined :: GetLinenumberFormat ())++data CTextEditor parent+type TextEditor = CTextEditor TextDisplay+type TextEditorFuncs =+  (Destroy+  (SetInsertMode+  (GetInsertMode+  (GetDefaultKeyBindings+  (ReplaceKeyBindings+  ())))))+instance Functions TextEditor TextEditorFuncs++data SetInsertMode a+setInsertMode :: (FindOp a (SetInsertMode ()) (Match r), Op (SetInsertMode ()) r a impl) => Ref a -> impl+setInsertMode = dispatch (undefined :: SetInsertMode ())++data GetInsertMode a+getInsertMode :: (FindOp a (GetInsertMode ()) (Match r), Op (GetInsertMode ()) r a impl) => Ref a -> impl+getInsertMode = dispatch (undefined :: GetInsertMode ())++data GetDefaultKeyBindings a+getDefaultKeyBindings :: (FindOp a (GetDefaultKeyBindings ()) (Match r), Op (GetDefaultKeyBindings ()) r a impl) => Ref a -> impl+getDefaultKeyBindings = dispatch (undefined :: GetDefaultKeyBindings ())++data ReplaceKeyBindings a+replaceKeyBindings :: (FindOp a (ReplaceKeyBindings ()) (Match r), Op (ReplaceKeyBindings ()) r a impl) => Ref a -> impl+replaceKeyBindings = dispatch (undefined :: ReplaceKeyBindings ())
+ src/Graphics/UI/FLTK/LowLevel/HorFillSlider.chs view
@@ -0,0 +1,48 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.HorFillSlider+    (+     horFillSliderNew+     -- * Hierarchy+     --+     -- $hierarchy++    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_SliderC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Hor_Fill_Slider_New as horFillSliderNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Hor_Fill_Slider_New_WithLabel as horFillSliderNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+horFillSliderNew :: Rectangle -> Maybe String -> IO (Ref HorFillSlider)+horFillSliderNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> horFillSliderNew' x_pos y_pos width height >>=+                             toRef+        Just l -> horFillSliderNewWithLabel' x_pos y_pos width height l >>=+                             toRef+-- @+--++-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Slider"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.HorFillSlider"+-- @
+ src/Graphics/UI/FLTK/LowLevel/HorNiceSlider.chs view
@@ -0,0 +1,44 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.HorNiceSlider+    (+     horNiceSliderNew+     -- * Hierarchy+     --+     -- $hierarchy++    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_SliderC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Hor_Nice_Slider_New as horNiceSliderNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Hor_Nice_Slider_New_WithLabel as horNiceSliderNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+horNiceSliderNew :: Rectangle -> Maybe String -> IO (Ref HorNiceSlider)+horNiceSliderNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> horNiceSliderNew' x_pos y_pos width height >>=+                             toRef+        Just l -> horNiceSliderNewWithLabel' x_pos y_pos width height l >>=+                             toRef++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Slider"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.HorNiceSlider"+-- @
+ src/Graphics/UI/FLTK/LowLevel/HorSlider.chs view
@@ -0,0 +1,44 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.HorSlider+    (+     horSliderNew+     -- * Hierarchy+     --+     -- $hierarchy++    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_SliderC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Hor_Slider_New as horSliderNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Hor_Slider_New_WithLabel as horSliderNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+horSliderNew :: Rectangle -> Maybe String -> IO (Ref HorSlider)+horSliderNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> horSliderNew' x_pos y_pos width height >>=+                             toRef+        Just l -> horSliderNewWithLabel' x_pos y_pos width height l >>=+                             toRef++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Slider"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.HorSlider"+-- @
+ src/Graphics/UI/FLTK/LowLevel/HorValueSlider.chs view
@@ -0,0 +1,47 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.HorValueSlider+    (+     horValueSliderNew+     -- * Hierarchy+     --+     -- $hierarchy++    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Value_SliderC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Hor_Value_Slider_New as horValueSliderNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Hor_Value_Slider_New_WithLabel as horValueSliderNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+horValueSliderNew :: Rectangle -> Maybe String -> IO (Ref HorValueSlider)+horValueSliderNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> horValueSliderNew' x_pos y_pos width height >>=+                             toRef+        Just l -> horValueSliderNewWithLabel' x_pos y_pos width height l >>=+                             toRef++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Slider"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.ValueSlider"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.HorValueSlider"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Image.chs view
@@ -0,0 +1,208 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Image+       (+       ImageFuncs(..),+       defaultImageFuncs,+       imageNew,+       ColorAverageCallback,+       ImageDrawCallback,+       ImageCopyCallback,+       toImageDrawCallbackPrim,+       toColorAverageCallbackPrim,+       toImageCopyCallbackPrim+       -- * Hierarchy+       --+       -- $hierarchy++       -- * Functions+       --+       -- $functions+       )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_ImageC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++type ColorAverageCallback        = Ref Image -> Color -> Float -> IO ()+type ImageDrawCallback           = Ref Image -> Position -> Size -> Maybe X -> Maybe Y -> IO ()+type ImageCopyCallback           = Ref Image -> Size -> IO (Ref Image)+toImageDrawCallbackPrim :: ImageDrawCallback -> IO (FunPtr ImageDrawCallbackPrim)+toImageDrawCallbackPrim f =+    mkImageDrawCallbackPrimPtr+    (\ptr x_pos' y_pos' width' height' x_offset' y_offset' ->+       let _x_offset = fmap X $ integralToMaybe x_offset'+           _y_offset = fmap Y $ integralToMaybe y_offset'+           position' = Position (X $ fromIntegral x_pos')+                                (Y $ fromIntegral y_pos')+           size' = Size (Width $ fromIntegral width')+                        (Height $ fromIntegral height')+       in+        toRef ptr >>= \refPtr -> f refPtr position' size' _x_offset _y_offset+    )++toColorAverageCallbackPrim :: ColorAverageCallback -> IO (FunPtr ColorAverageCallbackPrim)+toColorAverageCallbackPrim f =+    mkColorAverageCallbackPtr+    (\ptr cint cfloat ->+         wrapNonNull ptr "Null pointer. toColorAverageCallbackPrim" >>= \pp ->+         f (wrapInRef pp) (Color (fromIntegral cint)) (realToFrac cfloat)+    )++toImageCopyCallbackPrim :: ImageCopyCallback -> IO (FunPtr ImageCopyCallbackPrim)+toImageCopyCallbackPrim f =+    mkImageCopyCallbackPrimPtr+    (\ptr width' height' -> do+         pp <- wrapNonNull ptr "Null pointer. toImageCopyCallbackPrim"+         refPtr <- f (wrapInRef pp) (Size (Width $ fromIntegral width')+                                           (Height $ fromIntegral height'))+         unsafeRefToPtr refPtr+    )+++data ImageFuncs a b =+  ImageFuncs+  {+    imageDrawOverride  :: Maybe (ImageDrawCallback),+    imageColorAverageOverride :: Maybe (ColorAverageCallback),+    imageCopyOverride :: Maybe (ImageCopyCallback),+    imageDesaturateOverride :: Maybe (Ref Image -> IO ()),+    imageUncacheOverride :: Maybe (Ref Image -> IO ())+  }++{# fun unsafe Fl_Image_default_virtual_funcs as virtualFuncs' {} -> `Ptr ()' id #}+imageFunctionStruct :: (ImageFuncs a b) -> IO (Ptr ())+imageFunctionStruct funcs = do+  p <- virtualFuncs'+  toImageDrawCallbackPrim `orNullFunPtr` (imageDrawOverride funcs) >>=+                            {# set fl_Image_Virtual_Funcs->draw #} p+  toColorAverageCallbackPrim `orNullFunPtr` (imageColorAverageOverride funcs) >>=+                            {# set fl_Image_Virtual_Funcs->color_average #} p+  toImageCopyCallbackPrim `orNullFunPtr` (imageCopyOverride funcs) >>=+                            {# set fl_Image_Virtual_Funcs->copy #} p+  toCallbackPrim `orNullFunPtr` (imageDesaturateOverride funcs) >>=+                            {# set fl_Image_Virtual_Funcs->desaturate #} p+  toCallbackPrim `orNullFunPtr` (imageUncacheOverride funcs) >>=+                            {# set fl_Image_Virtual_Funcs->uncache #} p+  return p++defaultImageFuncs :: ImageFuncs a b+defaultImageFuncs = ImageFuncs Nothing Nothing Nothing Nothing Nothing++{# fun unsafe Fl_Image_New as flImageNew' { `Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun unsafe Fl_OverriddenImage_New as flOverriddenImageNew' { `Int',`Int',`Int', id `Ptr ()'} -> `Ptr ()' id #}+imageNew :: Size -> Depth -> Maybe (ImageFuncs a b) -> IO (Ref Image)+imageNew (Size (Width width') (Height height')) (Depth depth') funcs =+  case funcs of+    Just fs -> do+            fptr <- imageFunctionStruct fs+            obj <- flOverriddenImageNew' width' height' depth' (castPtr fptr)+            toRef obj+    Nothing -> flImageNew' width' height' depth' >>= toRef++{# fun unsafe Fl_Image_Destroy as flImageDestroy' { id `Ptr ()' } -> `()' id #}+instance (impl ~ (IO ())) => Op (Destroy ()) Image orig impl where+  runOp _ _ image = withRef image $ \imagePtr -> flImageDestroy' imagePtr+{# fun unsafe Fl_Image_w as w' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetW ()) Image orig impl where+  runOp _ _ image = withRef image $ \imagePtr -> w' imagePtr+{# fun unsafe Fl_Image_h as h' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetH ()) Image orig impl where+  runOp _ _ image = withRef image $ \imagePtr -> h' imagePtr+{# fun unsafe Fl_Image_d as d' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetD ()) Image orig impl where+  runOp _ _ image = withRef image $ \imagePtr -> d' imagePtr+{# fun unsafe Fl_Image_ld as ld' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetLd ()) Image orig impl where+  runOp _ _ image = withRef image $ \imagePtr -> ld' imagePtr+{# fun unsafe Fl_Image_count as count' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetCount ()) Image orig impl where+  runOp _ _ image = withRef image $ \imagePtr -> count' imagePtr++{# fun unsafe Fl_Image_copy_with_w_h as copyWithWH' { id `Ptr ()',`Int',`Int' } -> `Ptr ()' id #}+{# fun unsafe Fl_Image_copy as copy' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( Maybe Size -> IO (Ref Image))) => Op (Copy ()) Image orig impl where+  runOp _ _ image size' = case size' of+    Just (Size (Width w) (Height h)) -> withRef image $ \imagePtr -> copyWithWH' imagePtr w h >>= toRef+    Nothing -> withRef image $ \imagePtr -> copy' imagePtr >>= toRef++{# fun unsafe Fl_Image_color_average as colorAverage' { id `Ptr ()',cFromColor `Color',`Float' } -> `()' #}+instance (impl ~ (Color -> Float ->  IO ())) => Op (ColorAverage ()) Image orig impl where+  runOp _ _ image c i = withRef image $ \imagePtr -> colorAverage' imagePtr c i++{# fun unsafe Fl_Image_inactive as inactive' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Inactive ()) Image orig impl where+  runOp _ _ image = withRef image $ \imagePtr -> inactive' imagePtr++{# fun unsafe Fl_Image_desaturate as desaturate' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Desaturate ()) Image orig impl where+  runOp _ _ image = withRef image $ \imagePtr -> desaturate' imagePtr++{# fun unsafe Fl_Image_draw_with_cx_cy as drawWithCxCy' { id `Ptr ()',`Int',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+{# fun unsafe Fl_Image_draw_with_cx as drawWithCx' { id `Ptr ()',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+{# fun unsafe Fl_Image_draw_with_cy as drawWithCy' { id `Ptr ()',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+{# fun unsafe Fl_Image_draw_with as drawWith' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' #}++instance (impl ~ (Position -> Size -> Maybe X -> Maybe Y -> IO ())) => Op (DrawResize ()) Image orig impl where+  runOp _ _ image (Position (X x) (Y y)) (Size (Width w) (Height h)) xOffset yOffset =+    case (xOffset, yOffset) of+      (Just (X xOff), Just (Y yOff)) ->+        withRef image $ \imagePtr -> drawWithCxCy' imagePtr x y w h (fromIntegral xOff) (fromIntegral yOff)+      (Just (X xOff), Nothing) ->+        withRef image $ \imagePtr -> drawWithCx' imagePtr x y w h (fromIntegral xOff)+      (Nothing, Just (Y yOff)) ->+        withRef image $ \imagePtr -> drawWithCy' imagePtr x y w h (fromIntegral yOff)+      (Nothing, Nothing) ->+        withRef image $ \imagePtr -> drawWith' imagePtr x y w h++{# fun unsafe Fl_Image_draw as draw' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ (Position ->  IO ())) => Op (Draw ()) Image orig impl where+  runOp _ _ image (Position (X x_pos') (Y y_pos')) = withRef image $ \imagePtr -> draw' imagePtr x_pos' y_pos'+{# fun unsafe Fl_Image_uncache as uncache' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Uncache ()) Image orig impl where+  runOp _ _ image = withRef image $ \imagePtr -> uncache' imagePtr++-- $functions+-- @+--+-- className :: 'Ref' 'Image' -> 'IO' 'String'+--+-- colorAverage :: 'Ref' 'Image' -> 'Color' -> 'Float' -> 'IO' ()+--+-- copy :: 'Ref' 'Image' -> 'Maybe' 'Size' -> 'IO' ('Ref' 'Image')+--+-- desaturate :: 'Ref' 'Image' -> 'IO' ()+--+-- destroy :: 'Ref' 'Image' -> 'IO' ()+--+-- draw :: 'Ref' 'Image' -> 'Position' -> 'IO' ()+--+-- drawResize :: 'Ref' 'Image' -> 'Position' -> 'Size' -> 'Maybe' 'X' -> 'Maybe' 'Y' -> 'IO' ()+--+-- getCount :: 'Ref' 'Image' -> 'IO' 'Int'+--+-- getD :: 'Ref' 'Image' -> 'IO' 'Int'+--+-- getH :: 'Ref' 'Image' -> 'IO' 'Int'+--+-- getLd :: 'Ref' 'Image' -> 'IO' 'Int'+--+-- getW :: 'Ref' 'Image' -> 'IO' 'Int'+--+-- inactive :: 'Ref' 'Image' -> 'IO' ()+--+-- uncache :: 'Ref' 'Image' -> 'IO' ()+-- @+++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Image"+-- @
+ src/Graphics/UI/FLTK/LowLevel/ImageSurface.chs view
@@ -0,0 +1,61 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.ImageSurface+       (+         imageSurfaceNew+         -- * Hierarchy+         --+         -- $hierarchy++         -- * Functions+         --+         -- $functions++       )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Image_SurfaceC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Image_Surface_New as imageSurfaceNew' {`Int', `Int'} -> `Ptr ()' id #}+imageSurfaceNew :: Size -> IO (Ref ImageSurface)+imageSurfaceNew (Size (Width w') (Height h')) = imageSurfaceNew' w' h' >>= toRef++{# fun Fl_Image_Surface_Destroy as imageSurfaceDestroy' {id `Ptr ()'} -> `()' #}+instance (impl ~ (IO ())) => Op (Destroy ()) ImageSurface orig impl where+  runOp _ _ image_surface = withRef image_surface $ \image_surfacePtr -> imageSurfaceDestroy' image_surfacePtr++{# fun unsafe Fl_Image_Surface_class_name as className' { id `Ptr ()' } -> `String' #}+instance (impl ~ ( IO (String))) => Op (ClassName ()) ImageSurface orig impl where+  runOp _ _ image_surface = withRef image_surface $ \image_surfacePtr -> className' image_surfacePtr++{# fun unsafe Fl_Image_Surface_set_current as setCurrent' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (SetCurrent ()) ImageSurface orig impl where+  runOp _ _ image_surface = withRef image_surface $ \image_surfacePtr -> setCurrent' image_surfacePtr++{# fun unsafe Fl_Image_Surface_draw as draw' { id `Ptr ()',id `Ptr ()',`Int',`Int' } -> `()' #}+instance (Parent a Widget, impl ~ ( Ref a  -> Position -> IO ())) => Op (Draw ()) ImageSurface orig impl where+  runOp _ _ image_surface widget (Position (X delta_x) (Y delta_y)) = withRef image_surface $ \image_surfacePtr -> withRef widget $ \widgetPtr -> draw' image_surfacePtr widgetPtr delta_x delta_y+++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.ImageSurface"+-- @++-- $functions+-- @+-- className :: 'Ref' 'ImageSurface' -> 'IO' 'String'+--+-- destroy :: 'Ref' 'ImageSurface' -> 'IO' ()+--+-- draw:: ('Parent' a 'Widget') => 'Ref' 'ImageSurface' -> 'Ref' a -> 'Position' -> 'IO' ())+--+-- setCurrent :: 'Ref' 'ImageSurface' -> 'IO' ()+-- @
+ src/Graphics/UI/FLTK/LowLevel/Input.chs view
@@ -0,0 +1,323 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Input+    (+     FlInputType,+     -- * Constructor+     inputNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Input+     --+     -- $Input+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_InputC.h"+#include "Fl_Input_C.h"+#include "Fl_Int_InputC.h"+#include "Fl_Float_InputC.h"+#include "Fl_Secret_InputC.h"+#include "Fl_Multiline_InputC.h"+#include "Fl_OutputC.h"+#include "Fl_Multiline_OutputC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch+#c+enum FlInputType {+  FlNormalInput = FL_NORMAL_INPUT,+  FlFloatInput = FL_FLOAT_INPUT,+  FlIntInput = FL_INT_INPUT,+  FlMultilineInput = FL_MULTILINE_INPUT,+  FlSecretInput = FL_SECRET_INPUT,+  FlNormalOutput = FL_NORMAL_OUTPUT,+  FlMultilineOutput = FL_MULTILINE_OUTPUT+};+#endc+{#enum FlInputType {}#}+{# fun Fl_Input_New as inputNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Input_New_WithLabel as inputNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_Multiline_Input_New as multilineInputNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Multiline_Input_New_WithLabel as multilineInputNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_Float_Input_New as floatInputNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Float_Input_New_WithLabel as floatInputNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_Int_Input_New as intInputNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Int_Input_New_WithLabel as intInputNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_Secret_Input_New as secretInputNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Secret_Input_New_WithLabel as secretInputNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_Output_New as outputNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Output_New_WithLabel as outputNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_Multiline_Output_New as multilineOutputNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Multiline_Output_New_WithLabel as multilineOutputNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+inputNew :: Maybe FlInputType -> Rectangle -> Maybe String -> IO (Ref Input)+inputNew flInputType rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+        constructor = case flInputType of+                       Just FlNormalInput -> maybe inputNew' (\l -> (\x y w h -> inputNewWithLabel' x y w h l)) l'+                       Just FlFloatInput -> maybe floatInputNew' (\l -> (\x y w h -> floatInputNewWithLabel' x y w h l)) l'+                       Just FlIntInput -> maybe intInputNew'  (\l -> (\x y w h -> intInputNewWithLabel' x y w h l)) l'+                       Just FlMultilineInput -> maybe multilineInputNew'  (\l -> (\x y w h -> multilineInputNewWithLabel' x y w h l)) l'+                       Just FlSecretInput -> maybe secretInputNew' (\l -> (\x y w h -> secretInputNewWithLabel' x y w h l)) l'+                       Just FlNormalOutput -> maybe outputNew' (\l -> (\x y w h -> outputNewWithLabel' x y w h l)) l'+                       Just FlMultilineOutput -> maybe multilineOutputNew' (\l -> (\x y w h -> multilineOutputNewWithLabel' x y w h l)) l'+                       Nothing -> inputNew'+    in+    constructor x_pos y_pos width height >>= toRef++{# fun Fl_Input_Destroy as inputDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Input orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+    inputDestroy' winPtr+    return nullPtr++{#fun Fl_Input_handle as inputHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+{#fun Fl_Secret_Input_handle as secretInputHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Input orig impl where+  runOp _ _ input event =+    withRef+      input+      (\p -> do+          t <- getInputType input+          case (toEnum (fromIntegral t)) of+           FlSecretInput -> secretInputHandle' p (fromIntegral . fromEnum $ event)+           _             -> inputHandle' p (fromIntegral . fromEnum $ event)+      )+{# fun unsafe Fl_Input_set_value as setValue' { id `Ptr ()',`String' } -> `Int' #}+{# fun unsafe Fl_Input_set_value_with_length as setValueWithLength' { id `Ptr ()',`String',`Int' } -> `Int' #}+instance (impl ~ (String -> Maybe Int -> IO (Int))) => Op (SetValue ()) Input orig impl where+  runOp _ _ input text l' =+    case l' of+     Nothing -> withRef input $ \inputPtr -> setValue' inputPtr text+     Just l -> withRef input $ \inputPtr -> setValueWithLength' inputPtr text l+{# fun unsafe Fl_Input_static_value as staticValue' { id `Ptr ()',`String' } -> `Int' #}+{# fun unsafe Fl_Input_static_value_with_length as staticValueWithLength' { id `Ptr ()',`String',`Int' } -> `Int' #}+instance (impl ~ (String -> Maybe Int ->  IO (Either NoChange ()))) => Op (StaticValue ()) Input orig impl where+  runOp _ _ input text l'= do+    status' <- case l' of+      Nothing -> withRef input $ \inputPtr -> staticValue' inputPtr text+      Just l -> withRef input $ \inputPtr -> staticValueWithLength' inputPtr text l+    return $ successOrNoChange status'+{# fun unsafe Fl_Input_value as value' { id `Ptr ()' } -> `String' #}+instance (impl ~ ( IO (String))) => Op (GetValue ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> value' inputPtr+{# fun unsafe Fl_Input_index as index' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Char))) => Op (Index ()) Input orig impl where+  runOp _ _ input i = withRef input $ \inputPtr -> index' inputPtr i >>= return . toEnum+{# fun unsafe Fl_Input_set_size as setSize' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ (Size ->  IO ())) => Op (SetSize ()) Input orig impl where+  runOp _ _ input (Size (Width w') (Height h')) = withRef input $ \inputPtr -> setSize' inputPtr w' h'+{# fun unsafe Fl_Input_maximum_size as maximumSize' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetMaximumSize ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> maximumSize' inputPtr+{# fun unsafe Fl_Input_size as size' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetSize ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> size' inputPtr+{# fun unsafe Fl_Input_set_maximum_size as setMaximumSize' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetMaximumSize ()) Input orig impl where+  runOp _ _ input m = withRef input $ \inputPtr -> setMaximumSize' inputPtr m+{# fun unsafe Fl_Input_position as position' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetPosition ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> position' inputPtr+{# fun unsafe Fl_Input_mark as mark' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetMark ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> mark' inputPtr+{# fun unsafe Fl_Input_set_position_with_cursor_mark as setPositionWithCursorMark' { id `Ptr ()',`Int',`Int' } -> `Int' #}+{# fun unsafe Fl_Input_set_position_n_n as setPositionNN' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int -> Maybe Int -> IO (Either NoChange ()))) => Op (SetPosition ()) Input orig impl where+  runOp _ _ input point mark = do+   status' <- case mark of+      Just m ->  withRef input $ \inputPtr -> setPositionWithCursorMark' inputPtr point m+      Nothing -> withRef input $ \inputPtr -> setPositionNN' inputPtr point+   return $ successOrNoChange status'+{# fun unsafe Fl_Input_set_mark as setMark' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Either NoChange ()))) => Op (SetMark ()) Input orig impl where+  runOp _ _ input m = withRef input $ \inputPtr -> setMark' inputPtr m >>= return . successOrNoChange+{# fun unsafe Fl_Input_replace as replace' { id `Ptr ()',`Int',`Int',`String' } -> `Int' #}+instance (impl ~ (Int -> Int -> String ->  IO (Either NoChange ()))) => Op (Replace ()) Input orig impl where+  runOp _ _ input b e text = withRef input $ \inputPtr -> replace' inputPtr b e  text >>= return . successOrNoChange+{# fun unsafe Fl_Input_cut as cut' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Either NoChange ()))) => Op (Cut ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> cut' inputPtr >>= return . successOrNoChange+{# fun unsafe Fl_Input_cut_bytes as cutBytes' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Either NoChange ()))) => Op (CutFromCursor ()) Input orig impl where+  runOp _ _ input n = withRef input $ \inputPtr -> cutBytes' inputPtr n >>= return . successOrNoChange+{# fun unsafe Fl_Input_cut_range as cutRange' { id `Ptr ()',`Int',`Int' } -> `Int' #}+instance (impl ~ (Int -> Int ->  IO (Either NoChange ()))) => Op (CutRange ()) Input orig impl where+  runOp _ _ input a b = withRef input $ \inputPtr -> cutRange' inputPtr a b >>= return . successOrNoChange+{# fun unsafe Fl_Input_insert as insert' { id `Ptr ()',`String' } -> `Int' #}+instance (impl ~ (String ->  IO (Either NoChange ()))) => Op (Insert ()) Input orig impl where+  runOp _ _ input t = withRef input $ \inputPtr -> insert' inputPtr t >>= return . successOrNoChange+{# fun unsafe Fl_Input_insert_with_length as insertWithLength' { id `Ptr ()',`String',`Int' } -> `Int' #}+instance (impl ~ (String -> Int ->  IO (Either NoChange ()))) => Op (InsertWithLength ()) Input orig impl where+  runOp _ _ input t l = withRef input $ \inputPtr -> insertWithLength' inputPtr t l >>= return . successOrNoChange+{# fun unsafe Fl_Input_copy as copy' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Clipboard ->  IO (Either NoChange ()))) => Op (Copy ()) Input orig impl where+  runOp _ _ input clipboard = do+    status' <- case clipboard of+      InternalClipboard -> withRef input $ \inputPtr -> copy' inputPtr 1+      SharedClipboard -> withRef input $ \inputPtr -> copy' inputPtr 0+    return $ successOrNoChange status'+{# fun unsafe Fl_Input_undo as undo' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Either NoChange ()))) => Op (Undo ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> undo' inputPtr >>= return . successOrNoChange+{# fun unsafe Fl_Input_copy_cuts as copyCuts' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Either NoChange ()))) => Op (CopyCuts ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> copyCuts' inputPtr >>= return . successOrNoChange+{# fun unsafe Fl_Input_shortcut as shortcut' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetShortcut ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> shortcut' inputPtr+{# fun unsafe Fl_Input_set_shortcut as setShortcut' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetShortcut ()) Input orig impl where+  runOp _ _ input s = withRef input $ \inputPtr -> setShortcut' inputPtr s+{# fun unsafe Fl_Input_textfont as textfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ ( IO (Font))) => Op (GetTextfont ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> textfont' inputPtr+{# fun unsafe Fl_Input_set_textfont as setTextfont' { id `Ptr ()',cFromFont `Font' } -> `()' #}+instance (impl ~ (Font ->  IO ())) => Op (SetTextfont ()) Input orig impl where+  runOp _ _ input s = withRef input $ \inputPtr -> setTextfont' inputPtr s+{# fun unsafe Fl_Input_textsize as textsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ ( IO (FontSize))) => Op (GetTextsize ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> textsize' inputPtr >>= return . FontSize+{# fun unsafe Fl_Input_set_textsize as setTextsize' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ())) => Op (SetTextsize ()) Input orig impl where+  runOp _ _ input (FontSize s) = withRef input $ \inputPtr -> setTextsize' inputPtr s+{# fun unsafe Fl_Input_textcolor as textcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetTextcolor ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> textcolor' inputPtr+{# fun unsafe Fl_Input_set_textcolor as setTextcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetTextcolor ()) Input orig impl where+  runOp _ _ input n = withRef input $ \inputPtr -> setTextcolor' inputPtr n+{# fun unsafe Fl_Input_cursor_color as cursorColor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetCursorColor ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> cursorColor' inputPtr+{# fun unsafe Fl_Input_set_cursor_color as setCursorColor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetCursorColor ()) Input orig impl where+  runOp _ _ input n = withRef input $ \inputPtr -> setCursorColor' inputPtr n+{# fun unsafe Fl_Input_input_type as inputType' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetInputType ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> inputType' inputPtr+{# fun unsafe Fl_Input_set_input_type as setInputType' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetInputType ()) Input orig impl where+  runOp _ _ input t = withRef input $ \inputPtr -> setInputType' inputPtr t+{# fun unsafe Fl_Input_readonly as readonly' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetReadonly ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> readonly' inputPtr+{# fun unsafe Fl_Input_set_readonly as setReadonly' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetReadonly ()) Input orig impl where+  runOp _ _ input b = withRef input $ \inputPtr -> setReadonly' inputPtr b+{# fun unsafe Fl_Input_wrap as wrap' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetWrap ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> wrap' inputPtr+{# fun unsafe Fl_Input_set_wrap as setWrap' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetWrap ()) Input orig impl where+  runOp _ _ input b = withRef input $ \inputPtr -> setWrap' inputPtr b+{# fun unsafe Fl_Input_tab_nav as tabNav' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (GetTabNav ()) Input orig impl where+  runOp _ _ input val = withRef input $ \inputPtr -> tabNav' inputPtr val+{# fun unsafe Fl_Input_set_tab_nav as setTabNav' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (SetTabNav ()) Input orig impl where+  runOp _ _ input = withRef input $ \inputPtr -> setTabNav' inputPtr++-- $Input+-- @+--+-- copy :: 'Ref' 'Input' -> 'Clipboard' -> 'IO' ('Either' 'NoChange' ())+--+-- copyCuts :: 'Ref' 'Input' -> 'IO' ('Either' 'NoChange' ())+--+-- cut :: 'Ref' 'Input' -> 'IO' ('Either' 'NoChange' ())+--+-- cutFromCursor :: 'Ref' 'Input' -> 'Int' -> 'IO' ('Either' 'NoChange' ())+--+-- cutRange :: 'Ref' 'Input' -> 'Int' -> 'Int' -> 'IO' ('Either' 'NoChange' ())+--+-- destroy :: 'Ref' 'Input' -> 'IO' ()+--+-- getCursorColor :: 'Ref' 'Input' -> 'IO' 'Color'+--+-- getInputType :: 'Ref' 'Input' -> 'IO' 'Int'+--+-- getMark :: 'Ref' 'Input' -> 'IO' 'Int'+--+-- getMaximumSize :: 'Ref' 'Input' -> 'IO' 'Int'+--+-- getPosition :: 'Ref' 'Input' -> 'IO' 'Int'+--+-- getReadonly :: 'Ref' 'Input' -> 'IO' 'Int'+--+-- getShortcut :: 'Ref' 'Input' -> 'IO' 'Int'+--+-- getSize :: 'Ref' 'Input' -> 'IO' 'Int'+--+-- getTabNav :: 'Ref' 'Input' -> 'Int' -> 'IO' ()+--+-- getTextcolor :: 'Ref' 'Input' -> 'IO' 'Color'+--+-- getTextfont :: 'Ref' 'Input' -> 'IO' 'Font'+--+-- getTextsize :: 'Ref' 'Input' -> 'IO' 'FontSize'+--+-- getValue :: 'Ref' 'Input' -> 'IO' 'String'+--+-- getWrap :: 'Ref' 'Input' -> 'IO' 'Int'+--+-- handle :: 'Ref' 'Input' -> 'Event' -> 'IO' 'Int'+--+-- index :: 'Ref' 'Input' -> 'Int' -> 'IO' 'Char'+--+-- insert :: 'Ref' 'Input' -> 'String' -> 'IO' ('Either' 'NoChange' ())+--+-- insertWithLength :: 'Ref' 'Input' -> 'String' -> 'Int' -> 'IO' ('Either' 'NoChange' ())+--+-- replace :: 'Ref' 'Input' -> 'Int' -> 'Int' -> 'String' -> 'IO' ('Either' 'NoChange' ())+--+-- setCursorColor :: 'Ref' 'Input' -> 'Color' -> 'IO' ()+--+-- setInputType :: 'Ref' 'Input' -> 'Int' -> 'IO' ()+--+-- setMark :: 'Ref' 'Input' -> 'Int' -> 'IO' ('Either' 'NoChange' ())+--+-- setMaximumSize :: 'Ref' 'Input' -> 'Int' -> 'IO' ()+--+-- setPosition :: 'Ref' 'Input' -> 'Int' -> 'Maybe' 'Int' -> 'IO' ('Either' 'NoChange' ())+--+-- setReadonly :: 'Ref' 'Input' -> 'Int' -> 'IO' ()+--+-- setShortcut :: 'Ref' 'Input' -> 'Int' -> 'IO' ()+--+-- setSize :: 'Ref' 'Input' -> 'Size' -> 'IO' ()+--+-- setTabNav :: 'Ref' 'Input' -> 'IO' 'Int'+--+-- setTextcolor :: 'Ref' 'Input' -> 'Color' -> 'IO' ()+--+-- setTextfont :: 'Ref' 'Input' -> 'Font' -> 'IO' ()+--+-- setTextsize :: 'Ref' 'Input' -> 'FontSize' -> 'IO' ()+--+-- setValue :: 'Ref' 'Input' -> 'String' -> 'Maybe' 'Int' -> 'IO' 'Int'+--+-- setWrap :: 'Ref' 'Input' -> 'Int' -> 'IO' ()+--+-- staticValue :: 'Ref' 'Input' -> 'String' -> 'Maybe' 'Int' -> 'IO' ('Either' 'NoChange' ())+--+-- undo :: 'Ref' 'Input' -> 'IO' ('Either' 'NoChange' ())+--+-- @+++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Input"+-- @
+ src/Graphics/UI/FLTK/LowLevel/IntInput.chs view
@@ -0,0 +1,49 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.IntInput+    (+     intInputNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Int_InputC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Int_Input_New as intInputNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Int_Input_New_WithLabel as intInputNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+intInputNew :: Rectangle -> Maybe String -> IO (Ref IntInput)+intInputNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> intInputNew' x_pos y_pos width height >>=+                             toRef+        Just l -> intInputNewWithLabel' x_pos y_pos width height l >>=+                             toRef+-- $functions+-- @+--++-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Input"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.IntInput"+-- @
+ src/Graphics/UI/FLTK/LowLevel/LightButton.chs view
@@ -0,0 +1,56 @@+{-# LANGUAGE CPP, EmptyDataDecls, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.LightButton+    (+     lightButtonNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Light_ButtonC.h"+#include "Fl_WidgetC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Light_Button_New as widgetNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Light_Button_New_WithLabel as widgetNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+lightButtonNew :: Rectangle -> Maybe String -> IO (Ref LightButton)+lightButtonNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> widgetNew' x_pos y_pos width height >>= toRef+        Just l -> widgetNewWithLabel' x_pos y_pos width height l >>= toRef++{# fun Fl_Light_Button_Destroy as widgetDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) LightButton orig impl where+  runOp _ _ button = swapRef button $+                    \buttonPtr ->+                     widgetDestroy' buttonPtr >>+                     return nullPtr+-- $functions+-- @+--+-- destroy :: 'Ref' 'LightButton' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Button"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.LightButton"+-- @
+ src/Graphics/UI/FLTK/LowLevel/LineDial.chs view
@@ -0,0 +1,51 @@+module Graphics.UI.FLTK.LowLevel.LineDial+    (+     -- * Constructor+     lineDialNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_DialC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Line_Dial_New as lineDialNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Line_Dial_New_WithLabel as lineDialNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+lineDialNew :: Rectangle -> Maybe String -> IO (Ref LineDial)+lineDialNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> lineDialNew' x_pos y_pos width height >>=+                             toRef+        Just l -> lineDialNewWithLabel' x_pos y_pos width height l >>=+                               toRef+-- $functions+-- @+--++-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Dial"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.LineDial"+-- @
+ src/Graphics/UI/FLTK/LowLevel/MenuButton.chs view
@@ -0,0 +1,70 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.MenuButton+    (+     -- * Constructor+     menuButtonNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Menu_ButtonC.h"+#include "Fl_WidgetC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Menu_Button_New as menuButtonNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Menu_Button_New_WithLabel as menuButtonNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+menuButtonNew :: Rectangle -> Maybe String -> IO (Ref MenuButton)+menuButtonNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> menuButtonNew' x_pos y_pos width height >>=+                             toRef+        Just l -> menuButtonNewWithLabel' x_pos y_pos width height l >>=+                               toRef++{# fun Fl_Menu_Button_Destroy as menuButtonDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Destroy ()) MenuButton orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+    menuButtonDestroy' winPtr+    return nullPtr+{#fun Fl_Menu_Button_handle as menuButtonHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) MenuButton orig impl where+  runOp _ _ menu_bar event = withRef menu_bar (\p -> menuButtonHandle' p (fromIntegral . fromEnum $ event))+{#fun Fl_Menu_Button_popup as menuButtonPopup' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Ref MenuItem))) => Op (Popup ()) MenuButton orig impl where+  runOp _ _ menu_bar = withRef menu_bar (\p -> menuButtonPopup' p >>= toRef)++-- $functions+-- @+--+-- destroy :: 'Ref' 'MenuButton' -> 'IO' ()+--+-- handle :: 'Ref' 'MenuButton' -> 'Event' -> 'IO' 'Int'+--+-- popup :: 'Ref' 'MenuButton' -> 'IO' ('Ref' 'MenuItem')+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.MenuPrim"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.MenuButton"+-- @
+ src/Graphics/UI/FLTK/LowLevel/MenuItem.chs view
@@ -0,0 +1,381 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.MenuItem+  (+   menuItemNew,+   MenuItemIndex(..),+   MenuItemName(..),+   MenuItemPointer(..),+   MenuItemReference(..),+   MenuItemLocator(..)+   -- * Functions+   --+   -- $functions+  )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Menu_ItemC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++newtype MenuItemIndex = MenuItemIndex Int+data MenuItemPointer = forall a. (Parent a MenuItem) => MenuItemPointer (Ref a)+newtype MenuItemName = MenuItemName String+data MenuItemReference = MenuItemByIndex MenuItemIndex | MenuItemByPointer MenuItemPointer+data MenuItemLocator = MenuItemPointerLocator MenuItemPointer | MenuItemNameLocator MenuItemName++{# fun unsafe Fl_Menu_Item_New as new' { } -> `Ptr ()' id #}+menuItemNew :: IO (Ref MenuItem)+menuItemNew = new' >>= toRef++{# fun unsafe Fl_Menu_Item_Destroy as destroy' { id `Ptr ()' } -> `()' id #}+instance (impl ~ IO ()) => Op (Destroy ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> destroy' menu_itemPtr++{# fun unsafe Fl_Menu_Item_next_with_step as nextWithStep' { id `Ptr ()',`Int' } -> `Ptr ()' id #}+instance (Parent a MenuItem, impl ~ (Int -> IO (Ref a))) => Op (NextWithStep ()) MenuItem orig impl where+  runOp _ _ menu_item step =+    withRef menu_item $ \menu_itemPtr -> nextWithStep' menu_itemPtr step >>= toRef++{# fun unsafe Fl_Menu_Item_next as next' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~  IO (Maybe (Ref MenuItem))) => Op (Next ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> next' menu_itemPtr >>= toMaybeRef++{# fun unsafe Fl_Menu_Item_first as first' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~  IO (Maybe (Ref MenuItem))) => Op (GetFirst ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> first' menu_itemPtr >>=toMaybeRef++{# fun unsafe Fl_Menu_Item_label as label' { id `Ptr ()' } -> `String' #}+instance (impl ~  IO (String)) => Op (GetLabel ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> label' menu_itemPtr++{# fun unsafe Fl_Menu_Item_set_label as setLabel' { id `Ptr ()',`String' } -> `()' #}+instance (impl ~ (String ->  IO ())) => Op (SetLabel ()) MenuItem orig impl where+  runOp _ _ menu_item a = withRef menu_item $ \menu_itemPtr -> setLabel' menu_itemPtr a++{# fun unsafe Fl_Menu_Item_set_label_with_labeltype as setLabelWithLabeltype' { id `Ptr ()',cFromEnum `Labeltype',`String' } -> `()' #}+instance (impl ~ (Labeltype -> String ->  IO ())) => Op (SetLabelWithLabeltype ()) MenuItem orig impl where+  runOp _ _ menu_item labeltype b = withRef menu_item $ \menu_itemPtr -> setLabelWithLabeltype' menu_itemPtr labeltype b++{# fun unsafe Fl_Menu_Item_labeltype as labeltype' { id `Ptr ()' } -> `Labeltype' cToEnum #}+instance (impl ~  IO (Labeltype)) => Op (GetLabeltype ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> labeltype' menu_itemPtr++{# fun unsafe Fl_Menu_Item_set_labeltype as setLabeltype' { id `Ptr ()',cFromEnum `Labeltype' } -> `()' #}+instance (impl ~ (Labeltype ->  IO ())) => Op (SetLabeltype ()) MenuItem orig impl where+  runOp _ _ menu_item a = withRef menu_item $ \menu_itemPtr -> setLabeltype' menu_itemPtr a++{# fun unsafe Fl_Menu_Item_labelcolor as labelcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~  IO (Color)) => Op (GetLabelcolor ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> labelcolor' menu_itemPtr++{# fun unsafe Fl_Menu_Item_set_labelcolor as setLabelcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetLabelcolor ()) MenuItem orig impl where+  runOp _ _ menu_item a = withRef menu_item $ \menu_itemPtr -> setLabelcolor' menu_itemPtr a++{# fun unsafe Fl_Menu_Item_labelfont as labelfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~  IO (Font)) => Op (GetLabelfont ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> labelfont' menu_itemPtr++{# fun unsafe Fl_Menu_Item_set_labelfont as setLabelfont' { id `Ptr ()',cFromFont `Font' } -> `()' #}+instance (impl ~ (Font ->  IO ())) => Op (SetLabelfont ()) MenuItem orig impl where+  runOp _ _ menu_item a = withRef menu_item $ \menu_itemPtr -> setLabelfont' menu_itemPtr a++{# fun unsafe Fl_Menu_Item_labelsize as labelsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~  IO (FontSize)) => Op (GetLabelsize ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> labelsize' menu_itemPtr >>= return . FontSize++{# fun unsafe Fl_Menu_Item_set_labelsize as setLabelsize' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ())) => Op (SetLabelsize ()) MenuItem  orig impl where+  runOp _ _ menu_item (FontSize pix) = withRef menu_item $ \menu_itemPtr -> setLabelsize' menu_itemPtr pix++{# fun Fl_Menu_Item_set_callback as setCallback' { id `Ptr ()', id `FunPtr CallbackWithUserDataPrim'} -> `()' #}+instance (impl ~ ((Ref orig -> IO ()) -> IO ()) ) => Op (SetCallback ()) MenuItem orig impl where+  runOp _ _ menu_item c = withRef menu_item $ \menu_itemPtr -> do+                                    ptr <- toCallbackPrim c+                                    setCallback' menu_itemPtr (castFunPtr ptr)++{# fun unsafe Fl_Menu_Item_shortcut as shortcut' { id `Ptr ()' } -> `Int' #}+instance (impl ~  IO (Int)) => Op (GetShortcut ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> shortcut' menu_itemPtr++{# fun unsafe Fl_Menu_Item_set_shortcut as setShortcut' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetShortcut ()) MenuItem orig impl where+  runOp _ _ menu_item s = withRef menu_item $ \menu_itemPtr -> setShortcut' menu_itemPtr s++{# fun unsafe Fl_Menu_Item_submenu as submenu' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~  IO (Bool)) => Op (Submenu ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> submenu' menu_itemPtr++{# fun unsafe Fl_Menu_Item_checkbox as checkbox' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~  IO (Bool)) => Op (Checkbox ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> checkbox' menu_itemPtr++{# fun unsafe Fl_Menu_Item_radio as radio' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~  IO (Bool)) => Op (Radio ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> radio' menu_itemPtr++{# fun unsafe Fl_Menu_Item_value as value' { id `Ptr ()' } -> `Int' #}+instance (impl ~  IO (Int)) => Op (GetValue ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> value' menu_itemPtr++{# fun unsafe Fl_Menu_Item_set as set' { id `Ptr ()' } -> `()' #}+instance (impl ~  IO ()) => Op (Set ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> set' menu_itemPtr++{# fun unsafe Fl_Menu_Item_clear as clear' { id `Ptr ()' } -> `()' #}+instance (impl ~  IO ()) => Op (Clear ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> clear' menu_itemPtr++{# fun unsafe Fl_Menu_Item_setonly as setonly' { id `Ptr ()' } -> `()' #}+instance (impl ~  IO ()) => Op (Setonly ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> setonly' menu_itemPtr++{# fun unsafe Fl_Menu_Item_visible as visible' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~  IO (Bool)) => Op (Visible ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> visible' menu_itemPtr++{# fun unsafe Fl_Menu_Item_show as show' { id `Ptr ()' } -> `()' #}+instance (impl ~  IO ()) => Op (ShowWidget ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> show' menu_itemPtr++{# fun unsafe Fl_Menu_Item_hide as hide' { id `Ptr ()' } -> `()' #}+instance (impl ~  IO ()) => Op (Hide ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> hide' menu_itemPtr++{# fun unsafe Fl_Menu_Item_active as active' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~  IO (Bool)) => Op (Active ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> active' menu_itemPtr++{# fun unsafe Fl_Menu_Item_activate as activate' { id `Ptr ()' } -> `()' #}+instance (impl ~  IO ()) => Op (Activate ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> activate' menu_itemPtr++{# fun unsafe Fl_Menu_Item_deactivate as deactivate' { id `Ptr ()' } -> `()' #}+instance (impl ~  IO ()) => Op (Deactivate ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> deactivate' menu_itemPtr++{# fun unsafe Fl_Menu_Item_activevisible as activevisible' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~  IO (Bool)) => Op (Activevisible ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> activevisible' menu_itemPtr++{# fun unsafe Fl_Menu_Item_measure as measure' { id `Ptr ()',alloca- `Int' peekIntConv*,id `Ptr ()' } -> `Int' #}+instance (Parent a MenuPrim, impl ~ (Ref a ->  IO (Size))) => Op (Measure ()) MenuItem orig impl where+  runOp _ _ menu_item menu' = withRef menu_item $ \menu_itemPtr -> withRef menu' $ \menuPtr -> measure' menu_itemPtr menuPtr >>= \(h', w') -> return (Size (Width w') (Height h'))++{# fun unsafe Fl_Menu_Item_draw_with_t as drawWithT' { id `Ptr ()',`Int',`Int',`Int',`Int',id `Ptr ()',`Int' } -> `()' #}+instance (Parent a MenuPrim, impl ~ (Rectangle -> Ref a -> Int ->  IO ())) => Op (DrawWithT ()) MenuItem orig impl where+  runOp _ _ menu_item rectangle menu' t =+    let (x_pos', y_pos', width', height') = fromRectangle rectangle in+    withRef menu_item $ \menu_itemPtr -> withRef menu' $ \menuPtr -> drawWithT' menu_itemPtr x_pos' y_pos' width' height' menuPtr t++{# fun unsafe Fl_Menu_Item_draw as draw' { id `Ptr ()',`Int',`Int',`Int',`Int',id `Ptr ()' } -> `()' #}+instance (Parent a MenuPrim, impl ~ (Rectangle -> Ref a ->  IO ())) => Op (Draw ()) MenuItem orig impl where+  runOp _ _ menu_item rectangle menu' =+    let (x_pos', y_pos', width', height') = fromRectangle rectangle in+    withRef menu_item $ \menu_itemPtr ->+    withRef menu' $ \menuPtr -> draw' menu_itemPtr x_pos' y_pos' width' height' menuPtr++{# fun unsafe Fl_Menu_Item_flags as flags' { id `Ptr ()' } -> `Int' #}+instance (impl ~  IO (MenuItemFlags)) => Op (GetFlags ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> flags' menu_itemPtr >>= return . intToMenuItemFlags++{# fun unsafe Fl_Menu_Item_set_flags as setFlags' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (MenuItemFlags ->  IO ())) => Op (SetFlags ()) MenuItem orig impl where+  runOp _ _ menu_item flags = withRef menu_item $ \menu_itemPtr -> setFlags' menu_itemPtr (menuItemFlagsToInt flags)++{# fun unsafe Fl_Menu_Item_text as text' { id `Ptr ()' } -> `String' #}+instance (impl ~ ( IO (String))) => Op (GetText ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> text' menu_itemPtr++{# fun unsafe Fl_Menu_Item_pulldown_with_args as pulldownWithArgs' { id `Ptr ()',`Int',`Int',`Int',`Int',id `Ptr ()', id `Ptr ()', id `Ptr ()', fromBool `Bool'} -> `Ptr ()' id #}+instance (Parent a MenuPrim, Parent b MenuItem, Parent c MenuItem, impl ~ (Rectangle -> Maybe (Ref a) -> Maybe (Ref b) -> Maybe (Ref c) -> Maybe Bool -> IO (Ref MenuItem))) => Op (Pulldown ()) MenuItem orig impl where+  runOp _ _ menu_item rectangle picked' template_menu title menu_barFlag =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+        menu_bar = maybe False id menu_barFlag+    in+     withRef menu_item $ \menu_itemPtr ->+     withMaybeRef picked' $ \pickedPtr ->+     withMaybeRef template_menu $ \template_menuPtr ->+     withMaybeRef title $ \titlePtr ->+     pulldownWithArgs' menu_itemPtr x_pos y_pos width height pickedPtr template_menuPtr titlePtr menu_bar >>= toRef++{# fun unsafe Fl_Menu_Item_popup_with_args as popupWithArgs' { id `Ptr ()',`Int',`Int', id `Ptr CChar' , id `Ptr ()', id `Ptr ()'} -> `Ptr ()' id #}+instance (Parent a MenuItem, Parent b MenuPrim, Parent c MenuItem, impl ~ (Position -> Maybe String -> Maybe (Ref a) -> Maybe (Ref b) -> IO (Ref c))) => Op (Popup ()) MenuItem orig impl where+  runOp _ _ menu_item (Position (X x_pos) (Y y_pos)) title picked' template_menu =+    withRef menu_item $ \menu_itemPtr ->+    withMaybeRef picked' $ \pickedPtr ->+    withMaybeRef template_menu $ \template_menuPtr ->+    maybeNew newCString title >>= \titlePtr ->+    popupWithArgs' menu_itemPtr x_pos y_pos titlePtr pickedPtr template_menuPtr >>= toRef++{# fun unsafe Fl_Menu_Item_test_shortcut as testShortcut' { id `Ptr ()' } -> `Ptr ()' id #}+instance (Parent a MenuItem, impl ~ ( IO (Ref a))) => Op (TestShortcut ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> testShortcut' menu_itemPtr >>= toRef++{# fun unsafe Fl_Menu_Item_find_shortcut_with_ip_require_alt as findShortcutWithIpRequireAlt' { id `Ptr ()',id `Ptr CInt',`Bool' } -> `Ptr ()' id #}+instance (Parent a MenuItem, impl ~ (Maybe Int -> Bool -> IO (Ref a))) => Op (FindShortcut ()) MenuItem orig impl where+  runOp _ _ menu_item index' require_alt =+    withRef menu_item $ \menu_itemPtr ->+        maybeNew (new . fromIntegral) index' >>= \index_Ptr ->+            findShortcutWithIpRequireAlt' menu_itemPtr index_Ptr require_alt >>= toRef++{# fun unsafe Fl_Menu_Item_do_callback as doCallback' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (impl ~ (Ref Widget  ->  IO ())) => Op (DoCallback ()) MenuItem orig impl where+  runOp _ _ menu_item o = withRef menu_item $ \menu_itemPtr -> withRef o $ \oPtr -> doCallback' menu_itemPtr oPtr++{# fun Fl_Menu_Item_insert_with_flags as insertWithFlags' { id `Ptr ()',`Int',`String',id `CInt',id `FunPtr CallbackWithUserDataPrim',`Int'} -> `Int' #}+{# fun Fl_Menu_Item_add_with_flags as addWithFlags' { id `Ptr ()',`String',id `CInt',id `FunPtr CallbackWithUserDataPrim',`Int'} -> `Int' #}+{# fun Fl_Menu_Item_add_with_shortcutname_flags as addWithShortcutnameFlags' { id `Ptr ()',`String',`String',id `FunPtr CallbackWithUserDataPrim',`Int' } -> `Int' #}+instance (Parent a MenuItem, impl ~ (String -> Maybe Shortcut -> (Ref a -> IO ()) -> MenuItemFlags -> IO (MenuItemIndex))) => Op (Add ()) MenuItem orig impl where+  runOp _ _ menu_item name shortcut cb flags =+    withRef menu_item $ \menu_itemPtr -> do+      let combinedFlags = menuItemFlagsToInt flags+      ptr <- toCallbackPrim cb+      idx' <- case shortcut of+               Just s' -> case s' of+                 KeySequence (ShortcutKeySequence modifiers char) ->+                   addWithFlags'+                     menu_itemPtr+                     name+                     (keySequenceToCInt modifiers char)+                     (castFunPtr ptr)+                     combinedFlags+                 KeyFormat format' ->+                   if (not $ null format') then+                     addWithShortcutnameFlags'+                       menu_itemPtr+                       name+                       format'+                       (castFunPtr ptr)+                       combinedFlags+                   else error "menuItemAdd: shortcut format string cannot be empty"+               Nothing ->+                  addWithFlags'+                    menu_itemPtr+                    name+                    0+                    (castFunPtr ptr)+                    combinedFlags+      return (MenuItemIndex idx')++instance (Parent a MenuItem, impl ~ (Int -> String -> Maybe ShortcutKeySequence -> (Ref a -> IO ()) -> MenuItemFlags -> IO (MenuItemIndex))) => Op (Insert ()) MenuItem orig impl where+  runOp _ _ menu_item index' name ks cb flags =+    withRef menu_item $ \menu_itemPtr ->+      let combinedFlags = menuItemFlagsToInt flags+          shortcutCode = maybe 0 (\(ShortcutKeySequence modifiers char) -> keySequenceToCInt modifiers char ) ks+      in do+        ptr <- toCallbackPrim cb+        idx' <- insertWithFlags'+                 menu_itemPtr+                 index'+                 name+                 shortcutCode+                 (castFunPtr ptr)+                 combinedFlags+        return (MenuItemIndex idx')++{# fun unsafe Fl_Menu_Item_size as size' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetSize ()) MenuItem orig impl where+  runOp _ _ menu_item = withRef menu_item $ \menu_itemPtr -> size' menu_itemPtr++-- $functions+-- @+--+-- activate :: 'Ref' 'MenuItem' -> 'IO' ()+--+-- active :: 'Ref' 'MenuItem' -> 'IO' 'Bool'+--+-- activevisible :: 'Ref' 'MenuItem' -> 'IO' 'Bool'+--+-- add:: ('Parent' a 'MenuItem') => 'Ref' 'MenuItem' -> 'String' -> 'Maybe' 'Shortcut' -> ('Ref' a -> 'IO' ()) -> 'MenuItemFlags' -> 'IO' 'MenuItemIndex')+--+-- checkbox :: 'Ref' 'MenuItem' -> 'IO' 'Bool'+--+-- clear :: 'Ref' 'MenuItem' -> 'IO' ()+--+-- deactivate :: 'Ref' 'MenuItem' -> 'IO' ()+--+-- destroy :: 'Ref' 'MenuItem' -> 'IO' ()+--+-- doCallback :: 'Ref' 'MenuItem' -> 'Ref' 'Widget' -> 'IO' ()+--+-- draw:: ('Parent' a 'MenuPrim') => 'Ref' 'MenuItem' -> 'Rectangle' -> 'Ref' a -> 'IO' ())+--+-- drawWithT:: ('Parent' a 'MenuPrim') => 'Ref' 'MenuItem' -> 'Rectangle' -> 'Ref' a -> 'Int' -> 'IO' ())+--+-- findShortcut:: ('Parent' a 'MenuItem') => 'Ref' 'MenuItem' -> 'Maybe' 'Int' -> 'Bool' -> 'IO' ('Ref' a))+--+-- getFirst :: 'Ref' 'MenuItem' -> 'IO' ('Maybe' ('Ref' 'MenuItem'))+--+-- getFlags :: 'Ref' 'MenuItem' -> 'IO' 'MenuItemFlags'+--+-- getLabel :: 'Ref' 'MenuItem' -> 'IO' 'String'+--+-- getLabelcolor :: 'Ref' 'MenuItem' -> 'IO' 'Color'+--+-- getLabelfont :: 'Ref' 'MenuItem' -> 'IO' 'Font'+--+-- getLabelsize :: 'Ref' 'MenuItem' -> 'IO' 'FontSize'+--+-- getLabeltype :: 'Ref' 'MenuItem' -> 'IO' 'Labeltype'+--+-- getShortcut :: 'Ref' 'MenuItem' -> 'IO' 'Int'+--+-- getSize :: 'Ref' 'MenuItem' -> 'IO' 'Int'+--+-- getText :: 'Ref' 'MenuItem' -> 'IO' 'String'+--+-- getValue :: 'Ref' 'MenuItem' -> 'IO' 'Int'+--+-- hide :: 'Ref' 'MenuItem' -> 'IO' ()+--+-- insert:: ('Parent' a 'MenuItem') => 'Ref' 'MenuItem' -> 'Int' -> 'String' -> 'Maybe' 'ShortcutKeySequence' -> ('Ref' a -> 'IO' ()) -> 'MenuItemFlags' -> 'IO' 'MenuItemIndex')+--+-- measure:: ('Parent' a 'MenuPrim') => 'Ref' 'MenuItem' -> 'Ref' a -> 'IO' 'Size')+--+-- next :: 'Ref' 'MenuItem' -> 'IO' ('Maybe' ('Ref' 'MenuItem'))+--+-- nextWithStep:: ('Parent' a 'MenuItem') => 'Ref' 'MenuItem' -> 'Int' -> 'IO' ('Ref' a))+--+-- popup:: ('Parent' a 'MenuItem', 'Parent' b 'MenuPrim', 'Parent' c 'MenuItem') => 'Ref' 'MenuItem' -> 'Position' -> 'Maybe' 'String' -> 'Maybe' ('Ref' a) -> 'Maybe' ('Ref' b) -> 'IO' ('Ref' c))+--+-- pulldown:: ('Parent' a 'MenuPrim', 'Parent' b 'MenuItem', 'Parent' c 'MenuItem') => 'Ref' 'MenuItem' -> 'Rectangle' -> 'Maybe' ('Ref' a) -> 'Maybe' ('Ref' b) -> 'Maybe' ('Ref' c) -> 'Maybe' 'Bool' -> 'IO' ('Ref' 'MenuItem'))+--+-- radio :: 'Ref' 'MenuItem' -> 'IO' 'Bool'+--+-- set :: 'Ref' 'MenuItem' -> 'IO' ()+--+-- setCallback :: 'Ref' 'MenuItem' -> ('Ref' orig -> 'IO' ()) -> 'IO' ()+--+-- setFlags :: 'Ref' 'MenuItem' -> 'MenuItemFlags' -> 'IO' ()+--+-- setLabel :: 'Ref' 'MenuItem' -> 'String' -> 'IO' ()+--+-- setLabelWithLabeltype :: 'Ref' 'MenuItem' -> 'Labeltype' -> 'String' -> 'IO' ()+--+-- setLabelcolor :: 'Ref' 'MenuItem' -> 'Color' -> 'IO' ()+--+-- setLabelfont :: 'Ref' 'MenuItem' -> 'Font' -> 'IO' ()+--+-- setLabelsize :: 'Ref' 'MenuItem' -> 'FontSize' -> 'IO' ()+--+-- setLabeltype :: 'Ref' 'MenuItem' -> 'Labeltype' -> 'IO' ()+--+-- setShortcut :: 'Ref' 'MenuItem' -> 'Int' -> 'IO' ()+--+-- setonly :: 'Ref' 'MenuItem' -> 'IO' ()+--+-- showWidget :: 'Ref' 'MenuItem' -> 'IO' ()+--+-- submenu :: 'Ref' 'MenuItem' -> 'IO' 'Bool'+--+-- testShortcut:: ('Parent' a 'MenuItem') => 'Ref' 'MenuItem' -> 'IO' ('Ref' a))+--+-- visible :: 'Ref' 'MenuItem' -> 'IO' 'Bool'+-- @
+ src/Graphics/UI/FLTK/LowLevel/MenuPrim.chs view
@@ -0,0 +1,391 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.MenuPrim+    (+     menu_New+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Menu_C.h"+#include "Fl_WidgetC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Widget+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.MenuItem+import qualified Data.ByteString.Char8 as C++{# fun Fl_Menu__New as widgetNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Menu__New_WithLabel as widgetNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_OverriddenMenu__New_WithLabel as overriddenWidgetNewWithLabel' { `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenMenu__New as overriddenWidgetNew' { `Int',`Int',`Int',`Int', id `Ptr ()'} -> `Ptr ()' id #}+menu_New :: Rectangle -> Maybe String -> Maybe (CustomWidgetFuncs MenuPrim) -> IO (Ref MenuPrim)+menu_New rectangle l' funcs' =+  widgetMaker+    rectangle+    l'+    funcs'+    widgetNew'+    widgetNewWithLabel'+    overriddenWidgetNew'+    overriddenWidgetNewWithLabel'++{# fun Fl_Menu__Destroy as widgetDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) MenuPrim orig impl where+  runOp _ _ menu_ = swapRef menu_ $+                          \menu_Ptr ->+                             widgetDestroy' menu_Ptr >>+                             return nullPtr+{# fun Fl_Menu__handle_super as handleSuper' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Int))) => Op (HandleSuper ()) MenuPrim orig impl where+  runOp _ _ menu_ event = withRef menu_ $ \menu_Ptr -> handleSuper' menu_Ptr event+{#fun Fl_Menu__handle as menu_Handle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) MenuPrim orig impl where+  runOp _ _ menu_ event = withRef menu_ (\p -> menu_Handle' p (fromIntegral . fromEnum $ event))+{# fun Fl_Menu__resize_super as resizeSuper' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rectangle -> IO ())) => Op (ResizeSuper ()) MenuPrim orig impl where+  runOp _ _ menu_ rectangle =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in withRef menu_ $ \menu_Ptr -> resizeSuper' menu_Ptr x_pos y_pos width height+{# fun Fl_Menu__resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rectangle -> IO ())) => Op (Resize ()) MenuPrim orig impl where+  runOp _ _ menu_ rectangle = withRef menu_ $ \menu_Ptr -> do+                                 let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+                                 resize' menu_Ptr x_pos y_pos w_pos h_pos+{# fun Fl_Menu__hide_super as hideSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (HideSuper ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> hideSuper' menu_Ptr+{# fun Fl_Menu__hide as hide' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Hide ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> hide' menu_Ptr+{# fun Fl_Menu__show_super as showSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (ShowWidgetSuper ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> showSuper' menu_Ptr+{# fun Fl_Menu__show as menu_Show' {id `Ptr ()'} -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (ShowWidget ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ (\p -> menu_Show' p)++{# fun unsafe Fl_Menu__item_pathname_with_finditem as itemPathnameWithFinditem' { id `Ptr ()',id `Ptr CChar',`Int',id `Ptr ()' } -> `Int' #}+{# fun unsafe Fl_Menu__item_pathname as itemPathname' { id `Ptr ()',id `Ptr CChar',`Int' } -> `Int' #}+instance (Parent a MenuItem, impl ~ (Ref a -> IO (Maybe String))) => Op (ItemPathname ()) MenuPrim orig impl where+  runOp _ _ menu_ menu_item' =+    withRef menu_ $+    \ menu_Ref ->+     allocaBytes oneKb $ \ptr -> do+       retVal' <- withRef menu_item' $ \ menu_item'Ref -> itemPathnameWithFinditem' menu_Ref (castPtr ptr) oneKb menu_item'Ref+       if (retVal' == -1)+         then return Nothing+         else do+           b' <- C.packCString (castPtr ptr)+           return $ Just (C.unpack b')+instance (impl ~ (IO (Maybe String))) => Op (ItemPathnameRecent ()) MenuPrim orig impl where+  runOp _ _ menu_ =+    withRef menu_ $ \menu_Ptr ->+    allocaBytes oneKb $ \pathPtr -> do+      retVal' <- itemPathname' menu_Ptr (castPtr pathPtr) oneKb+      if (retVal' == -1)+        then return Nothing+        else do+          b' <- C.packCString (castPtr pathPtr)+          return $ Just (C.unpack b')++{# fun unsafe Fl_Menu__picked as picked' { id `Ptr ()',id `Ptr ()' } -> `Ptr ()' id #}+instance (Parent a MenuItem, Parent b MenuItem, impl ~ (Ref a -> IO (Ref b))) => Op (Picked ()) MenuPrim orig impl where+  runOp _ _ menu_ item = withRef menu_ $ \menu_Ptr -> withRef item $ \itemPtr -> picked' menu_Ptr itemPtr >>= toRef+{# fun unsafe Fl_Menu__find_index_with_name as findIndexWithName' { id `Ptr ()',`String' } -> `Int' #}+{# fun unsafe Fl_Menu__find_index_with_item as findIndexWithItem' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+instance (impl ~ (MenuItemLocator -> IO (Maybe Int))) => Op (FindIndex ()) MenuPrim orig impl where+  runOp _ _ menu_ menu_item_referene =+    withRef menu_ $ \menu_Ptr ->+        case menu_item_referene of+          MenuItemNameLocator (MenuItemName name) -> findIndexWithName' menu_Ptr name >>= \r -> if (r == -1) then (return Nothing) else (return $ Just r)+          MenuItemPointerLocator (MenuItemPointer menu_item) ->+              withRef menu_item $ \menu_itemPtr -> findIndexWithItem' menu_Ptr menu_itemPtr >>= \r -> if (r == -1) then (return Nothing) else (return $ Just r)+{# fun unsafe Fl_Menu__test_shortcut as testShortcut' { id `Ptr ()' } -> `Ptr ()' id #}+instance (Parent a MenuItem, impl ~ ( IO (Ref a))) => Op (TestShortcut ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> testShortcut' menu_Ptr >>= toRef+{# fun unsafe Fl_Menu__global as global' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Global ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> global' menu_Ptr+{# fun unsafe Fl_Menu__menu as menu' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Ref MenuItem))) => Op (GetMenu ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> menu' menu_Ptr >>= toRef+{# fun unsafe Fl_Menu__menu_with_m as menuWithM' { id `Ptr ()',id `Ptr ( Ptr () )',`Int' } -> `()' #}+instance (Parent a MenuItem, impl ~ ([Ref a] -> IO ())) => Op (SetMenu ()) MenuPrim orig impl where+  runOp _ _ menu_ items =+    withRef menu_ $ \menu_Ptr ->+        withRefs items $ \menu_itemsPtr ->+            menuWithM' menu_Ptr menu_itemsPtr (length items)+{# fun unsafe Fl_Menu__copy as copy' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a MenuItem, impl ~ (Ref a->  IO ())) => Op (Copy ()) MenuPrim orig impl where+  runOp _ _ menu_ m = withRef menu_ $ \menu_Ptr -> withRef m $ \mPtr -> copy' menu_Ptr mPtr++{# fun Fl_Menu__insert_with_flags as insertWithFlags' { id `Ptr ()',`Int',`String',id `CInt',id `FunPtr CallbackWithUserDataPrim',`Int'} -> `Int' #}+{# fun Fl_Menu__insert_with_shortcutname_flags as insertWithShortcutnameFlags' { id `Ptr ()',`Int',`String',`String',id `FunPtr CallbackWithUserDataPrim',`Int' } -> `Int' #}+instance (Parent a MenuPrim, impl ~ ( Int -> String -> Maybe Shortcut -> (Ref a -> IO ()) -> MenuItemFlags -> IO (MenuItemIndex))) => Op (Insert ()) MenuPrim orig impl where+  runOp _ _ menu_ index' name shortcut cb flags =+    withRef menu_ $ \menu_Ptr -> do+      let combinedFlags = menuItemFlagsToInt flags+      ptr <- toCallbackPrim cb+      idx' <- case shortcut of+               Just s' -> case s' of+                 KeySequence (ShortcutKeySequence modifiers char) ->+                   insertWithFlags'+                    menu_Ptr+                    index'+                    name+                    (keySequenceToCInt modifiers char)+                    (castFunPtr ptr)+                    combinedFlags+                 KeyFormat format' ->+                   if (not $ null format') then+                     insertWithShortcutnameFlags'+                       menu_Ptr+                       index'+                       name+                       format'+                       (castFunPtr ptr)+                       combinedFlags+                   else error "Fl_Menu_.menu_insert: shortcut format string cannot be empty"+               Nothing ->+                 insertWithFlags'+                   menu_Ptr+                   index'+                   name+                   0+                   (castFunPtr ptr)+                   combinedFlags+      return (MenuItemIndex idx')+{# fun Fl_Menu__add_with_name as add' { id `Ptr ()',`String'} -> `()' #}+instance (impl ~ (String -> IO ())) => Op (AddName ()) MenuPrim orig impl where+  runOp _ _ menu_ name' = withRef menu_ $ \menu_Ptr -> add' menu_Ptr name'+{# fun Fl_Menu__add_with_flags as addWithFlags' { id `Ptr ()',`String',id `CInt',id `FunPtr CallbackWithUserDataPrim',`Int' } -> `Int' #}+{# fun Fl_Menu__add_with_shortcutname_flags as addWithShortcutnameFlags' { id `Ptr ()',`String',`String',id `FunPtr CallbackWithUserDataPrim',`Int' } -> `Int' #}+instance (Parent a MenuPrim, impl ~ ( String -> Maybe Shortcut -> (Ref a-> IO ()) -> MenuItemFlags -> IO (MenuItemIndex))) => Op (Add ()) MenuPrim orig (impl) where+  runOp _ _ menu_ name shortcut cb flags =+    withRef menu_ $ \menu_Ptr -> do+      let combinedFlags = menuItemFlagsToInt flags+      ptr <- toCallbackPrim cb+      idx' <- case shortcut of+               Just s' -> case s' of+                 KeySequence (ShortcutKeySequence modifiers char) ->+                   addWithFlags'+                    menu_Ptr+                    name+                    (keySequenceToCInt modifiers char)+                    (castFunPtr ptr)+                    combinedFlags+                 KeyFormat format' ->+                   if (not $ null format') then+                     addWithShortcutnameFlags'+                     menu_Ptr+                     name+                     format'+                     (castFunPtr ptr)+                     combinedFlags+                   else error "Fl_Menu_.menu_add: Shortcut format string cannot be empty"+               Nothing ->+                   addWithFlags'+                    menu_Ptr+                    name+                    0+                    (castFunPtr ptr)+                    combinedFlags+      return (MenuItemIndex idx')+{# fun unsafe Fl_Menu__size as size' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetSize ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> size' menu_Ptr+{# fun unsafe Fl_Menu__set_size as setSize' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ (Int -> Int ->  IO ())) => Op (SetSize ()) MenuPrim orig impl where+  runOp _ _ menu_ w h = withRef menu_ $ \menu_Ptr -> setSize' menu_Ptr w h+{# fun unsafe Fl_Menu__clear as clear' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Clear ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> clear' menu_Ptr+{# fun unsafe Fl_Menu__clear_submenu as clearSubmenu' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Either OutOfRange ()))) => Op (ClearSubmenu ()) MenuPrim orig impl where+  runOp _ _ menu_ index' = withRef menu_ $ \menu_Ptr -> clearSubmenu' menu_Ptr index' >>= \ret' -> if ret' == -1 then return (Left OutOfRange) else return (Right ())+{# fun unsafe Fl_Menu__replace as replace' { id `Ptr ()',`Int',`String' } -> `()' #}+instance (impl ~ (Int -> String ->  IO ())) => Op (Replace ()) MenuPrim orig impl where+  runOp _ _ menu_ index' name = withRef menu_ $ \menu_Ptr -> replace' menu_Ptr index' name+{# fun unsafe Fl_Menu__remove as remove' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int  ->  IO ())) => Op (Remove ()) MenuPrim orig impl where+  runOp _ _ menu_ index' = withRef menu_ $ \menu_Ptr -> remove' menu_Ptr index'+{# fun unsafe Fl_Menu__shortcut as shortcut' { id `Ptr ()',`Int',id `CInt' } -> `()' #}+instance (impl ~ (Int -> ShortcutKeySequence ->  IO ())) => Op (SetShortcut ()) MenuPrim orig impl where+  runOp _ _ menu_ index' (ShortcutKeySequence modifiers char) =+    withRef menu_ $ \menu_Ptr ->+        shortcut' menu_Ptr index' (keySequenceToCInt modifiers char)+{# fun unsafe Fl_Menu__set_mode as setMode' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ (Int -> Int ->  IO ())) => Op (SetMode ()) MenuPrim orig impl where+  runOp _ _ menu_ i fl = withRef menu_ $ \menu_Ptr -> setMode' menu_Ptr i fl+{# fun unsafe Fl_Menu__mode as mode' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Int))) => Op (GetMode ()) MenuPrim orig impl where+  runOp _ _ menu_ i = withRef menu_ $ \menu_Ptr -> mode' menu_Ptr i+{# fun unsafe Fl_Menu__mvalue as mvalue' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Ref MenuItem))) => Op (Mvalue ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> mvalue' menu_Ptr >>= toRef+{# fun unsafe Fl_Menu__value as value' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetValue ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> value' menu_Ptr+{# fun unsafe Fl_Menu__value_with_item as valueWithItem' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+{# fun unsafe Fl_Menu__value_with_index as valueWithIndex' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (MenuItemReference -> IO (Int))) => Op (SetValue ()) MenuPrim orig impl where+  runOp _ _ menu_ menu_item_reference =+    withRef menu_ $ \menu_Ptr ->+        case menu_item_reference of+          (MenuItemByIndex (MenuItemIndex index')) -> valueWithIndex' menu_Ptr index'+          (MenuItemByPointer (MenuItemPointer menu_item)) ->+              withRef menu_item $ \menu_itemPtr ->+                  valueWithItem' menu_Ptr menu_itemPtr+{# fun unsafe Fl_Menu__text as text' { id `Ptr ()' } -> `String' #}+instance (impl ~ ( IO (String))) => Op (GetText ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> text' menu_Ptr+{# fun unsafe Fl_Menu__text_with_index as textWithIndex' { id `Ptr ()',`Int' } -> `String' #}+instance (impl ~ (Int ->  IO (String))) => Op (GetTextWithIndex ()) MenuPrim orig impl where+  runOp _ _ menu_ i = withRef menu_ $ \menu_Ptr -> textWithIndex' menu_Ptr i+{# fun unsafe Fl_Menu__textfont as textfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ ( IO (Font))) => Op (GetTextfont ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> textfont' menu_Ptr+{# fun unsafe Fl_Menu__set_textfont as setTextfont' { id `Ptr ()',cFromFont `Font' } -> `()' #}+instance (impl ~ (Font ->  IO ())) => Op (SetTextfont ()) MenuPrim orig impl where+  runOp _ _ menu_ c = withRef menu_ $ \menu_Ptr -> setTextfont' menu_Ptr c+{# fun unsafe Fl_Menu__textsize as textsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ ( IO (FontSize))) => Op (GetTextsize ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> textsize' menu_Ptr >>= return . FontSize+{# fun unsafe Fl_Menu__set_textsize as setTextsize' { id `Ptr ()',id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ())) => Op (SetTextsize ()) MenuPrim orig impl where+  runOp _ _ menu_ (FontSize c) = withRef menu_ $ \menu_Ptr -> setTextsize' menu_Ptr c+{# fun unsafe Fl_Menu__textcolor as textcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetTextcolor ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> textcolor' menu_Ptr+{# fun unsafe Fl_Menu__set_textcolor as setTextcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetTextcolor ()) MenuPrim orig impl where+  runOp _ _ menu_ c = withRef menu_ $ \menu_Ptr -> setTextcolor' menu_Ptr c+{# fun unsafe Fl_Menu__down_box as downBox' { id `Ptr ()' } -> `Boxtype' cToEnum #}+instance (impl ~ ( IO (Boxtype))) => Op (GetDownBox ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> downBox' menu_Ptr+{# fun unsafe Fl_Menu__set_down_box as setDownBox' { id `Ptr ()',cFromEnum `Boxtype' } -> `()' #}+instance (impl ~ (Boxtype ->  IO ())) => Op (SetDownBox ()) MenuPrim orig impl where+  runOp _ _ menu_ b = withRef menu_ $ \menu_Ptr -> setDownBox' menu_Ptr b+{# fun unsafe Fl_Menu__down_color as downColor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetDownColor ()) MenuPrim orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> downColor' menu_Ptr+{# fun unsafe Fl_Menu__set_down_color as setDownColor' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetDownColor ()) MenuPrim orig impl where+  runOp _ _ menu_ c = withRef menu_ $ \menu_Ptr -> setDownColor' menu_Ptr c++-- $functions+-- @+--+-- add:: ('Parent' a 'MenuPrim') => 'Ref' 'MenuPrim' -> 'String' -> 'Maybe' 'Shortcut' -> ('Ref' a -> 'IO' ()) -> 'MenuItemFlags' -> 'IO' 'MenuItemIndex')+--+-- addName :: 'Ref' 'MenuPrim' -> 'String' -> 'IO' ()+--+-- clear :: 'Ref' 'MenuPrim' -> 'IO' ()+--+-- clearSubmenu :: 'Ref' 'MenuPrim' -> 'Int' -> 'IO' ('Either' 'OutOfRange' ())+--+-- copy:: ('Parent' a 'MenuItem') => 'Ref' 'MenuPrim' -> 'Ref' a -> 'IO' ())+--+-- destroy :: 'Ref' 'MenuPrim' -> 'IO' ()+--+-- findIndex :: 'Ref' 'MenuPrim' -> 'MenuItemLocator' -> 'IO' ('Maybe' 'Int')+--+-- getDownBox :: 'Ref' 'MenuPrim' -> 'IO' 'Boxtype'+--+-- getDownColor :: 'Ref' 'MenuPrim' -> 'IO' 'Color'+--+-- getMenu :: 'Ref' 'MenuPrim' -> 'IO' ('Ref' 'MenuItem')+--+-- getMode :: 'Ref' 'MenuPrim' -> 'Int' -> 'IO' 'Int'+--+-- getSize :: 'Ref' 'MenuPrim' -> 'IO' 'Int'+--+-- getText :: 'Ref' 'MenuPrim' -> 'IO' 'String'+--+-- getTextWithIndex :: 'Ref' 'MenuPrim' -> 'Int' -> 'IO' 'String'+--+-- getTextcolor :: 'Ref' 'MenuPrim' -> 'IO' 'Color'+--+-- getTextfont :: 'Ref' 'MenuPrim' -> 'IO' 'Font'+--+-- getTextsize :: 'Ref' 'MenuPrim' -> 'IO' 'FontSize'+--+-- getValue :: 'Ref' 'MenuPrim' -> 'IO' 'Int'+--+-- global :: 'Ref' 'MenuPrim' -> 'IO' ()+--+-- handle :: 'Ref' 'MenuPrim' -> 'Event' -> 'IO' 'Int'+--+-- handleSuper :: 'Ref' 'MenuPrim' -> 'Int' -> 'IO' 'Int'+--+-- hide :: 'Ref' 'MenuPrim' -> 'IO' ()+--+-- hideSuper :: 'Ref' 'MenuPrim' -> 'IO' ()+--+-- insert:: ('Parent' a 'MenuPrim') => 'Ref' 'MenuPrim' -> 'Int' -> 'String' -> 'Maybe' 'Shortcut' -> ('Ref' a -> 'IO' ()) -> 'MenuItemFlags' -> 'IO' 'MenuItemIndex')+--+-- itemPathname:: ('Parent' a 'MenuItem') => 'Ref' 'MenuPrim' -> 'Ref' a -> 'IO' ('Maybe' 'String'))+--+-- itemPathnameRecent :: 'Ref' 'MenuPrim' -> 'IO' ('Maybe' 'String')+--+-- mvalue :: 'Ref' 'MenuPrim' -> 'IO' ('Ref' 'MenuItem')+--+-- picked:: ('Parent' a 'MenuItem', 'Parent' b 'MenuItem') => 'Ref' 'MenuPrim' -> 'Ref' a -> 'IO' ('Ref' b))+--+-- remove :: 'Ref' 'MenuPrim' -> 'Int' -> 'IO' ()+--+-- replace :: 'Ref' 'MenuPrim' -> 'Int' -> 'String' -> 'IO' ()+--+-- resize :: 'Ref' 'MenuPrim' -> 'Rectangle' -> 'IO' ()+--+-- resizeSuper :: 'Ref' 'MenuPrim' -> 'Rectangle' -> 'IO' ()+--+-- setDownBox :: 'Ref' 'MenuPrim' -> 'Boxtype' -> 'IO' ()+--+-- setDownColor :: 'Ref' 'MenuPrim' -> 'Int' -> 'IO' ()+--+-- setMenu:: ('Parent' a 'MenuItem') => 'Ref' 'MenuPrim' -> ['Ref' a] -> 'IO' ())+--+-- setMode :: 'Ref' 'MenuPrim' -> 'Int' -> 'Int' -> 'IO' ()+--+-- setShortcut :: 'Ref' 'MenuPrim' -> 'Int' -> 'ShortcutKeySequence' -> 'IO' ()+--+-- setSize :: 'Ref' 'MenuPrim' -> 'Int' -> 'Int' -> 'IO' ()+--+-- setTextcolor :: 'Ref' 'MenuPrim' -> 'Color' -> 'IO' ()+--+-- setTextfont :: 'Ref' 'MenuPrim' -> 'Font' -> 'IO' ()+--+-- setTextsize :: 'Ref' 'MenuPrim' -> 'FontSize' -> 'IO' ()+--+-- setValue :: 'Ref' 'MenuPrim' -> 'MenuItemReference' -> 'IO' 'Int'+--+-- showWidget :: 'Ref' 'MenuPrim' -> 'IO' ()+--+-- showWidgetSuper :: 'Ref' 'MenuPrim' -> 'IO' ()+--+-- testShortcut:: ('Parent' a 'MenuItem') => 'Ref' 'MenuPrim' -> 'IO' ('Ref' a))+--+-- @+++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.MenuPrim"+-- @
+ src/Graphics/UI/FLTK/LowLevel/NiceSlider.chs view
@@ -0,0 +1,52 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.NiceSlider+    (+     niceSliderNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_SliderC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Nice_Slider_New as niceSliderNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Nice_Slider_New_WithLabel as niceSliderNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+niceSliderNew :: Rectangle -> Maybe String -> IO (Ref NiceSlider)+niceSliderNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> niceSliderNew' x_pos y_pos width height >>=+                             toRef+        Just l -> niceSliderNewWithLabel' x_pos y_pos width height l >>=+                             toRef+-- $functions+-- @+--++-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Slider"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.NiceSlider"+-- @
+ src/Graphics/UI/FLTK/LowLevel/OverlayWindow.chs view
@@ -0,0 +1,97 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ExistentialQuantification #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.OverlayWindow+    (+     overlayWindowNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_C.h"+#include "Fl_Overlay_WindowC.h"+import Foreign+import Foreign.C+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch+import C2HS hiding (cFromEnum, toBool,cToEnum)++{# fun Fl_Overlay_Window_New_WithLabel as windowNewWithLabel' { `Int', `Int', `String', id `FunPtr CallbackPrim' } -> `Ptr ()' id #}+{# fun Fl_Overlay_Window_New as windowNew' { `Int', `Int', id `FunPtr CallbackPrim' } -> `Ptr ()' id #}+{# fun Fl_Overlay_Window_NewXY_WithLabel as windowNewWithXYLabel' { `Int', `Int', `Int', `Int', `String', id `FunPtr CallbackPrim' } -> `Ptr ()' id #}+{# fun Fl_Overlay_Window_NewXY as windowNewWithXY' { `Int', `Int', `Int', `Int', id `FunPtr CallbackPrim' } -> `Ptr ()' id #}++overlayWindowNew :: forall a. (Parent a OverlayWindow) => Size -> Maybe String -> Maybe Position -> (Ref a -> IO ()) -> IO (Ref OverlayWindow)+overlayWindowNew (Size (Width width') (Height height')) title' position' callback' =+    do+      fptr <- toCallbackPrim callback'+      case (title', position') of+        (Just t, Just (Position (X x') (Y y'))) -> windowNewWithXYLabel' width' height' x' y' t fptr >>= toRef+        (Nothing, Just (Position (X x') (Y y'))) -> windowNewWithXY' width' height' x' y' fptr >>= toRef+        (Just t, Nothing) -> windowNewWithLabel' width' height' t fptr >>= toRef+        (Nothing, Nothing) -> windowNew' width' height' fptr >>= toRef++{# fun Fl_Overlay_Window_Destroy as windowDestroy' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (Destroy ()) OverlayWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> windowDestroy' winPtr+{# fun unsafe Fl_Overlay_Window_show as show' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (ShowWidget ()) OverlayWindow orig impl where+  runOp _ _ window = withRef window (\p -> show' p)+{# fun unsafe Fl_Overlay_Window_flush as flush' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Flush ()) OverlayWindow orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> flush' windowPtr+{# fun unsafe Fl_Overlay_Window_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' #}+instance (impl ~ (Rectangle -> IO ())) => Op (Resize ()) OverlayWindow orig impl where+  runOp _ _ window rectangle = withRef window $ \windowPtr -> do+                                 let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+                                 resize' windowPtr x_pos y_pos w_pos h_pos+{# fun unsafe Fl_Overlay_Window_hide as hide' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Hide ()) OverlayWindow orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> hide' windowPtr+{# fun unsafe Fl_Overlay_Window_can_do_overlay as canDoOverlay' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (CanDoOverlay ()) OverlayWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> canDoOverlay' winPtr+{# fun unsafe Fl_Overlay_Window_redraw_overlay as redrawOverlay' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (RedrawOverlay ()) OverlayWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> redrawOverlay' winPtr++-- $functions+-- @+--+-- canDoOverlay :: 'Ref' 'OverlayWindow' -> 'IO' 'Int'+--+-- destroy :: 'Ref' 'OverlayWindow' -> 'IO' ()+--+-- flush :: 'Ref' 'OverlayWindow' -> 'IO' ()+--+-- hide :: 'Ref' 'OverlayWindow' -> 'IO' ()+--+-- redrawOverlay :: 'Ref' 'OverlayWindow' -> 'IO' ()+--+-- resize :: 'Ref' 'OverlayWindow' -> 'Rectangle' -> 'IO' ()+--+-- showWidget :: 'Ref' 'OverlayWindow' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Group"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Window"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.DoubleWindow"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.OverlayWindow"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Pixmap.chs view
@@ -0,0 +1,122 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Pixmap+ (+  pixmapNew+  -- * Hierarchy+  --+  -- $hierarchy++  -- * Functions+  --+  -- $functions+ )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_PixmapC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun unsafe Fl_Pixmap_New as flPixmapNew' { id `Ptr (Ptr CChar)'} -> `Ptr ()' id #}+pixmapNew :: PixmapHs -> IO (Ref Pixmap)+pixmapNew pixmap = withPixmap pixmap (\ptr -> flPixmapNew' ptr >>= toRef)+{# fun unsafe Fl_Pixmap_Destroy as flPixmapDestroy' { id `Ptr ()' } -> `()' id #}+instance (impl ~ (IO ())) => Op (Destroy ()) Pixmap orig impl where+  runOp _ _ pixmap = withRef pixmap $ \pixmapPtr -> flPixmapDestroy' pixmapPtr+{# fun unsafe Fl_Pixmap_w as w' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetW ()) Pixmap orig impl where+  runOp _ _ pixmap = withRef pixmap $ \pixmapPtr -> w' pixmapPtr+{# fun unsafe Fl_Pixmap_h as h' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetH ()) Pixmap orig impl where+  runOp _ _ pixmap = withRef pixmap $ \pixmapPtr -> h' pixmapPtr+{# fun unsafe Fl_Pixmap_d as d' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetD ()) Pixmap orig impl where+  runOp _ _ pixmap = withRef pixmap $ \pixmapPtr -> d' pixmapPtr+{# fun unsafe Fl_Pixmap_ld as ld' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetLd ()) Pixmap orig impl where+  runOp _ _ pixmap = withRef pixmap $ \pixmapPtr -> ld' pixmapPtr+{# fun unsafe Fl_Pixmap_count as count' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetCount ()) Pixmap orig impl where+  runOp _ _ pixmap = withRef pixmap $ \pixmapPtr -> count' pixmapPtr+{# fun unsafe Fl_Pixmap_copy_with_w_h as copyWithWH' { id `Ptr ()',`Int',`Int' } -> `Ptr ()' id #}+{# fun unsafe Fl_Pixmap_copy as copy' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( Maybe Size -> IO (Maybe (Ref Pixmap)))) => Op (Copy ()) Pixmap orig impl where+  runOp _ _ pixmap size' = case size' of+    Just (Size (Width w) (Height h)) -> withRef pixmap $ \pixmapPtr -> copyWithWH' pixmapPtr w h >>= toMaybeRef+    Nothing -> withRef pixmap $ \pixmapPtr -> copy' pixmapPtr >>= toMaybeRef+{# fun unsafe Fl_Pixmap_color_average as colorAverage' { id `Ptr ()',cFromColor `Color',`Float' } -> `()' #}+instance (impl ~ (Color -> Float ->  IO ())) => Op (ColorAverage ()) Pixmap orig impl where+  runOp _ _ pixmap c i = withRef pixmap $ \pixmapPtr -> colorAverage' pixmapPtr c i+{# fun unsafe Fl_Pixmap_inactive as inactive' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Inactive ()) Pixmap orig impl where+  runOp _ _ pixmap = withRef pixmap $ \pixmapPtr -> inactive' pixmapPtr+{# fun unsafe Fl_Pixmap_desaturate as desaturate' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Desaturate ()) Pixmap orig impl where+  runOp _ _ pixmap = withRef pixmap $ \pixmapPtr -> desaturate' pixmapPtr++{# fun unsafe Fl_Pixmap_draw_with_cx_cy as drawWithCxCy' { id `Ptr ()',`Int',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+{# fun unsafe Fl_Pixmap_draw_with_cx as drawWithCx' { id `Ptr ()',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+{# fun unsafe Fl_Pixmap_draw_with_cy as drawWithCy' { id `Ptr ()',`Int',`Int',`Int',`Int',`Int' } -> `()' #}+{# fun unsafe Fl_Pixmap_draw_with as drawWith' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' #}+instance (impl ~ (Position -> Size -> Maybe X -> Maybe Y -> IO ())) => Op (DrawResize ()) Pixmap orig impl where+  runOp _ _ pixmap (Position (X x) (Y y)) (Size (Width w) (Height h)) xOffset yOffset =+    case (xOffset, yOffset) of+      (Just (X xOff), Just (Y yOff)) ->+        withRef pixmap $ \pixmapPtr -> drawWithCxCy' pixmapPtr x y w h (fromIntegral xOff) (fromIntegral yOff)+      (Just (X xOff), Nothing) ->+        withRef pixmap $ \pixmapPtr -> drawWithCx' pixmapPtr x y w h (fromIntegral xOff)+      (Nothing, Just (Y yOff)) ->+        withRef pixmap $ \pixmapPtr -> drawWithCy' pixmapPtr x y w h (fromIntegral yOff)+      (Nothing, Nothing) ->+        withRef pixmap $ \pixmapPtr -> drawWith' pixmapPtr x y w h++{# fun unsafe Fl_Pixmap_draw as draw' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ (Position ->  IO ())) => Op (Draw ()) Pixmap orig impl where+  runOp _ _ image (Position (X x_pos') (Y y_pos')) = withRef image $ \imagePtr -> draw' imagePtr x_pos' y_pos'+{# fun unsafe Fl_Pixmap_uncache as uncache' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Uncache ()) Pixmap orig impl where+  runOp _ _ pixmap = withRef pixmap $ \pixmapPtr -> uncache' pixmapPtr++-- $functions+-- @+--+-- colorAverage :: 'Ref' 'Pixmap' -> 'Color' -> 'Float' -> 'IO' ()+--+-- copy :: 'Ref' 'Pixmap' -> 'Maybe' 'Size' -> 'IO' ('Maybe' ('Ref' 'Pixmap'))+--+-- desaturate :: 'Ref' 'Pixmap' -> 'IO' ()+--+-- destroy :: 'Ref' 'Pixmap' -> 'IO' ()+--+-- draw :: 'Ref' 'Pixmap' -> 'Position' -> 'IO' ()+--+-- drawResize :: 'Ref' 'Pixmap' -> 'Position' -> 'Size' -> 'Maybe' 'X' -> 'Maybe' 'Y' -> 'IO' ()+--+-- getCount :: 'Ref' 'Pixmap' -> 'IO' 'Int'+--+-- getD :: 'Ref' 'Pixmap' -> 'IO' 'Int'+--+-- getH :: 'Ref' 'Pixmap' -> 'IO' 'Int'+--+-- getLd :: 'Ref' 'Pixmap' -> 'IO' 'Int'+--+-- getW :: 'Ref' 'Pixmap' -> 'IO' 'Int'+--+-- inactive :: 'Ref' 'Pixmap' -> 'IO' ()+--+-- uncache :: 'Ref' 'Pixmap' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Image"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Pixmap"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Positioner.chs view
@@ -0,0 +1,142 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Positioner+    (+     -- * Constructor+     positionerNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_PositionerC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Positioner_New as positionerNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Positioner_New_WithLabel as positionerNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+positionerNew :: Rectangle -> Maybe String -> IO (Ref Positioner)+positionerNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> positionerNew' x_pos y_pos width height >>=+                             toRef+        Just l -> positionerNewWithLabel' x_pos y_pos width height l >>=+                               toRef++{# fun Fl_Positioner_Destroy as positionerDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Positioner orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+    positionerDestroy' winPtr+    return nullPtr++{#fun Fl_Positioner_handle as positionerHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Positioner orig impl where+  runOp _ _ positioner event = withRef positioner (\p -> positionerHandle' p (fromIntegral . fromEnum $ event))+{# fun unsafe Fl_Positioner_set_xvalue as setXvalue' { id `Ptr ()',`Double' } -> `()' #}+instance (impl ~ (Double ->  IO ())) => Op (SetXvalue ()) Positioner orig impl where+  runOp _ _ positioner xvalue = withRef positioner $ \positionerPtr -> setXvalue' positionerPtr xvalue+{# fun unsafe Fl_Positioner_xvalue as xvalue' { id `Ptr ()' } -> `Double' #}+instance (impl ~ ( IO (Double))) => Op (GetXvalue ()) Positioner orig impl where+  runOp _ _ positioner = withRef positioner $ \positionerPtr -> xvalue' positionerPtr+{# fun unsafe Fl_Positioner_set_yvalue as setYvalue' { id `Ptr ()',`Double' } -> `()' #}+instance (impl ~ (Double ->  IO ())) => Op (SetYvalue ()) Positioner orig impl where+  runOp _ _ positioner yvalue = withRef positioner $ \positionerPtr -> setYvalue' positionerPtr yvalue+{# fun unsafe Fl_Positioner_yvalue as yvalue' { id `Ptr ()' } -> `Double' #}+instance (impl ~ ( IO (Double))) => Op (GetYvalue ()) Positioner orig impl where+  runOp _ _ positioner = withRef positioner $ \positionerPtr -> yvalue' positionerPtr+{# fun unsafe Fl_Positioner_set_xminimum as setXminimum' { id `Ptr ()',`Double' } -> `()' #}+instance (impl ~ (Double ->  IO ())) => Op (SetXminimum ()) Positioner orig impl where+  runOp _ _ positioner xminimum = withRef positioner $ \positionerPtr -> setXminimum' positionerPtr xminimum+{# fun unsafe Fl_Positioner_xminimum as xminimum' { id `Ptr ()' } -> `Double' #}+instance (impl ~ ( IO (Double))) => Op (GetXminimum ()) Positioner orig impl where+  runOp _ _ positioner = withRef positioner $ \positionerPtr -> xminimum' positionerPtr+{# fun unsafe Fl_Positioner_set_yminimum as setYminimum' { id `Ptr ()',`Double' } -> `()' #}+instance (impl ~ (Double ->  IO ())) => Op (SetYminimum ()) Positioner orig impl where+  runOp _ _ positioner yminimum = withRef positioner $ \positionerPtr -> setYminimum' positionerPtr yminimum+{# fun unsafe Fl_Positioner_yminimum as yminimum' { id `Ptr ()' } -> `Double' #}+instance (impl ~ ( IO (Double))) => Op (GetYminimum ()) Positioner orig impl where+  runOp _ _ positioner = withRef positioner $ \positionerPtr -> yminimum' positionerPtr+{# fun unsafe Fl_Positioner_set_xmaximum as setXmaximum' { id `Ptr ()',`Double' } -> `()' #}+instance (impl ~ (Double ->  IO ())) => Op (SetXmaximum ()) Positioner orig impl where+  runOp _ _ positioner xmaximum = withRef positioner $ \positionerPtr -> setXmaximum' positionerPtr xmaximum+{# fun unsafe Fl_Positioner_xmaximum as xmaximum' { id `Ptr ()' } -> `Double' #}+instance (impl ~ ( IO (Double))) => Op (GetXmaximum ()) Positioner orig impl where+  runOp _ _ positioner = withRef positioner $ \positionerPtr -> xmaximum' positionerPtr+{# fun unsafe Fl_Positioner_set_ymaximum as setYmaximum' { id `Ptr ()',`Double' } -> `()' #}+instance (impl ~ (Double ->  IO ())) => Op (SetYmaximum ()) Positioner orig impl where+  runOp _ _ positioner ymaximum = withRef positioner $ \positionerPtr -> setYmaximum' positionerPtr ymaximum+{# fun unsafe Fl_Positioner_ymaximum as ymaximum' { id `Ptr ()' } -> `Double' #}+instance (impl ~ ( IO (Double))) => Op (GetYmaximum ()) Positioner orig impl where+  runOp _ _ positioner = withRef positioner $ \positionerPtr -> ymaximum' positionerPtr+{# fun unsafe Fl_Positioner_xbounds as xbounds' { id `Ptr ()',`Double',`Double' } -> `()' #}+instance (impl ~ (Double -> Double ->  IO ())) => Op (SetXbounds ()) Positioner orig impl where+  runOp _ _ positioner xstart xend = withRef positioner $ \positionerPtr -> xbounds' positionerPtr xstart xend+{# fun unsafe Fl_Positioner_ybounds as ybounds' { id `Ptr ()',`Double',`Double' } -> `()' #}+instance (impl ~ (Double -> Double ->  IO ())) => Op (SetYbounds ()) Positioner orig impl where+  runOp _ _ positioner ystart yend = withRef positioner $ \positionerPtr -> ybounds' positionerPtr ystart yend+{# fun unsafe Fl_Positioner_xstep as xstep' { id `Ptr ()',`Double' } -> `()' #}+instance (impl ~ (Double ->  IO ())) => Op (SetXstep ()) Positioner orig impl where+  runOp _ _ positioner xstep = withRef positioner $ \positionerPtr -> xstep' positionerPtr xstep+{# fun unsafe Fl_Positioner_ystep as ystep' { id `Ptr ()',`Double' } -> `()' #}+instance (impl ~ (Double ->  IO ())) => Op (SetYstep ()) Positioner orig impl where+  runOp _ _ positioner ystep = withRef positioner $ \positionerPtr -> ystep' positionerPtr ystep++-- $functions+-- @+--+-- destroy :: 'Ref' 'Positioner' -> 'IO' ()+--+-- getXmaximum :: 'Ref' 'Positioner' -> 'IO' 'Double'+--+-- getXminimum :: 'Ref' 'Positioner' -> 'IO' 'Double'+--+-- getXvalue :: 'Ref' 'Positioner' -> 'IO' 'Double'+--+-- getYmaximum :: 'Ref' 'Positioner' -> 'IO' 'Double'+--+-- getYminimum :: 'Ref' 'Positioner' -> 'IO' 'Double'+--+-- getYvalue :: 'Ref' 'Positioner' -> 'IO' 'Double'+--+-- handle :: 'Ref' 'Positioner' -> 'Event' -> 'IO' 'Int'+--+-- setXbounds :: 'Ref' 'Positioner' -> 'Double' -> 'Double' -> 'IO' ()+--+-- setXmaximum :: 'Ref' 'Positioner' -> 'Double' -> 'IO' ()+--+-- setXminimum :: 'Ref' 'Positioner' -> 'Double' -> 'IO' ()+--+-- setXstep :: 'Ref' 'Positioner' -> 'Double' -> 'IO' ()+--+-- setXvalue :: 'Ref' 'Positioner' -> 'Double' -> 'IO' ()+--+-- setYbounds :: 'Ref' 'Positioner' -> 'Double' -> 'Double' -> 'IO' ()+--+-- setYmaximum :: 'Ref' 'Positioner' -> 'Double' -> 'IO' ()+--+-- setYminimum :: 'Ref' 'Positioner' -> 'Double' -> 'IO' ()+--+-- setYstep :: 'Ref' 'Positioner' -> 'Double' -> 'IO' ()+--+-- setYvalue :: 'Ref' 'Positioner' -> 'Double' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Positioner"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Progress.chs view
@@ -0,0 +1,85 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Progress+    (+     -- * Constructor+     progressNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_ProgressC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Progress_New as progressNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Progress_New_WithLabel as progressNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+progressNew :: Rectangle -> Maybe String -> IO (Ref Progress)+progressNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> progressNew' x_pos y_pos width height >>=+                             toRef+        Just l -> progressNewWithLabel' x_pos y_pos width height l >>=+                               toRef++{# fun Fl_Progress_Destroy as progressDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Destroy ()) Progress orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+    progressDestroy' winPtr+    return nullPtr+{# fun unsafe Fl_Progress_set_maximum as setMaximum' { id `Ptr ()',`Float' } -> `()' #}+instance (impl ~ (Float ->  IO ())) => Op (SetMaximum ()) Progress orig impl where+  runOp _ _ progress v = withRef progress $ \progressPtr -> setMaximum' progressPtr v+{# fun unsafe Fl_Progress_maximum as maximum' { id `Ptr ()' } -> `Float' #}+instance (impl ~ ( IO (Float))) => Op (GetMaximum ()) Progress orig impl where+  runOp _ _ progress = withRef progress $ \progressPtr -> maximum' progressPtr+{# fun unsafe Fl_Progress_set_minimum as setMinimum' { id `Ptr ()',`Float' } -> `()' #}+instance (impl ~ (Float ->  IO ())) => Op (SetMinimum ()) Progress orig impl where+  runOp _ _ progress v = withRef progress $ \progressPtr -> setMinimum' progressPtr v+{# fun unsafe Fl_Progress_minimum as minimum' { id `Ptr ()' } -> `Float' #}+instance (impl ~ ( IO (Float))) => Op (GetMinimum ()) Progress orig impl where+  runOp _ _ progress = withRef progress $ \progressPtr -> minimum' progressPtr+{# fun unsafe Fl_Progress_set_value as setValue' { id `Ptr ()',`Float' } -> `()' #}+instance (impl ~ (Float ->  IO ())) => Op (SetValue ()) Progress orig impl where+  runOp _ _ progress v = withRef progress $ \progressPtr -> setValue' progressPtr v+{# fun unsafe Fl_Progress_value as value' { id `Ptr ()' } -> `Float' #}+instance (impl ~ ( IO (Float))) => Op (GetValue ()) Progress orig impl where+  runOp _ _ progress = withRef progress $ \progressPtr -> value' progressPtr++-- $functions+-- @+--+-- destroy :: 'Ref' 'Progress' -> 'IO' ()+--+-- getMaximum :: 'Ref' 'Progress' -> 'IO' 'Float'+--+-- getMinimum :: 'Ref' 'Progress' -> 'IO' 'Float'+--+-- getValue :: 'Ref' 'Progress' -> 'IO' 'Float'+--+-- setMaximum :: 'Ref' 'Progress' -> 'Float' -> 'IO' ()+--+-- setMinimum :: 'Ref' 'Progress' -> 'Float' -> 'IO' ()+--+-- setValue :: 'Ref' 'Progress' -> 'Float' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Progress"+-- @
+ src/Graphics/UI/FLTK/LowLevel/RGBImage.chs view
+ src/Graphics/UI/FLTK/LowLevel/RadioLightButton.chs view
@@ -0,0 +1,51 @@+{-# LANGUAGE CPP, EmptyDataDecls, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.RadioLightButton+    (+     radioLightButtonNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Radio_Light_ButtonC.h"+#include "Fl_WidgetC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Radio_Light_Button_New as widgetNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Radio_Light_Button_New_WithLabel as widgetNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+radioLightButtonNew :: Rectangle -> Maybe String -> IO (Ref RadioLightButton)+radioLightButtonNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> widgetNew' x_pos y_pos width height >>= toRef+        Just l -> widgetNewWithLabel' x_pos y_pos width height l >>= toRef+-- $functions+-- @+--++-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Button"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.LightButton"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.RadioLightButton"+-- @
+ src/Graphics/UI/FLTK/LowLevel/RepeatButton.chs view
@@ -0,0 +1,71 @@+{-# LANGUAGE CPP, EmptyDataDecls, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.RepeatButton+    (+    repeatButtonNew+    -- * Hierarchy+    --+    -- $hierarchy++    -- * Functions+    --+    -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Return_ButtonC.h"+#include "Fl_WidgetC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Return_Button_New as widgetNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Return_Button_New_WithLabel as widgetNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+repeatButtonNew :: Rectangle -> Maybe String -> IO (Ref RepeatButton)+repeatButtonNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> widgetNew' x_pos y_pos width height >>= toRef+        Just l -> widgetNewWithLabel' x_pos y_pos width height l >>= toRef++{# fun Fl_Return_Button_Destroy as widgetDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Destroy ()) RepeatButton orig impl where+  runOp _ _ button = swapRef button $+                    \buttonPtr ->+                     widgetDestroy' buttonPtr >>+                     return nullPtr++{#fun Fl_Return_Button_handle as handle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ ( Event -> IO Int)) => Op (Handle ()) RepeatButton orig impl where+  runOp _ _ button event = withRef button (\p -> handle' p (fromIntegral . fromEnum $ event))++{#fun Fl_Return_Button_deactivate as deactivate' { id `Ptr ()'} -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Deactivate ()) RepeatButton orig impl where+  runOp _ _ button = withRef button (\p -> deactivate' p )++-- $functions+-- @+--+-- deactivate :: 'Ref' 'RepeatButton' -> 'IO' ()+--+-- destroy :: 'Ref' 'RepeatButton' -> 'IO' ()+--+-- handle :: 'Ref' 'RepeatButton' -> 'Event' -> 'IO' 'Int'+--+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Button"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.RepeatButton"+-- @
+ src/Graphics/UI/FLTK/LowLevel/ReturnButton.chs view
@@ -0,0 +1,65 @@+{-# LANGUAGE CPP, EmptyDataDecls, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.ReturnButton+    (+     returnButtonNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Return_ButtonC.h"+#include "Fl_WidgetC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Return_Button_New as widgetNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Return_Button_New_WithLabel as widgetNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+returnButtonNew :: Rectangle -> Maybe String -> IO (Ref ReturnButton)+returnButtonNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> widgetNew' x_pos y_pos width height >>= toRef+        Just l -> widgetNewWithLabel' x_pos y_pos width height l >>= toRef++{# fun Fl_Return_Button_Destroy as widgetDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~  IO ()) => Op (Destroy ()) ReturnButton orig impl where+  runOp _ _ button = swapRef button $+                    \buttonPtr ->+                     widgetDestroy' buttonPtr >>+                     return nullPtr++{#fun Fl_Return_Button_handle as handle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ ( Event -> IO Int)) => Op (Handle ()) ReturnButton orig impl where+  runOp _ _ button event = withRef button (\p -> handle' p (fromIntegral . fromEnum $ event))+-- $functions+-- @+--+-- destroy :: 'Ref' 'ReturnButton' -> 'IO' ()+--+-- handle :: 'Ref' 'ReturnButton' -> 'Event' -> 'IO' 'Int'+--+-- @+++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Button"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.ReturnButton"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Roller.chs view
@@ -0,0 +1,65 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Roller+    (+     -- * Constructor+     rollerNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_RollerC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Roller_New as rollerNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Roller_New_WithLabel as rollerNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+rollerNew :: Rectangle -> Maybe String -> IO (Ref Roller)+rollerNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> rollerNew' x_pos y_pos width height >>=+                             toRef+        Just l -> rollerNewWithLabel' x_pos y_pos width height l >>=+                               toRef++{# fun Fl_Roller_Destroy as rollerDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Roller orig impl where+  runOp _ _ roller = swapRef roller $ \rollerPtr -> do+    rollerDestroy' rollerPtr+    return nullPtr++{#fun Fl_Roller_handle as rollerHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Roller orig impl where+  runOp _ _ roller event = withRef roller (\p -> rollerHandle' p (fromIntegral . fromEnum $ event))++-- $functions+-- @+--+-- destroy :: 'Ref' 'Roller' -> 'IO' ()+--+-- handle :: 'Ref' 'Roller' -> 'Event' -> 'IO' 'Int'+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Roller"+-- @
+ src/Graphics/UI/FLTK/LowLevel/RoundButton.chs view
@@ -0,0 +1,57 @@+{-# LANGUAGE CPP, EmptyDataDecls, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.RoundButton+    (+     roundButtonNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Round_ButtonC.h"+#include "Fl_WidgetC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Round_Button_New as widgetNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Round_Button_New_WithLabel as widgetNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+roundButtonNew :: Rectangle -> Maybe String -> IO (Ref RoundButton)+roundButtonNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> widgetNew' x_pos y_pos width height >>= toRef+        Just l -> widgetNewWithLabel' x_pos y_pos width height l >>= toRef++{# fun Fl_Round_Button_Destroy as widgetDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ IO ()) => Op (Destroy ()) RoundButton orig impl where+  runOp _ _ button = swapRef button $+                    \buttonPtr ->+                     widgetDestroy' buttonPtr >>+                     return nullPtr++-- $functions+-- @+--+-- destroy :: 'Ref' 'RoundButton' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Button"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.RoundButton"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Scrollbar.chs view
@@ -0,0 +1,87 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Scrollbar+    (+     -- * Constructor+     scrollbarNew,+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_ScrollbarC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Scrollbar_New as scrollbarNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Scrollbar_New_WithLabel as scrollbarNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+scrollbarNew :: Rectangle -> Maybe String -> IO (Ref Scrollbar)+scrollbarNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> scrollbarNew' x_pos y_pos width height >>=+                             toRef+        Just l -> scrollbarNewWithLabel' x_pos y_pos width height l >>=+                               toRef++{# fun Fl_Scrollbar_Destroy as scrollbarDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Scrollbar orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+    scrollbarDestroy' winPtr+    return nullPtr++{# fun unsafe Fl_Scrollbar_scrollvalue as scrollvalue' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `Int' #}+instance (impl ~ (Int -> Int -> Int -> Int ->  IO (Int))) => Op (SetValue ()) Scrollbar orig impl where+  runOp _ _ slider pos size first total = withRef slider $ \sliderPtr -> scrollvalue' sliderPtr pos size first total++{# fun unsafe Fl_Scrollbar_set_linesize as setLinesize' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (LineSize ->  IO ())) => Op (SetLinesize ()) Scrollbar orig impl where+  runOp _ _ slider (LineSize i) = withRef slider $ \sliderPtr -> setLinesize' sliderPtr i++{# fun unsafe Fl_Scrollbar_linesize as linesize' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO LineSize)) => Op (GetLinesize ()) Scrollbar orig impl where+  runOp _ _ slider = withRef slider $ \sliderPtr -> linesize' sliderPtr >>= return . LineSize++{#fun Fl_Scrollbar_handle as scrollbarHandle'+      { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Scrollbar orig impl where+  runOp _ _ scrollbar event = withRef scrollbar (\p -> scrollbarHandle' p (fromIntegral . fromEnum $ event))++-- $functions+-- @+--+-- destroy :: 'Ref' 'Scrollbar' -> 'IO' ()+--+-- getLinesize :: 'Ref' 'Scrollbar' -> 'IO' 'LineSize'+--+-- handle :: 'Ref' 'Scrollbar' -> 'Event' -> 'IO' 'Int'+--+-- setLinesize :: 'Ref' 'Scrollbar' -> 'LineSize' -> 'IO' ()+--+-- setValue :: 'Ref' 'Scrollbar' -> 'Int' -> 'Int' -> 'Int' -> 'Int' -> 'IO' 'Int'+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Slider"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Scrollbar"+-- @
+ src/Graphics/UI/FLTK/LowLevel/SelectBrowser.chs view
@@ -0,0 +1,52 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.SelectBrowser+    (+     selectBrowserNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Select_BrowserC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Select_Browser_New as selectBrowserNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Select_Browser_New_WithLabel as selectBrowserNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+selectBrowserNew :: Rectangle -> Maybe String -> IO (Ref SelectBrowser)+selectBrowserNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> selectBrowserNew' x_pos y_pos width height >>=+                             toRef+        Just l -> selectBrowserNewWithLabel' x_pos y_pos width height l >>=+                             toRef+-- $functions+-- @+--++-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Group"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Browser"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.SelectBrowser"+-- @
+ src/Graphics/UI/FLTK/LowLevel/SimpleCounter.chs view
@@ -0,0 +1,52 @@+module Graphics.UI.FLTK.LowLevel.SimpleCounter+    (+     -- * Constructor+     simpleCounterNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_CounterC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Simple_Counter_New as simpleCounterNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Simple_Counter_New_WithLabel as simpleCounterNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+simpleCounterNew :: Rectangle -> Maybe String -> IO (Ref SimpleCounter)+simpleCounterNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> simpleCounterNew' x_pos y_pos width height >>=+                             toRef+        Just l -> simpleCounterNewWithLabel' x_pos y_pos width height l >>=+                               toRef++-- $functions+-- @+--++-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Counter"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.SimpleCounter"+-- @
+ src/Graphics/UI/FLTK/LowLevel/SingleWindow.chs view
@@ -0,0 +1,145 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.SingleWindow+  (+    singleWindowNew,+    singleWindowCustom+    -- * Hierarchy+    --+    -- $hierarchy++    -- * Functions+    --+    -- $functions+  )+where+#include "Fl_C.h"+#include "Fl_Single_WindowC.h"+import Foreign+import Foreign.C+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Widget+import Graphics.UI.FLTK.LowLevel.Window+import C2HS hiding (cFromEnum, toBool,cToEnum)++{# fun Fl_OverriddenSingle_Window_New as overriddenWindowNew' {`Int',`Int', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenSingle_Window_NewXY as overriddenWindowNewXY' {`Int',`Int', `Int', `Int', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenSingle_Window_NewXY_WithLabel as overriddenWindowNewXYWithLabel' { `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenSingle_Window_New_WithLabel as overriddenWindowNewWithLabel' { `Int',`Int', `String', id `Ptr ()'} -> `Ptr ()' id #}+singleWindowCustom :: Size -> Maybe Position -> Maybe String -> CustomWidgetFuncs SingleWindow -> CustomWindowFuncs SingleWindow -> IO (Ref SingleWindow)+singleWindowCustom size position title customWidgetFuncs' customWindowFuncs' =+  windowMaker+    size+    position+    title+    customWidgetFuncs'+    customWindowFuncs'+    overriddenWindowNew'+    overriddenWindowNewWithLabel'+    overriddenWindowNewXY'+    overriddenWindowNewXYWithLabel'++singleWindowNew :: Size -> Maybe Position -> Maybe String -> IO (Ref SingleWindow)+singleWindowNew size position title =+  windowMaker+    size+    position+    title+    (defaultCustomWidgetFuncs :: CustomWidgetFuncs SingleWindow)+    (defaultCustomWindowFuncs :: CustomWindowFuncs SingleWindow)+    overriddenWindowNew'+    overriddenWindowNewWithLabel'+    overriddenWindowNewXY'+    overriddenWindowNewXYWithLabel'++{# fun Fl_Single_Window_Destroy as windowDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) SingleWindow orig impl where+  runOp _ _ win = withRef win $ \winPtr -> windowDestroy' winPtr++{# fun Fl_Single_Window_draw_super as drawSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (DrawSuper ()) SingleWindow orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> drawSuper' windowPtr++{# fun Fl_Single_Window_handle_super as handleSuper' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Int))) => Op (HandleSuper ()) SingleWindow orig impl where+  runOp _ _ window event = withRef window $ \windowPtr -> handleSuper' windowPtr event++{# fun Fl_Single_Window_resize_super as resizeSuper' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rectangle -> IO ())) => Op (ResizeSuper ()) SingleWindow orig impl where+  runOp _ _ window rectangle =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in withRef window $ \windowPtr -> resizeSuper' windowPtr x_pos y_pos width height++{# fun Fl_Single_Window_show_super as showSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (ShowWidgetSuper ()) SingleWindow orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> showSuper' windowPtr++{# fun Fl_Single_Window_hide_super as hideSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (HideSuper ()) SingleWindow orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> hideSuper' windowPtr++{# fun Fl_Single_Window_hide as hide' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Hide ()) SingleWindow orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> hide' windowPtr++{# fun Fl_Single_Window_flush_super as flushSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (FlushSuper ()) SingleWindow orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> flushSuper' windowPtr++{# fun Fl_Single_Window_show as windowShow' {id `Ptr ()'} -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (ShowWidget ()) SingleWindow orig impl where+  runOp _ _ window = withRef window (\p -> windowShow' p)++{#fun Fl_Single_Window_handle as windowHandle'+      { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) SingleWindow orig impl where+  runOp _ _ window event = withRef window (\p -> windowHandle' p (fromIntegral . fromEnum $ event))++{# fun Fl_Single_Window_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rectangle -> IO ())) => Op (Resize ()) SingleWindow orig impl where+  runOp _ _ window rectangle = withRef window $ \windowPtr -> do+                                 let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+                                 resize' windowPtr x_pos y_pos w_pos h_pos+-- $functions+-- @+--+-- destroy :: 'Ref' 'SingleWindow' -> 'IO' ()+--+-- drawSuper :: 'Ref' 'SingleWindow' -> 'IO' ()+--+-- flushSuper :: 'Ref' 'SingleWindow' -> 'IO' ()+--+-- handle :: 'Ref' 'SingleWindow' -> 'Event' -> 'IO' 'Int'+--+-- handleSuper :: 'Ref' 'SingleWindow' -> 'Int' -> 'IO' 'Int'+--+-- hide :: 'Ref' 'SingleWindow' -> 'IO' ()+--+-- hideSuper :: 'Ref' 'SingleWindow' -> 'IO' ()+--+-- resize :: 'Ref' 'SingleWindow' -> 'Rectangle' -> 'IO' ()+--+-- resizeSuper :: 'Ref' 'SingleWindow' -> 'Rectangle' -> 'IO' ()+--+-- showWidget :: 'Ref' 'SingleWindow' -> 'IO' ()+--+-- showWidgetSuper :: 'Ref' 'SingleWindow' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Group"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Window"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.SingleWindow"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Slider.chs view
@@ -0,0 +1,93 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Slider+    (+     sliderNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_SliderC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Slider_New as sliderNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Slider_New_WithLabel as sliderNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+sliderNew :: Rectangle -> Maybe String -> IO (Ref Slider)+sliderNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> sliderNew' x_pos y_pos width height >>=+                             toRef+        Just l -> sliderNewWithLabel' x_pos y_pos width height l >>=+                             toRef++{# fun Fl_Slider_Destroy as sliderDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Slider orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+                                        sliderDestroy' winPtr+                                        return nullPtr+{#fun Fl_Slider_handle as sliderHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Slider orig impl where+  runOp _ _ slider event = withRef slider (\p -> sliderHandle' p (fromIntegral . fromEnum $ event))+{# fun unsafe Fl_Slider_bounds as bounds' { id `Ptr ()',`Double',`Double' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Double -> Double ->  IO ())) => Op (Bounds ()) Slider orig impl where+  runOp _ _ slider a b = withRef slider $ \sliderPtr -> bounds' sliderPtr a b+{# fun unsafe Fl_Slider_scrollvalue as scrollvalue' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `Int' #}+instance (impl ~ (Int -> Int -> Int -> Int ->  IO (Int))) => Op (Scrollvalue ()) Slider orig impl where+  runOp _ _ slider pos slider_size first total = withRef slider $ \sliderPtr -> scrollvalue' sliderPtr pos slider_size first total+{# fun unsafe Fl_Slider_set_slider_size as setSliderSize' { id `Ptr ()' } -> `Float' #}+instance (impl ~ ( IO (Float))) => Op (SetSliderSize ()) Slider orig impl where+  runOp _ _ slider = withRef slider $ \sliderPtr -> setSliderSize' sliderPtr+{# fun unsafe Fl_Slider_slider_size as sliderSize' { id `Ptr ()',`Double' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Double ->  IO ())) => Op (GetSliderSize ()) Slider orig impl where+  runOp _ _ slider v = withRef slider $ \sliderPtr -> sliderSize' sliderPtr v+{# fun unsafe Fl_Slider_slider as slider' { id `Ptr ()' } -> `Boxtype' cToEnum #}+instance (impl ~ ( IO (Boxtype))) => Op (GetSlider ()) Slider orig impl where+  runOp _ _ slider = withRef slider $ \sliderPtr -> slider' sliderPtr+{# fun unsafe Fl_Slider_set_slider as setSlider' { id `Ptr ()',cFromEnum `Boxtype' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Boxtype ->  IO ())) => Op (SetSlider ()) Slider orig impl where+  runOp _ _ slider c = withRef slider $ \sliderPtr -> setSlider' sliderPtr c++-- $functions+-- @+--+-- bounds :: 'Ref' 'Slider' -> 'Double' -> 'Double' -> 'IO' ()+--+-- destroy :: 'Ref' 'Slider' -> 'IO' ()+--+-- getSlider :: 'Ref' 'Slider' -> 'IO' 'Boxtype'+--+-- getSliderSize :: 'Ref' 'Slider' -> 'Double' -> 'IO' ()+--+-- handle :: 'Ref' 'Slider' -> 'Event' -> 'IO' 'Int'+--+-- scrollvalue :: 'Ref' 'Slider' -> 'Int' -> 'Int' -> 'Int' -> 'Int' -> 'IO' 'Int'+--+-- setSlider :: 'Ref' 'Slider' -> 'Boxtype' -> 'IO' ()+--+-- setSliderSize :: 'Ref' 'Slider' -> 'IO' 'Float'+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Slider"+-- @
+ src/Graphics/UI/FLTK/LowLevel/SysMenuBar.chs view
@@ -0,0 +1,118 @@+{-# LANGUAGE CPP, EmptyDataDecls, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.SysMenuBar+    (+     sysMenuBarNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Sys_Menu_BarC.h"+#include "Fl_WidgetC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun Fl_Sys_Menu_Bar_New as sysMenuBarNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Sys_Menu_Bar_New_WithLabel as sysMenuBarNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+sysMenuBarNew :: Rectangle -> Maybe String -> IO (Ref SysMenuBar)+sysMenuBarNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> sysMenuBarNew' x_pos y_pos width height >>=+                             toRef+        Just l -> sysMenuBarNewWithLabel' x_pos y_pos width height l >>=+                               toRef+{# fun Fl_Sys_Menu_Bar_Destroy as sysMenuBarDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Destroy ()) SysMenuBar orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+    sysMenuBarDestroy' winPtr+    return nullPtr+{#fun Fl_Sys_Menu_Bar_handle as sysMenuBarHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ ( Event -> IO Int)) => Op (Handle ()) SysMenuBar orig impl where+  runOp _ _ menu_bar event = withRef menu_bar (\p -> sysMenuBarHandle' p (fromIntegral . fromEnum $ event))+{# fun unsafe Fl_Sys_Menu_Bar_remove as remove' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int  ->  IO ())) => Op (Remove ()) SysMenuBar orig impl where+  runOp _ _ menu_ index' = withRef menu_ $ \menu_Ptr -> remove' menu_Ptr index'+{# fun unsafe Fl_Sys_Menu_Bar_replace as replace' { id `Ptr ()',`Int',`String' } -> `()' #}+instance (impl ~ (Int -> String ->  IO ())) => Op (Replace ()) SysMenuBar orig impl where+  runOp _ _ menu_ index' name = withRef menu_ $ \menu_Ptr -> replace' menu_Ptr index' name+{# fun unsafe Fl_Sys_Menu_Bar_clear as clear' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Clear ()) SysMenuBar orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> clear' menu_Ptr+{# fun unsafe Fl_Sys_Menu_Bar_clear_submenu as clearSubmenu' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Int))) => Op (ClearSubmenu ()) SysMenuBar orig impl where+  runOp _ _ menu_ index' = withRef menu_ $ \menu_Ptr -> clearSubmenu' menu_Ptr index'+{# fun unsafe Fl_Sys_Menu_Bar_shortcut as shortcut' { id `Ptr ()',`Int',id `CInt' } -> `()' #}+instance (impl ~ (Int -> ShortcutKeySequence ->  IO ())) => Op (SetShortcut ()) SysMenuBar orig impl where+  runOp _ _ menu_ index' (ShortcutKeySequence modifiers char) =+    withRef menu_ $ \menu_Ptr ->+        shortcut' menu_Ptr index' (keySequenceToCInt modifiers char)+{# fun unsafe Fl_Sys_Menu_Bar_set_mode as setMode' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ (Int -> Int ->  IO ())) => Op (SetMode ()) SysMenuBar orig impl where+  runOp _ _ menu_ i fl = withRef menu_ $ \menu_Ptr -> setMode' menu_Ptr i fl+{# fun unsafe Fl_Sys_Menu_Bar_mode as mode' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Int))) => Op (GetMode ()) SysMenuBar orig impl where+  runOp _ _ menu_ i = withRef menu_ $ \menu_Ptr -> mode' menu_Ptr i+{# fun unsafe Fl_Sys_Menu_Bar_global as global' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Global ()) SysMenuBar orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> global' menu_Ptr+{# fun unsafe Fl_Sys_Menu_Bar_menu as menu' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Ref MenuItem))) => Op (GetMenu ()) SysMenuBar orig impl where+  runOp _ _ menu_ = withRef menu_ $ \menu_Ptr -> menu' menu_Ptr >>= toRef+{# fun unsafe Fl_Sys_Menu_Bar_menu_with_m as menuWithM' { id `Ptr ()',id `Ptr ( Ptr () )',`Int' } -> `()' #}+instance (impl ~ ([Ref MenuItem] -> IO ())) => Op (SetMenu ()) SysMenuBar orig impl where+  runOp _ _ menu_ items =+    withRef menu_ $ \menu_Ptr ->+        withRefs items $ \menu_itemsPtr ->+            menuWithM' menu_Ptr menu_itemsPtr (length items)++-- $functions+-- @+--+-- clear :: 'Ref' 'SysMenuBar' -> 'IO' ()+--+-- clearSubmenu :: 'Ref' 'SysMenuBar' -> 'Int' -> 'IO' 'Int'+--+-- destroy :: 'Ref' 'SysMenuBar' -> 'IO' ()+--+-- getMenu :: 'Ref' 'SysMenuBar' -> 'IO' ('Ref' 'MenuItem')+--+-- getMode :: 'Ref' 'SysMenuBar' -> 'Int' -> 'IO' 'Int'+--+-- global :: 'Ref' 'SysMenuBar' -> 'IO' ()+--+-- handle :: 'Ref' 'SysMenuBar' -> 'Event' -> 'IO' 'Int'+--+-- remove :: 'Ref' 'SysMenuBar' -> 'Int' -> 'IO' ()+--+-- replace :: 'Ref' 'SysMenuBar' -> 'Int' -> 'String' -> 'IO' ()+--+-- setMenu :: 'Ref' 'SysMenuBar' -> ['Ref' 'MenuItem'] -> 'IO' ()+--+-- setMode :: 'Ref' 'SysMenuBar' -> 'Int' -> 'Int' -> 'IO' ()+--+-- setShortcut :: 'Ref' 'SysMenuBar' -> 'Int' -> 'ShortcutKeySequence' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.MenuPrim"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.SysMenuBar"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Table.chs view
@@ -0,0 +1,525 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Table+    (+     TableCoordinate(..),+     Row(..),+     Column(..),+     CustomTableFuncs(..),+     mkSetInt,+     mkDrawCell,+     toSetIntPrim,+     toDrawCellPrim,+     fillCustomTableFunctionStruct,+     defaultCustomTableFuncs,+     tableCustom,+     tableCustomFunctionStruct+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Table functions+     --+     -- $Tablefunctions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_TableC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Widget+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch+data Row = Row Int+data Column = Column Int+data TableCoordinate = TableCoordinate Row Column+foreign import ccall "wrapper"+        mkSetInt ::  (Ptr () -> CInt -> IO ())-> IO (FunPtr (Ptr () -> CInt -> IO ()))+foreign import ccall "wrapper"+        mkDrawCell :: (Ptr () ->+                       CInt ->+                       CInt -> CInt ->+                       CInt -> CInt -> CInt -> CInt ->+                       IO ())+                       ->+                       IO (FunPtr (Ptr () ->+                                   CInt ->+                                   CInt -> CInt ->+                                   CInt -> CInt -> CInt -> CInt ->+                                   IO ()))++toSetIntPrim :: (Ref a -> Int -> IO ()) -> IO (FunPtr (Ptr () -> CInt -> IO ()))+toSetIntPrim f =+    mkSetInt+    (+     \ptr num' -> do+       pp <- wrapNonNull ptr "Null pointer. toSetIntPrim"+       f (wrapInRef pp) (fromIntegral num')+    )++toDrawCellPrim :: (Ref a -> TableContext -> TableCoordinate -> Rectangle -> IO ()) ->+                       IO (FunPtr (Ptr () ->+                                   CInt ->+                                   CInt -> CInt ->+                                   CInt -> CInt -> CInt -> CInt ->+                                   IO ()))+toDrawCellPrim f =+    mkDrawCell+     (+      \ptr context' row' col' x_pos y_pos width height ->+          let rectangle = toRectangle (fromIntegral x_pos,+                                       fromIntegral y_pos,+                                       fromIntegral width,+                                       fromIntegral height)+          in+          do+           pp <- wrapNonNull ptr "Null pointer. toDrawCellPrim"+           f (wrapInRef pp) (toEnum $ fromIntegral context') (TableCoordinate (Row (fromIntegral row')) (Column (fromIntegral col'))) rectangle+     )++data CustomTableFuncs a =+    CustomTableFuncs+    {+     drawCellCustom   :: Maybe (Ref a -> TableContext -> TableCoordinate -> Rectangle -> IO ())+    ,clearCustom      :: Maybe (Ref a -> IO ())+    ,setRowsCustom    :: Maybe (Ref a -> Int -> IO ())+    ,setColsCustom    :: Maybe (Ref a -> Int -> IO ())+    }++fillCustomTableFunctionStruct :: forall a. (Parent a Table) =>+                                  Ptr () ->+                                  CustomTableFuncs a ->+                                  IO ()+fillCustomTableFunctionStruct structPtr (CustomTableFuncs _drawCell' _clear' _setRows' _setCols')  = do+   toDrawCellPrim `orNullFunPtr` _drawCell' >>= {#set fl_Table_Virtual_Funcs->draw_cell#} structPtr+   toCallbackPrim `orNullFunPtr` _clear' >>= {#set fl_Table_Virtual_Funcs->clear#} structPtr+   toSetIntPrim `orNullFunPtr` _setRows' >>= {#set fl_Table_Virtual_Funcs->set_rows#} structPtr+   toSetIntPrim `orNullFunPtr` _setCols' >>= {#set fl_Table_Virtual_Funcs->set_cols#} structPtr++defaultCustomTableFuncs :: forall a. (Parent a Table) => CustomTableFuncs a+defaultCustomTableFuncs = CustomTableFuncs Nothing Nothing Nothing Nothing++{# fun unsafe Fl_Table_default_virtual_funcs as virtualFuncs' {} -> `Ptr ()' id #}+tableCustomFunctionStruct :: (Parent a Widget,+                              Parent b Table) =>+                             CustomWidgetFuncs a ->+                             CustomTableFuncs b ->+                             IO (Ptr ())+tableCustomFunctionStruct customWidgetFuncs' customTableFuncs' =+  do+   ptr <- virtualFuncs'+   fillCustomWidgetFunctionStruct ptr customWidgetFuncs'+   fillCustomTableFunctionStruct ptr customTableFuncs'+   return ptr++{# fun unsafe Fl_Table_New as tableNew' {  `Int',`Int', `Int', `Int', id `Ptr ()'} -> `Ptr ()' id #}+{# fun unsafe Fl_Table_New_WithLabel as tableNewWithLabel' { `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+tableCustom :: Rectangle -> Maybe String -> CustomWidgetFuncs Table -> CustomTableFuncs Table -> IO (Ref Table)+tableCustom rectangle label' customWidgetFuncs' customTableFuncs' =+    do+      let (x_pos, y_pos, width, height) = fromRectangle rectangle+      ptr <- tableCustomFunctionStruct customWidgetFuncs' customTableFuncs'+      case label' of+        (Just l') -> tableNewWithLabel' x_pos y_pos width height l' ptr >>= toRef+        Nothing -> tableNew' x_pos y_pos width height ptr >>= toRef++{# fun unsafe Fl_Table_Destroy as tableDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Destroy ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> tableDestroy' tablePtr+{# fun Fl_Table_set_table_box as setTableBox' { id `Ptr ()',cFromEnum `Boxtype' } -> `()' #}+instance (impl ~ ( Boxtype ->  IO ())) => Op (SetTableBox ()) Table orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setTableBox' tablePtr val+{# fun unsafe Fl_Table_table_box as tableBox' { id `Ptr ()' } -> `Boxtype' cToEnum #}+instance (impl ~ (  IO (Boxtype))) => Op (GetTableBox ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> tableBox' tablePtr+{# fun Fl_Table_set_rows as setRows' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SetRows ()) Table orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setRows' tablePtr val+{# fun unsafe Fl_Table_rows as rows' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Int))) => Op (GetRows ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> rows' tablePtr+{# fun Fl_Table_set_cols as setCols' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SetCols ()) Table orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setCols' tablePtr val+{# fun unsafe Fl_Table_cols as cols' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Int))) => Op (GetCols ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> cols' tablePtr+{# fun Fl_Table_visible_cells as visibleCells' { id `Ptr ()',alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv*} -> `()' #}+instance (impl ~ (IO (TableCoordinate,TableCoordinate))) => Op (SetVisibleCells ()) Table orig impl where+  runOp _ _ table =+    withRef table $ \tablePtr ->+    visibleCells' tablePtr >>= \(r1', r2', c1', c2') ->+    return ((TableCoordinate (Row r1') (Column c1')), (TableCoordinate (Row r2') (Column c2')))+{# fun unsafe Fl_Table_is_interactive_resize as isInteractiveResize' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Int))) => Op (IsInteractiveResize ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> isInteractiveResize' tablePtr+{# fun unsafe Fl_Table_row_resize as rowResize' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Int))) => Op (GetRowResize ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> rowResize' tablePtr+{# fun Fl_Table_set_row_resize as setRowResize' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Bool ->  IO ())) => Op (SetRowResize ()) Table orig impl where+  runOp _ _ table flag = withRef table $ \tablePtr -> setRowResize' tablePtr (cFromBool flag)+{# fun unsafe Fl_Table_col_resize as colResize' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Int))) => Op (GetColResize ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> colResize' tablePtr+{# fun Fl_Table_set_col_resize as setColResize' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Bool ->  IO ())) => Op (SetColResize ()) Table orig impl where+  runOp _ _ table flag = withRef table $ \tablePtr -> setColResize' tablePtr (cFromBool flag)+{# fun unsafe Fl_Table_col_resize_min as colResizeMin' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Int))) => Op (GetColResizeMin ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> colResizeMin' tablePtr+{# fun Fl_Table_set_col_resize_min as setColResizeMin' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SetColResizeMin ()) Table orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setColResizeMin' tablePtr val+{# fun unsafe Fl_Table_row_resize_min as rowResizeMin' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Int))) => Op (GetRowResizeMin ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> rowResizeMin' tablePtr+{# fun Fl_Table_set_row_resize_min as setRowResizeMin' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SetRowResizeMin ()) Table orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setRowResizeMin' tablePtr val+{# fun unsafe Fl_Table_row_header as rowHeader' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO Bool)) => Op (GetRowHeader ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> rowHeader' tablePtr >>= return . cToBool+{# fun Fl_Table_set_row_header as setRowHeader' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Bool ->  IO ())) => Op (SetRowHeader ()) Table orig impl where+  runOp _ _ table flag = withRef table $ \tablePtr -> setRowHeader' tablePtr (cFromBool flag)+{# fun unsafe Fl_Table_col_header as colHeader' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (  IO (Bool))) => Op (GetColHeader ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> colHeader' tablePtr+{# fun Fl_Table_set_col_header as setColHeader' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Bool ->  IO ())) => Op (SetColHeader ()) Table orig impl where+  runOp _ _ table flag = withRef table $ \tablePtr -> setColHeader' tablePtr (cFromBool flag)+{# fun Fl_Table_set_col_header_height as setColHeaderHeight' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SetColHeaderHeight ()) Table orig impl where+  runOp _ _ table height = withRef table $ \tablePtr -> setColHeaderHeight' tablePtr height+{# fun unsafe Fl_Table_col_header_height as colHeaderHeight' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Int))) => Op (GetColHeaderHeight ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> colHeaderHeight' tablePtr+{# fun Fl_Table_set_row_header_width as setRowHeaderWidth' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SetRowHeaderWidth ()) Table orig impl where+  runOp _ _ table width = withRef table $ \tablePtr -> setRowHeaderWidth' tablePtr width+{# fun unsafe Fl_Table_row_header_width as rowHeaderWidth' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Int))) => Op (GetRowHeaderWidth ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> rowHeaderWidth' tablePtr+{# fun Fl_Table_set_row_header_color as setRowHeaderColor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ ( Color ->  IO ())) => Op (SetRowHeaderColor ()) Table orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setRowHeaderColor' tablePtr val+{# fun unsafe Fl_Table_row_header_color as rowHeaderColor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ (  IO (Color))) => Op (GetRowHeaderColor ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> rowHeaderColor' tablePtr+{# fun Fl_Table_set_col_header_color as setColHeaderColor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ ( Color ->  IO ())) => Op (SetColHeaderColor ()) Table orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setColHeaderColor' tablePtr val+{# fun unsafe Fl_Table_col_header_color as colHeaderColor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ (  IO (Color))) => Op (GetColHeaderColor ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> colHeaderColor' tablePtr+{# fun Fl_Table_set_row_height as setRowHeight' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ ( Int -> Int ->  IO ())) => Op (SetRowHeight ()) Table orig impl where+  runOp _ _ table row height = withRef table $ \tablePtr -> setRowHeight' tablePtr row height+{# fun unsafe Fl_Table_row_height as rowHeight' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ ( Int ->  IO (Int))) => Op (GetRowHeight ()) Table orig impl where+  runOp _ _ table row = withRef table $ \tablePtr -> rowHeight' tablePtr row+{# fun Fl_Table_set_col_width as setColWidth' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ ( Int -> Int ->  IO ())) => Op (SetColWidth ()) Table orig impl where+  runOp _ _ table col width = withRef table $ \tablePtr -> setColWidth' tablePtr col width+{# fun unsafe Fl_Table_col_width as colWidth' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ ( Int ->  IO (Int))) => Op (GetColWidth ()) Table orig impl where+  runOp _ _ table col = withRef table $ \tablePtr -> colWidth' tablePtr col+{# fun Fl_Table_set_row_height_all as setRowHeightAll' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SetRowHeightAll ()) Table orig impl where+  runOp _ _ table height = withRef table $ \tablePtr -> setRowHeightAll' tablePtr height+{# fun Fl_Table_set_col_width_all as setColWidthAll' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SetColWidthAll ()) Table orig impl where+  runOp _ _ table width = withRef table $ \tablePtr -> setColWidthAll' tablePtr width+{# fun Fl_Table_set_row_position as setRowPosition' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SetRowPosition ()) Table orig impl where+  runOp _ _ table row = withRef table $ \tablePtr -> setRowPosition' tablePtr row+{# fun Fl_Table_set_col_position as setColPosition' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SetColPosition ()) Table orig impl where+  runOp _ _ table col = withRef table $ \tablePtr -> setColPosition' tablePtr col+{# fun unsafe Fl_Table_row_position as rowPosition' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Int))) => Op (GetRowPosition ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> rowPosition' tablePtr+{# fun unsafe Fl_Table_col_position as colPosition' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Int))) => Op (GetColPosition ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> colPosition' tablePtr+{# fun Fl_Table_set_top_row as setTopRow' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Row ->  IO ())) => Op (SetTopRow ()) Table orig impl where+  runOp _ _ table (Row row) = withRef table $ \tablePtr -> setTopRow' tablePtr row+{# fun unsafe Fl_Table_top_row as topRow' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Row))) => Op (GetTopRow ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> topRow' tablePtr >>= return . Row+{# fun unsafe Fl_Table_is_selected as isSelected' { id `Ptr ()',`Int',`Int' } -> `Bool' cToBool #}+instance (impl ~ (TableCoordinate ->  IO Bool)) => Op (IsSelected ()) Table orig impl where+  runOp _ _ table (TableCoordinate (Row r) (Column c)) = withRef table $ \tablePtr -> isSelected' tablePtr r c+{# fun unsafe Fl_Table_get_selection as getSelection' { id `Ptr ()',alloca- `Int' peekIntConv*, alloca- `Int' peekIntConv*, alloca- `Int' peekIntConv*, alloca- `Int' peekIntConv*} -> `()' #}+instance (impl ~ IO (TableCoordinate, TableCoordinate)) => Op (GetSelection ()) Table orig impl where+  runOp _ _ table =+    withRef table $ \tablePtr ->+        getSelection' tablePtr >>= \(top', left',bottom',right') ->+            return ((TableCoordinate (Row top') (Column left')), (TableCoordinate (Row bottom') (Column right')))+{# fun Fl_Table_set_selection as setSelection' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' #}+instance (impl ~ ( Int -> Int -> Int -> Int ->  IO ())) => Op (SetSelection ()) Table orig impl where+  runOp _ _ table row_top col_left row_bot col_right = withRef table $ \tablePtr -> setSelection' tablePtr row_top col_left row_bot col_right+{# fun unsafe Fl_Table_move_cursor as moveCursor' { id `Ptr ()',`Int',`Int' } -> `Int' #}+instance (impl ~ ( Int -> Int ->  IO (Int))) => Op (MoveCursor ()) Table orig impl where+  runOp _ _ table r c = withRef table $ \tablePtr -> moveCursor' tablePtr r c+{# fun unsafe Fl_Table_init_sizes as initSizes' { id `Ptr ()' } -> `()' #}+instance (impl ~ (  IO ())) => Op (InitSizes ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> initSizes' tablePtr+{# fun unsafe Fl_Table_add as add' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Widget, impl ~ (Ref a  ->  IO ())) => Op (Add ()) Table orig impl where+  runOp _ _ table wgt = withRef table $ \tablePtr -> withRef wgt $ \wgtPtr -> add' tablePtr wgtPtr+{# fun unsafe Fl_Table_insert as insert' { id `Ptr ()',id `Ptr ()',`Int' } -> `()' #}+instance (Parent a Widget, impl ~ (Ref a -> Int ->  IO ())) => Op (Insert ()) Table orig impl where+  runOp _ _ table wgt n = withRef table $ \tablePtr -> withRef wgt $ \wgtPtr -> insert' tablePtr wgtPtr n+{# fun unsafe Fl_Table_insert_with_widget as insertWithWidget' { id `Ptr ()',id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Widget, Parent b Widget, impl ~ (Ref a -> Ref b ->  IO ())) => Op (InsertWithBefore ()) Table orig impl where+  runOp _ _ self w before = withRef self $ \selfPtr -> withRef w $ \wPtr -> withRef before $ \beforePtr -> insertWithWidget' selfPtr wPtr beforePtr+{# fun unsafe Fl_Table_begin as begin' { id `Ptr ()' } -> `()' #}+instance (impl ~ (  IO ())) => Op (Begin ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> begin' tablePtr+{# fun unsafe Fl_Table_end as end' { id `Ptr ()' } -> `()' #}+instance (impl ~ (  IO ())) => Op (End ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> end' tablePtr+{# fun unsafe Fl_Table_array as array' { id `Ptr ()' } -> `Ptr (Ptr ())' id #}+instance (impl ~ (  IO [Ref Widget])) => Op (GetArray ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> do+                     childArrayPtr <- array' tablePtr+                     numChildren <- children table+                     arrayToRefs childArrayPtr numChildren+{# fun unsafe Fl_Table_child as child' { id `Ptr ()',`Int' } -> `Ptr ()' id #}+instance (impl ~ ( Int ->  IO (Ref Widget))) => Op (GetChild ()) Table orig impl where+  runOp _ _ table n = withRef table $ \tablePtr -> child' tablePtr n >>= toRef+{# fun unsafe Fl_Table_children as children' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Int))) => Op (Children ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> children' tablePtr+{# fun unsafe Fl_Table_find as find' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+instance (Parent a Widget, impl ~ (Ref a ->  IO (Int))) => Op (Find ()) Table orig impl where+  runOp _ _ table wgt = withRef table $ \tablePtr -> withRef wgt $ \wgtPtr -> find' tablePtr wgtPtr+{# fun unsafe Fl_Table_callback_row as callbackRow' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Row))) => Op (CallbackRow ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> callbackRow' tablePtr >>= return . Row+{# fun unsafe Fl_Table_callback_col as callbackCol' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (  IO (Column))) => Op (CallbackCol ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> callbackCol' tablePtr >>= return . Column+{# fun unsafe Fl_Table_callback_context as callbackContext' { id `Ptr ()' } -> `TableContext' cToEnum #}+instance (impl ~ (  IO (TableContext))) => Op (CallbackContext ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> callbackContext' tablePtr+{# fun unsafe Fl_Table_do_callback as doCallback' { id `Ptr ()',cFromEnum `TableContext',`Int',`Int' } -> `()' #}+instance (impl ~ ( TableContext -> Int -> Int ->  IO ())) => Op (DoCallback ()) Table orig impl where+  runOp _ _ table tablecontext row col = withRef table $ \tablePtr -> doCallback' tablePtr tablecontext row col+{# fun unsafe Fl_Table_find_cell as findCell' { id `Ptr ()',cFromEnum `TableContext',`Int',`Int',alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv* } -> `CInt' id #}+instance (impl ~ ( TableContext -> TableCoordinate -> IO (Maybe Rectangle))) => Op (FindCell ()) Table orig impl where+  runOp _ _ table context (TableCoordinate (Row r) (Column c))  =+    withRef table $ \tablePtr ->+        findCell' tablePtr context r c >>= \(result, x_pos', y_pos', width', height') -> do+          if (result /= -1)+            then return $ Just $ toRectangle (x_pos', y_pos', width', height')+            else return $ Nothing+{# fun Fl_Table_draw_super as drawSuper' { id `Ptr ()' } -> `()' #}+instance (impl ~ (  IO ())) => Op (DrawSuper ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> drawSuper' tablePtr+{# fun Fl_Table_draw as draw' { id `Ptr ()' } -> `()' #}+instance (impl ~ (  IO ())) => Op (Draw ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> draw' tablePtr+{# fun unsafe Fl_Table_handle as handle' { id `Ptr ()', cFromEnum `Event' } -> `Int' #}+instance (impl ~ ( Event ->  IO (Int))) => Op (Handle ()) Table orig impl where+  runOp _ _ table event = withRef table $ \tablePtr -> handle' tablePtr event+{# fun unsafe Fl_Table_resize_super as resizeSuper' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' #}+instance (impl ~ ( Rectangle ->  IO ())) => Op (ResizeSuper ()) Table orig impl where+  runOp _ _ table rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in withRef table $ \tablePtr -> resizeSuper' tablePtr x_pos' y_pos' width' height'+{# fun unsafe Fl_Table_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' #}+instance (impl ~ ( Rectangle ->  IO ())) => Op (Resize ()) Table orig impl where+  runOp _ _ table rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in withRef table $ \tablePtr -> resize' tablePtr x_pos' y_pos' width' height'+{# fun unsafe Fl_Table_clear_super as clearSuper' { id `Ptr ()' } -> `()' #}+instance (impl ~ (  IO ())) => Op (ClearSuper ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> clearSuper' tablePtr+{# fun unsafe Fl_Table_clear as clear' { id `Ptr ()' } -> `()' #}+instance (impl ~ (  IO ())) => Op (Clear ()) Table orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> clear' tablePtr+{# fun Fl_Table_set_rows_super as setRowsSuper' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SetRowsSuper ()) Table orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setRowsSuper' tablePtr val+{# fun Fl_Table_set_cols_super as setColsSuper' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SetColsSuper ()) Table orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setColsSuper' tablePtr val+{# fun Fl_Table_show_super as showSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (ShowWidgetSuper ()) Table orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> showSuper' widgetPtr+{# fun Fl_Table_show as show' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (ShowWidget ()) Table orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> show' widgetPtr+{# fun Fl_Table_hide_super as hideSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (HideSuper ()) Table orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> hideSuper' widgetPtr+{# fun Fl_Table_hide as hide' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Hide ()) Table orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> hide' widgetPtr++-- $Tablefunctions+-- @+--+-- add:: ('Parent' a 'Widget') => 'Ref' 'Table' -> 'Ref' a -> 'IO' ())+--+-- begin :: 'Ref' 'Table' -> 'IO' ()+--+-- callbackCol :: 'Ref' 'Table' -> 'IO' 'Column'+--+-- callbackContext :: 'Ref' 'Table' -> 'IO' 'TableContext'+--+-- callbackRow :: 'Ref' 'Table' -> 'IO' 'Row'+--+-- children :: 'Ref' 'Table' -> 'IO' 'Int'+--+-- clear :: 'Ref' 'Table' -> 'IO' ()+--+-- clearSuper :: 'Ref' 'Table' -> 'IO' ()+--+-- destroy :: 'Ref' 'Table' -> 'IO' ()+--+-- doCallback :: 'Ref' 'Table' -> 'TableContext' -> 'Int' -> 'Int' -> 'IO' ()+--+-- draw :: 'Ref' 'Table' -> 'IO' ()+--+-- drawSuper :: 'Ref' 'Table' -> 'IO' ()+--+-- end :: 'Ref' 'Table' -> 'IO' ()+--+-- find:: ('Parent' a 'Widget') => 'Ref' 'Table' -> 'Ref' a -> 'IO' 'Int')+--+-- findCell :: 'Ref' 'Table' -> 'TableContext' -> 'TableCoordinate' -> 'IO' ('Maybe' 'Rectangle')+--+-- getArray :: 'Ref' 'Table' -> 'IO' ['Ref' 'Widget']+--+-- getChild :: 'Ref' 'Table' -> 'Int' -> 'IO' ('Ref' 'Widget')+--+-- getColHeader :: 'Ref' 'Table' -> 'IO' 'Bool'+--+-- getColHeaderColor :: 'Ref' 'Table' -> 'IO' 'Color'+--+-- getColHeaderHeight :: 'Ref' 'Table' -> 'IO' 'Int'+--+-- getColPosition :: 'Ref' 'Table' -> 'IO' 'Int'+--+-- getColResize :: 'Ref' 'Table' -> 'IO' 'Int'+--+-- getColResizeMin :: 'Ref' 'Table' -> 'IO' 'Int'+--+-- getColWidth :: 'Ref' 'Table' -> 'Int' -> 'IO' 'Int'+--+-- getCols :: 'Ref' 'Table' -> 'IO' 'Int'+--+-- getRowHeader :: 'Ref' 'Table' -> 'IO' 'Bool'+--+-- getRowHeaderColor :: 'Ref' 'Table' -> 'IO' 'Color'+--+-- getRowHeaderWidth :: 'Ref' 'Table' -> 'IO' 'Int'+--+-- getRowHeight :: 'Ref' 'Table' -> 'Int' -> 'IO' 'Int'+--+-- getRowPosition :: 'Ref' 'Table' -> 'IO' 'Int'+--+-- getRowResize :: 'Ref' 'Table' -> 'IO' 'Int'+--+-- getRowResizeMin :: 'Ref' 'Table' -> 'IO' 'Int'+--+-- getRows :: 'Ref' 'Table' -> 'IO' 'Int'+--+-- getSelection :: 'Ref' 'Table' -> 'IO' ('TableCoordinate', 'TableCoordinate')+--+-- getTableBox :: 'Ref' 'Table' -> 'IO' 'Boxtype'+--+-- getTopRow :: 'Ref' 'Table' -> 'IO' 'Row'+--+-- handle :: 'Ref' 'Table' -> 'Event' -> 'IO' 'Int'+--+-- hide :: 'Ref' 'Table' -> 'IO' ()+--+-- hideSuper :: 'Ref' 'Table' -> 'IO' ()+--+-- initSizes :: 'Ref' 'Table' -> 'IO' ()+--+-- insert:: ('Parent' a 'Widget') => 'Ref' 'Table' -> 'Ref' a -> 'Int' -> 'IO' ())+--+-- insertWithBefore:: ('Parent' a 'Widget', 'Parent' b 'Widget') => 'Ref' 'Table' -> 'Ref' a -> 'Ref' b -> 'IO' ())+--+-- isInteractiveResize :: 'Ref' 'Table' -> 'IO' 'Int'+--+-- isSelected :: 'Ref' 'Table' -> 'TableCoordinate' -> 'IO' 'Bool'+--+-- moveCursor :: 'Ref' 'Table' -> 'Int' -> 'Int' -> 'IO' 'Int'+--+-- resize :: 'Ref' 'Table' -> 'Rectangle' -> 'IO' ()+--+-- resizeSuper :: 'Ref' 'Table' -> 'Rectangle' -> 'IO' ()+--+-- setColHeader :: 'Ref' 'Table' -> 'Bool' -> 'IO' ()+--+-- setColHeaderColor :: 'Ref' 'Table' -> 'Color' -> 'IO' ()+--+-- setColHeaderHeight :: 'Ref' 'Table' -> 'Int' -> 'IO' ()+--+-- setColPosition :: 'Ref' 'Table' -> 'Int' -> 'IO' ()+--+-- setColResize :: 'Ref' 'Table' -> 'Bool' -> 'IO' ()+--+-- setColResizeMin :: 'Ref' 'Table' -> 'Int' -> 'IO' ()+--+-- setColWidth :: 'Ref' 'Table' -> 'Int' -> 'Int' -> 'IO' ()+--+-- setColWidthAll :: 'Ref' 'Table' -> 'Int' -> 'IO' ()+--+-- setCols :: 'Ref' 'Table' -> 'Int' -> 'IO' ()+--+-- setColsSuper :: 'Ref' 'Table' -> 'Int' -> 'IO' ()+--+-- setRowHeader :: 'Ref' 'Table' -> 'Bool' -> 'IO' ()+--+-- setRowHeaderColor :: 'Ref' 'Table' -> 'Color' -> 'IO' ()+--+-- setRowHeaderWidth :: 'Ref' 'Table' -> 'Int' -> 'IO' ()+--+-- setRowHeight :: 'Ref' 'Table' -> 'Int' -> 'Int' -> 'IO' ()+--+-- setRowHeightAll :: 'Ref' 'Table' -> 'Int' -> 'IO' ()+--+-- setRowPosition :: 'Ref' 'Table' -> 'Int' -> 'IO' ()+--+-- setRowResize :: 'Ref' 'Table' -> 'Bool' -> 'IO' ()+--+-- setRowResizeMin :: 'Ref' 'Table' -> 'Int' -> 'IO' ()+--+-- setRows :: 'Ref' 'Table' -> 'Int' -> 'IO' ()+--+-- setRowsSuper :: 'Ref' 'Table' -> 'Int' -> 'IO' ()+--+-- setSelection :: 'Ref' 'Table' -> 'Int' -> 'Int' -> 'Int' -> 'Int' -> 'IO' ()+--+-- setTableBox :: 'Ref' 'Table' -> 'Boxtype' -> 'IO' ()+--+-- setTopRow :: 'Ref' 'Table' -> 'Row' -> 'IO' ()+--+-- setVisibleCells :: 'Ref' 'Table' -> 'IO' ('TableCoordinate', 'TableCoordinate')+--+-- showWidget :: 'Ref' 'Table' -> 'IO' ()+--+-- showWidgetSuper :: 'Ref' 'Table' -> 'IO' ()++-- @+++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Group"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Table"+-- @
+ src/Graphics/UI/FLTK/LowLevel/TableRow.chs view
@@ -0,0 +1,141 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.TableRow+    (+     tableRowNew,+     TableRowSelectFlag+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Table_RowC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Widget+import Graphics.UI.FLTK.LowLevel.Table+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++data TableRowSelectFlag = TableRowSelect | TableRowDeselect | TableRowToggle++{# fun unsafe Fl_OverriddenTable_Row_New as tableRowNew' {  `Int',`Int', `Int', `Int', id `Ptr ()'} -> `Ptr ()' id #}+{# fun unsafe Fl_OverriddenTable_Row_New_WithLabel as tableRowNewWithLabel' { `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+tableRowNew :: Rectangle -> Maybe String -> CustomWidgetFuncs TableRow -> CustomTableFuncs TableRow -> IO (Ref TableRow)+tableRowNew rectangle label' customWidgetFuncs' customTableFuncs' =+    do+      let (x_pos, y_pos, width, height) = fromRectangle rectangle+      ptr <- tableCustomFunctionStruct customWidgetFuncs' customTableFuncs'+      case label' of+        (Just l') -> tableRowNewWithLabel' x_pos y_pos width height l' ptr >>= toRef+        Nothing -> tableRowNew' x_pos y_pos width height ptr >>= toRef++{# fun unsafe Fl_Table_Row_Destroy as tableRowDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) TableRow orig impl where+  runOp _ _ tableRow = withRef tableRow $ \tableRowPtr -> tableRowDestroy' tableRowPtr+{# fun unsafe Fl_Table_Row_rows as rows' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetRows ()) TableRow orig impl where+  runOp _ _ tableRow = withRef tableRow $ \tableRowPtr -> rows' tableRowPtr+{# fun Fl_Table_Row_set_type as tableRowSetType' { id `Ptr ()', cFromEnum `TableRowSelectMode'} -> `()' #}+instance (impl ~ (TableRowSelectMode -> IO ())) => Op (SetType ()) TableRow orig impl where+  runOp _ _ tableRow selectionMode = withRef tableRow $ \tableRowPtr' -> tableRowSetType' tableRowPtr' selectionMode+{# fun Fl_Table_Row_type as tableRowType { id `Ptr ()' } -> `TableRowSelectMode' cToEnum  #}+instance (impl ~ (IO TableRowSelectMode)) => Op (GetType ()) TableRow orig impl where+  runOp _ _ tableRow = withRef tableRow $ \tableRowPtr' -> tableRowType tableRowPtr'+{# fun Fl_Table_Row_set_rows as setRows' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetRows ()) TableRow orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setRows' tablePtr val+{# fun Fl_Table_Row_set_cols as setCols' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetCols ()) TableRow orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setCols' tablePtr val+{# fun unsafe Fl_Table_Row_clear_super as clearSuper' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (ClearSuper ()) TableRow orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> clearSuper' tablePtr+{# fun unsafe Fl_Table_Row_clear as clear' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (Clear ()) TableRow orig impl where+  runOp _ _ table = withRef table $ \tablePtr -> clear' tablePtr+{# fun Fl_Table_Row_set_rows_super as setRowsSuper' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetRowsSuper ()) TableRow orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setRowsSuper' tablePtr val+{# fun Fl_Table_Row_set_cols_super as setColsSuper' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetColsSuper ()) TableRow orig impl where+  runOp _ _ table val = withRef table $ \tablePtr -> setColsSuper' tablePtr val+{# fun unsafe Fl_Table_Row_handle as handle' { id `Ptr ()', cFromEnum `Event' } -> `Int' #}+instance (impl ~ (Event ->  IO (Int))) => Op (Handle ()) TableRow orig impl where+  runOp _ _ table event = withRef table $ \tablePtr -> handle' tablePtr event+{# fun unsafe Fl_Table_Row_resize_super as resizeSuper' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' #}+instance (impl ~ (Rectangle ->  IO ())) => Op (ResizeSuper ()) TableRow orig impl where+  runOp _ _ table rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in withRef table $ \tablePtr -> resizeSuper' tablePtr x_pos' y_pos' width' height'+{# fun unsafe Fl_Table_Row_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' #}+instance (impl ~ (Rectangle ->  IO ())) => Op (Resize ()) TableRow orig impl where+  runOp _ _ table rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in withRef table $ \tablePtr -> resize' tablePtr x_pos' y_pos' width' height'+{# fun Fl_Table_Row_row_selected as rowSelected' { id `Ptr ()', `Int'} -> `CInt' id #}+instance (impl ~ ( Int -> IO (Either OutOfRange Bool))) => Op (GetRowSelected ()) TableRow orig impl where+  runOp _ _ table idx' = withRef table $ \tablePtr -> do+    ret' <- rowSelected' tablePtr idx'+    if ret' == -1 then (return $ Left OutOfRange) else (return $ Right $ cToBool ret')+{# fun Fl_Table_Row_select_all_rows_with_flag as selectAllRows' {id `Ptr ()', `Int'} -> `()' #}+instance (impl ~ ( TableRowSelectFlag -> IO ())) => Op (SelectAllRows ()) TableRow orig impl where+  runOp _ _ table flag' = withRef table $+                          \tablePtr ->+                             case flag' of+                              TableRowSelect -> selectAllRows' tablePtr 1+                              TableRowDeselect -> selectAllRows' tablePtr 0+                              TableRowToggle -> selectAllRows' tablePtr 2++-- $functions+-- @+--+-- clear :: 'Ref' 'TableRow' -> 'IO' ()+--+-- clearSuper :: 'Ref' 'TableRow' -> 'IO' ()+--+-- destroy :: 'Ref' 'TableRow' -> 'IO' ()+--+-- getRowSelected :: 'Ref' 'TableRow' -> 'Int' -> 'IO' ('Either' 'OutOfRange' 'Bool')+--+-- getRows :: 'Ref' 'TableRow' -> 'IO' 'Int'+--+-- getType :: 'Ref' 'TableRow' -> 'IO' 'TableRowSelectMode'+--+-- handle :: 'Ref' 'TableRow' -> 'Event' -> 'IO' 'Int'+--+-- resize :: 'Ref' 'TableRow' -> 'Rectangle' -> 'IO' ()+--+-- resizeSuper :: 'Ref' 'TableRow' -> 'Rectangle' -> 'IO' ()+--+-- selectAllRows :: 'Ref' 'TableRow' -> 'TableRowSelectFlag' -> 'IO' ()+--+-- setCols :: 'Ref' 'TableRow' -> 'Int' -> 'IO' ()+--+-- setColsSuper :: 'Ref' 'TableRow' -> 'Int' -> 'IO' ()+--+-- setRows :: 'Ref' 'TableRow' -> 'Int' -> 'IO' ()+--+-- setRowsSuper :: 'Ref' 'TableRow' -> 'Int' -> 'IO' ()+--+-- setType :: 'Ref' 'TableRow' -> 'TableRowSelectMode' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Group"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Table"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.TableRow"+-- @
+ src/Graphics/UI/FLTK/LowLevel/TextBuffer.chs view
@@ -0,0 +1,516 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.TextBuffer+       (+         textBufferNew+         -- * Hierarchy+         --+         -- $hierarchy++         -- * Functions+         --+         -- $functions+       )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Text_BufferC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch+{# fun unsafe Fl_Text_Buffer_New as new' {} -> `Ptr ()' id #}+{# fun unsafe Fl_Text_Buffer_New_With_RequestedSize as newRequestedSize' {`Int'}-> `Ptr ()' id #}+{# fun unsafe Fl_Text_Buffer_New_With_PreferredGapSize as newPreferredGapSize' {`Int'} -> `Ptr ()' id #}+{# fun unsafe Fl_Text_Buffer_New_With_RequestedSize_PreferredGapSize as newRequestedSizePreferredGapSize' {`Int', `Int'}-> `Ptr ()' id #}++textBufferNew :: Maybe Int -> Maybe Int -> IO (Ref TextBuffer)+textBufferNew req' pref' =+  case (req',pref') of+    (Just r', Just p') -> newRequestedSizePreferredGapSize' r' p' >>= toRef+    (Just r', Nothing) -> newRequestedSize' r' >>= toRef+    (Nothing, Just p') -> newPreferredGapSize' p' >>= toRef+    (Nothing, Nothing) -> new' >>= toRef++{# fun Fl_Text_Buffer_Destroy as textbufferDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) TextBuffer orig impl where+  runOp _ _ textBuffer' = swapRef textBuffer' $ \textBuffer'Ptr -> do+    textbufferDestroy' textBuffer'Ptr+    return nullPtr+{# fun unsafe Fl_Text_Buffer_input_file_was_transcoded as inputFileWasTranscoded' { id `Ptr ()' } -> `Bool' cToBool #}+instance ( impl ~ (  IO (Bool))) => Op (InputFileWasTranscoded ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> inputFileWasTranscoded' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_file_encoding_warning_message as fileEncodingWarningMessage' { id `Ptr ()' } -> `String' #}+instance ( impl ~ (  IO (String))) => Op (FileEncodingWarningMessage ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> fileEncodingWarningMessage' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_length as length' { id `Ptr ()' } -> `Int' #}+instance ( impl ~ (  IO (Int))) => Op (GetLength ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> length' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_text as text' { id `Ptr ()' } -> `String' #}+instance ( impl ~ (  IO (String))) => Op (GetText ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> text' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_set_text as setText' { id `Ptr ()',`String' } -> `()' #}+instance ( impl ~ ( String ->  IO ())) => Op (SetText ()) TextBuffer orig impl where+   runOp _ _ text_buffer text = withRef text_buffer $ \text_bufferPtr -> setText' text_bufferPtr text+{# fun unsafe Fl_Text_Buffer_text_range as textRange' { id `Ptr ()',`Int',`Int' } -> `String' #}+instance ( impl ~ ( BufferRange ->  IO (String))) => Op (TextRange ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferRange (BufferOffset start') (BufferOffset end')) = withRef text_buffer $ \text_bufferPtr -> textRange' text_bufferPtr start' end'+{# fun unsafe Fl_Text_Buffer_char_at as charAt' { id `Ptr ()',`Int' } -> `Int' #}+instance ( impl ~ ( BufferOffset ->  IO (Char))) => Op (CharAt ()) TextBuffer orig impl where+  runOp _ _ text_buffer (BufferOffset pos) = withRef text_buffer $ \text_bufferPtr -> charAt' text_bufferPtr pos >>= return . toEnum+{# fun unsafe Fl_Text_Buffer_byte_at as byteAt' { id `Ptr ()',`Int' } -> `Char' castCCharToChar #}+instance ( impl ~ ( BufferOffset ->  IO Char)) => Op (ByteAt ()) TextBuffer orig impl where+  runOp _ _ text_buffer (BufferOffset pos) = withRef text_buffer $ \text_bufferPtr -> byteAt' text_bufferPtr pos+{# fun unsafe Fl_Text_Buffer_insert as insert' { id `Ptr ()',`Int',`String' } -> `()' #}+instance ( impl ~ ( BufferOffset -> String ->  IO ())) => Op (Insert ()) TextBuffer orig impl where+  runOp _ _ text_buffer (BufferOffset pos) text = withRef text_buffer $ \text_bufferPtr -> insert' text_bufferPtr pos text+{# fun unsafe Fl_Text_Buffer_append as append' { id `Ptr ()',`String' } -> `()' #}+instance ( impl ~ ( String ->  IO ())) => Op (AppendToBuffer ()) TextBuffer orig impl where+   runOp _ _ text_buffer t = withRef text_buffer $ \text_bufferPtr -> append' text_bufferPtr t+{# fun unsafe Fl_Text_Buffer_remove as remove' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance ( impl ~ ( BufferRange ->  IO ())) => Op (Remove ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferRange (BufferOffset start') (BufferOffset end')) = withRef text_buffer $ \text_bufferPtr -> remove' text_bufferPtr start' end'+{# fun unsafe Fl_Text_Buffer_replace as replace' { id `Ptr ()',`Int',`Int',`String' } -> `()' #}+instance ( impl ~ ( BufferRange -> String ->  IO ())) => Op (Replace ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferRange (BufferOffset start') (BufferOffset end')) text = withRef text_buffer $ \text_bufferPtr -> replace' text_bufferPtr start' end' text+{# fun unsafe Fl_Text_Buffer_copy as copy' { id `Ptr ()',id `Ptr ()',`Int',`Int',`Int' } -> `()' #}+instance ( Parent a TextBuffer, impl ~ ( Ref a -> BufferRange -> BufferOffset ->  IO ())) => Op (Copy ()) TextBuffer orig impl where+   runOp _ _ text_buffer frombuf (BufferRange (BufferOffset fromstart) (BufferOffset fromend)) (BufferOffset topos) = withRef text_buffer $ \text_bufferPtr -> withRef frombuf $ \frombufPtr -> copy' text_bufferPtr frombufPtr fromstart fromend topos+{# fun unsafe Fl_Text_Buffer_undo_with_cp as undo' { id `Ptr ()', id `Ptr CInt' } -> `Int' #}+instance ( impl ~ (  IO (Either NoChange BufferOffset))) => Op (Undo ()) TextBuffer orig impl where+   runOp _ _ text_buffer =+     withRef text_buffer $ \text_bufferPtr ->+     alloca $ \prevBufferOffsetPtr ->+     undo' text_bufferPtr prevBufferOffsetPtr >>= \status' ->+     if (status' == 0)+      then return (Left NoChange)+      else peekIntConv prevBufferOffsetPtr >>= return . Right . BufferOffset+{# fun unsafe Fl_Text_Buffer_canUndo_with_flag as canUndoWithFlag' { id `Ptr ()', cFromBool `Bool' } -> `()' #}+instance ( impl ~ (Bool ->  IO ())) => Op (CanUndo ()) TextBuffer orig impl where+   runOp _ _ text_buffer flag = withRef text_buffer $ \text_bufferPtr -> canUndoWithFlag' text_bufferPtr flag++{# fun unsafe Fl_Text_Buffer_insertfile as insertfile' { id `Ptr ()',`String',`Int' } -> `Int' #}+instance ( impl ~ ( String -> BufferOffset -> IO (Either DataProcessingError ()))) => Op (Insertfile ()) TextBuffer orig impl where+   runOp _ _ text_buffer file (BufferOffset pos) =+      withRef text_buffer $ \text_bufferPtr ->+      insertfile' text_bufferPtr file pos >>= return . successOrDataProcessingError++{# fun unsafe Fl_Text_Buffer_insertfile_with_buflen as insertfileWithBuflen' { id `Ptr ()',`String',`Int',`Int' } -> `Int' #}+instance ( impl ~ ( String -> BufferOffset -> Int -> IO (Either DataProcessingError ()))) => Op (InsertfileWithBuflen ()) TextBuffer orig impl where+   runOp _ _ text_buffer file (BufferOffset pos) buflen =+      withRef text_buffer $ \text_bufferPtr ->+      insertfileWithBuflen' text_bufferPtr file pos buflen >>= return . successOrDataProcessingError+{# fun unsafe Fl_Text_Buffer_appendfile as appendfile' { id `Ptr ()',`String' } -> `Int' #}+instance ( impl ~ ( String ->  IO (Either DataProcessingError ()))) => Op (Appendfile ()) TextBuffer orig impl where+   runOp _ _ text_buffer file =+     withRef text_buffer $ \text_bufferPtr ->+     appendfile' text_bufferPtr file >>= return . successOrDataProcessingError+{# fun unsafe Fl_Text_Buffer_appendfile_with_buflen as appendfileWithBuflen' { id `Ptr ()',`String',`Int' } -> `Int' #}+instance ( impl ~ ( String -> Int ->  IO (Either DataProcessingError ()))) => Op (AppendfileWithBuflen ()) TextBuffer orig impl where+   runOp _ _ text_buffer file buflen =+     withRef text_buffer $ \text_bufferPtr ->+     appendfileWithBuflen' text_bufferPtr file buflen >>= return . successOrDataProcessingError+{# fun unsafe Fl_Text_Buffer_loadfile as loadfile' { id `Ptr ()',`String' } -> `Int' #}+instance ( impl ~ ( String ->  IO (Either DataProcessingError ()))) => Op (Loadfile ()) TextBuffer orig impl where+   runOp _ _ text_buffer file =+     withRef text_buffer $ \text_bufferPtr ->+     loadfile' text_bufferPtr file >>= return . successOrDataProcessingError+{# fun unsafe Fl_Text_Buffer_loadfile_with_buflen as loadfileWithBuflen' { id `Ptr ()',`String',`Int' } -> `Int' #}+instance ( impl ~ ( String -> Int ->  IO (Either DataProcessingError ()))) => Op (LoadfileWithBuflen ()) TextBuffer orig impl where+   runOp _ _ text_buffer file buflen =+     withRef text_buffer $ \text_bufferPtr ->+     loadfileWithBuflen' text_bufferPtr file buflen >>= return . successOrDataProcessingError+{# fun unsafe Fl_Text_Buffer_outputfile as outputfile' { id `Ptr ()',`String',`Int',`Int' } -> `Int' #}+instance ( impl ~ ( String -> BufferRange ->  IO (Either DataProcessingError ()))) => Op (Outputfile ()) TextBuffer orig impl where+   runOp _ _ text_buffer file (BufferRange (BufferOffset start') (BufferOffset end')) =+     withRef text_buffer $ \text_bufferPtr ->+     outputfile' text_bufferPtr file start' end' >>= return . successOrDataProcessingError+{# fun unsafe Fl_Text_Buffer_outputfile_with_buflen as outputfileWithBuflen' { id `Ptr ()',`String',`Int',`Int',`Int' } -> `Int' #}+instance ( impl ~ ( String -> BufferRange -> Int ->  IO (Either DataProcessingError ()))) => Op (OutputfileWithBuflen ()) TextBuffer orig impl where+   runOp _ _ text_buffer file (BufferRange (BufferOffset start') (BufferOffset end')) buflen =+     withRef text_buffer $ \text_bufferPtr ->+     outputfileWithBuflen' text_bufferPtr file start' end' buflen >>= return . successOrDataProcessingError+{# fun unsafe Fl_Text_Buffer_savefile as savefile' { id `Ptr ()',`String' } -> `Int' #}+instance ( impl ~ ( String ->  IO (Either DataProcessingError ()))) => Op (Savefile ()) TextBuffer orig impl where+   runOp _ _ text_buffer file =+     withRef text_buffer $ \text_bufferPtr ->+     savefile' text_bufferPtr file >>= return . successOrDataProcessingError+{# fun unsafe Fl_Text_Buffer_savefile_with_buflen as savefileWithBuflen' { id `Ptr ()',`String',`Int' } -> `Int' #}+instance ( impl ~ ( String -> Int ->  IO (Either DataProcessingError ()))) => Op (SavefileWithBuflen ()) TextBuffer orig impl where+   runOp _ _ text_buffer file buflen =+     withRef text_buffer $ \text_bufferPtr ->+     savefileWithBuflen' text_bufferPtr file buflen >>= return . successOrDataProcessingError+{# fun unsafe Fl_Text_Buffer_tab_distance as tabDistance' { id `Ptr ()' } -> `Int' #}+instance ( impl ~ (  IO (Int))) => Op (GetTabDistance ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> tabDistance' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_set_tab_distance as setTabDistance' { id `Ptr ()',`Int' } -> `()' #}+instance ( impl ~ ( Int ->  IO ())) => Op (SetTabDistance ()) TextBuffer orig impl where+   runOp _ _ text_buffer tabdist = withRef text_buffer $ \text_bufferPtr -> setTabDistance' text_bufferPtr tabdist+{# fun unsafe Fl_Text_Buffer_select as select' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance ( impl ~ ( BufferRange ->  IO ())) => Op (Select ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferRange (BufferOffset start') (BufferOffset end')) = withRef text_buffer $ \text_bufferPtr -> select' text_bufferPtr start' end'+{# fun unsafe Fl_Text_Buffer_selected as selected' { id `Ptr ()' } -> `Bool' cToBool #}+instance ( impl ~ (  IO (Bool))) => Op (Selected ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> selected' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_unselect as unselect' { id `Ptr ()' } -> `()' #}+instance ( impl ~ (  IO ())) => Op (Unselect ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> unselect' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_selection_position as selectionPosition' { id `Ptr ()', alloca- `Int' peekIntConv* , alloca- `Int' peekIntConv* } -> `()' #}+instance ( impl ~ IO (BufferRange)) => Op (SelectionPosition ()) TextBuffer orig impl where+   runOp _ _ text_buffer =+     withRef text_buffer $ \text_bufferPtr ->+     selectionPosition' text_bufferPtr >>= \(start',end') ->+     return (BufferRange (BufferOffset start') (BufferOffset end'))+{# fun unsafe Fl_Text_Buffer_selection_text as selectionText' { id `Ptr ()' } -> `String' #}+instance ( impl ~ (  IO (String))) => Op (SelectionText ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> selectionText' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_remove_selection as removeSelection' { id `Ptr ()' } -> `()' #}+instance ( impl ~ (  IO ())) => Op (RemoveSelection ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> removeSelection' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_replace_selection as replaceSelection' { id `Ptr ()',`String' } -> `()' #}+instance ( impl ~ ( String ->  IO ())) => Op (ReplaceSelection ()) TextBuffer orig impl where+   runOp _ _ text_buffer text = withRef text_buffer $ \text_bufferPtr -> replaceSelection' text_bufferPtr text+{# fun unsafe Fl_Text_Buffer_secondary_select as secondarySelect' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance ( impl ~ ( BufferRange ->  IO ())) => Op (SecondarySelect ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferRange (BufferOffset start') (BufferOffset end')) = withRef text_buffer $ \text_bufferPtr -> secondarySelect' text_bufferPtr start' end'+{# fun unsafe Fl_Text_Buffer_secondary_selected as secondarySelected' { id `Ptr ()' } -> `Bool' cToBool #}+instance ( impl ~ (  IO (Bool))) => Op (SecondarySelected ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> secondarySelected' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_set_secondary_unselect as setSecondaryUnselect' { id `Ptr ()' } -> `()' #}+instance ( impl ~ (  IO ())) => Op (SecondaryUnselect ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> setSecondaryUnselect' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_secondary_selection_position as secondarySelectionPosition' { id `Ptr ()',alloca- `Int' peekIntConv*, alloca- `Int' peekIntConv* } -> `()' #}+instance ( impl ~ IO BufferRange) => Op (SecondarySelectionPosition ()) TextBuffer orig impl where+   runOp _ _ text_buffer =+     withRef text_buffer $ \text_bufferPtr ->+     secondarySelectionPosition' text_bufferPtr >>= \(start',end') ->+     return (BufferRange (BufferOffset start') (BufferOffset end'))+{# fun unsafe Fl_Text_Buffer_secondary_selection_text as secondarySelectionText' { id `Ptr ()' } -> `String' #}+instance ( impl ~ (  IO (String))) => Op (SecondarySelectionText ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> secondarySelectionText' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_remove_secondary_selection as removeSecondarySelection' { id `Ptr ()' } -> `()' #}+instance ( impl ~ (  IO ())) => Op (RemoveSecondarySelection ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> removeSecondarySelection' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_replace_secondary_selection as replaceSecondarySelection' { id `Ptr ()',`String' } -> `()' #}+instance ( impl ~ ( String ->  IO ())) => Op (ReplaceSecondarySelection ()) TextBuffer orig impl where+   runOp _ _ text_buffer text = withRef text_buffer $ \text_bufferPtr -> replaceSecondarySelection' text_bufferPtr text+{# fun unsafe Fl_Text_Buffer_set_highlight as setHighlight' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance ( impl ~ ( BufferRange ->  IO ())) => Op (SetHighlight ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferRange (BufferOffset start') (BufferOffset end')) = withRef text_buffer $ \text_bufferPtr -> setHighlight' text_bufferPtr start' end'+{# fun unsafe Fl_Text_Buffer_highlight as highlight' { id `Ptr ()' } -> `Bool' #}+instance ( impl ~ (  IO (Bool))) => Op (GetHighlight ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> highlight' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_unhighlight as unhighlight' { id `Ptr ()' } -> `()' #}+instance ( impl ~ (  IO ())) => Op (Unhighlight ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> unhighlight' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_highlight_position as highlightPosition' { id `Ptr ()',id `Ptr CInt',id `Ptr CInt' } -> `Int' #}+instance ( impl ~ IO (Maybe BufferRange)) => Op (HighlightPosition ()) TextBuffer orig impl where+   runOp _ _ text_buffer =+     withRef text_buffer $ \text_bufferPtr ->+     statusToBufferRange (highlightPosition' text_bufferPtr)+{# fun unsafe Fl_Text_Buffer_highlight_text as highlightText' { id `Ptr ()' } -> `String' #}+instance ( impl ~ (  IO (String))) => Op (HighlightText ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> highlightText' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_add_modify_callback as addModifyCallback' { id `Ptr ()',id `FunPtr TextModifyCbPrim',id `Ptr ()' } -> `()' #}+instance (impl ~ (TextModifyCb -> IO (FunPtr ()))) => Op (AddModifyCallback ()) TextBuffer orig impl where+   runOp _ _ text_buffer bufmodifiedcb =+     withRef text_buffer $ \text_bufferPtr -> do+       funPtr' <- toTextModifyCbPrim bufmodifiedcb+       addModifyCallback' text_bufferPtr funPtr' nullPtr+       return (castFunPtr funPtr')+{# fun unsafe Fl_Text_Buffer_remove_modify_callback as removeModifyCallback' { id `Ptr ()',id `FunPtr TextModifyCbPrim',id `Ptr ()' } -> `()' #}+instance ( impl ~ (FunPtr () ->  IO ())) => Op (RemoveModifyCallback ()) TextBuffer orig impl where+   runOp _ _ text_buffer bufmodifiedcb =+     withRef text_buffer $ \text_bufferPtr ->+     removeModifyCallback' text_bufferPtr (castFunPtr  bufmodifiedcb) nullPtr+{# fun unsafe Fl_Text_Buffer_call_modify_callbacks as callModifyCallbacks' { id `Ptr ()' } -> `()' #}+instance ( impl ~ (  IO ())) => Op (CallModifyCallbacks ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> callModifyCallbacks' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_add_predelete_callback as addPredeleteCallback' { id `Ptr ()',id `FunPtr TextPredeleteCbPrim',id `Ptr ()' } -> `()' #}+instance ( impl ~ ( TextPredeleteCb ->  IO (FunPtr ()))) => Op (AddPredeleteCallback ()) TextBuffer orig impl where+   runOp _ _ text_buffer bufpredelcb =+     withRef text_buffer $ \text_bufferPtr -> do+       funPtr' <- toTextPredeleteCbPrim bufpredelcb+       addPredeleteCallback' text_bufferPtr funPtr' nullPtr+       return (castFunPtr funPtr')+{# fun unsafe Fl_Text_Buffer_remove_predelete_callback as removePredeleteCallback' { id `Ptr ()',id `FunPtr TextPredeleteCbPrim', id `Ptr ()' } -> `()' #}+instance ( impl ~ (FunPtr () -> IO ())) => Op (RemovePredeleteCallback ()) TextBuffer orig impl where+   runOp _ _ text_buffer predelcb =+     withRef text_buffer $ \text_bufferPtr ->+     removePredeleteCallback' text_bufferPtr (castFunPtr predelcb) nullPtr+{# fun unsafe Fl_Text_Buffer_call_predelete_callbacks as callPredeleteCallbacks' { id `Ptr ()' } -> `()' #}+instance ( impl ~ (  IO ())) => Op (CallPredeleteCallbacks ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> callPredeleteCallbacks' text_bufferPtr+{# fun unsafe Fl_Text_Buffer_line_text as lineText' { id `Ptr ()',`Int' } -> `Ptr CChar' id #}+instance ( impl ~ ( Int ->  IO (Either OutOfRange String))) => Op (LineText ()) TextBuffer orig impl where+   runOp _ _ text_buffer pos =+     withRef text_buffer $ \text_bufferPtr -> do+     r <- lineText' text_bufferPtr pos+     successOrOutOfRange r (r == nullPtr) peekCString+{# fun unsafe Fl_Text_Buffer_line_start as lineStart' { id `Ptr ()',`Int' } -> `Int' #}+instance ( impl ~ ( Int ->  IO (Either OutOfRange BufferOffset))) => Op (LineStart ()) TextBuffer orig impl where+   runOp _ _ text_buffer pos =+     withRef text_buffer $ \text_bufferPtr -> do+       bp <- lineStart' text_bufferPtr pos+       successOrOutOfRange bp (bp == 0) (return . BufferOffset)+{# fun unsafe Fl_Text_Buffer_line_end as lineEnd' { id `Ptr ()',`Int' } -> `Int' #}+instance ( impl ~ ( Int ->  IO (Either OutOfRange BufferOffset))) => Op (LineEnd ()) TextBuffer orig impl where+   runOp _ _ text_buffer pos =+     withRef text_buffer $ \text_bufferPtr -> do+     bp <- lineEnd' text_bufferPtr pos+     successOrOutOfRange bp (bp == 0) (return . BufferOffset)+{# fun unsafe Fl_Text_Buffer_word_start as wordStart' { id `Ptr ()',`Int' } -> `Int' #}+instance ( impl ~ (BufferOffset ->  IO (Either OutOfRange BufferOffset))) => Op (WordStart ()) TextBuffer orig impl where+  runOp _ _ text_buffer (BufferOffset pos) = withRef text_buffer $ \text_bufferPtr -> do+     bp <- wordStart' text_bufferPtr pos+     successOrOutOfRange bp (bp == 0) (return . BufferOffset)+{# fun unsafe Fl_Text_Buffer_word_end as wordEnd' { id `Ptr ()',`Int' } -> `Int' #}+instance ( impl ~ (BufferOffset ->  IO (Either OutOfRange BufferOffset))) => Op (WordEnd ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferOffset pos) = withRef text_buffer $ \text_bufferPtr -> do+     bp <- wordEnd' text_bufferPtr pos+     successOrOutOfRange bp (bp == 0) (return . BufferOffset)+{# fun unsafe Fl_Text_Buffer_count_displayed_characters as countDisplayedCharacters' { id `Ptr ()',`Int',`Int' } -> `Int' #}+instance ( impl ~ (BufferRange ->  IO (Int))) => Op (CountDisplayedCharacters ()) TextBuffer orig impl where+  runOp _ _ text_buffer (BufferRange (BufferOffset linestartpos) (BufferOffset targetpos)) = withRef text_buffer $ \text_bufferPtr -> countDisplayedCharacters' text_bufferPtr linestartpos targetpos+{# fun unsafe Fl_Text_Buffer_skip_displayed_characters as skipDisplayedCharacters' { id `Ptr ()',`Int',`Int' } -> `Int' #}+instance ( impl ~ (BufferOffset-> Int -> IO (BufferOffset))) => Op (SkipDisplayedCharacters ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferOffset linestartpos) nchars =+     withRef text_buffer $ \text_bufferPtr -> skipDisplayedCharacters' text_bufferPtr linestartpos nchars >>= return . BufferOffset+{# fun unsafe Fl_Text_Buffer_count_lines as countLines' { id `Ptr ()',`Int',`Int' } -> `Int' #}+instance ( impl ~ (BufferRange ->  IO (Int))) => Op (CountLines ()) TextBuffer orig impl where+  runOp _ _ text_buffer (BufferRange (BufferOffset startpos)(BufferOffset endpos)) = withRef text_buffer $ \text_bufferPtr -> countLines' text_bufferPtr startpos endpos+{# fun unsafe Fl_Text_Buffer_skip_lines as skipLines' { id `Ptr ()',`Int',`Int' } -> `Int' #}+instance ( impl ~ (BufferOffset -> Int ->  IO (BufferOffset))) => Op (SkipLines ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferOffset startpos) nlines = withRef text_buffer $ \text_bufferPtr -> skipLines' text_bufferPtr startpos nlines >>= return . BufferOffset+{# fun unsafe Fl_Text_Buffer_rewind_lines as rewindLines' { id `Ptr ()',`Int',`Int' } -> `Int' #}+instance ( impl ~ (BufferOffset -> Int ->  IO (Int))) => Op (RewindLines ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferOffset startpos) nlines = withRef text_buffer $ \text_bufferPtr -> rewindLines' text_bufferPtr startpos nlines+{# fun unsafe Fl_Text_Buffer_findchar_forward as findcharForward' { id `Ptr ()',`Int',`Int', id `Ptr CInt' } -> `Int' #}+instance ( impl ~ (BufferOffset -> Char ->   IO (Either NotFound BufferOffset))) => Op (FindcharForward ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferOffset startpos) searchchar =+     withRef text_buffer $ \text_bufferPtr ->+     alloca $ \intPtr -> do+     status' <- findcharForward' text_bufferPtr startpos (fromIntegral $ castCharToCChar searchchar) intPtr+     if (status' == 0)+       then return (Left NotFound)+       else peekIntConv intPtr >>= return . Right . BufferOffset+{# fun unsafe Fl_Text_Buffer_findchar_backward as findcharBackward' { id `Ptr ()',`Int',`Int',id `Ptr CInt' } -> `Int' #}+instance ( impl ~ (BufferOffset -> Char -> IO (Either NotFound BufferOffset))) => Op (FindcharBackward ()) TextBuffer orig impl where+  runOp _ _ text_buffer (BufferOffset startpos) searchchar =+     withRef text_buffer $ \text_bufferPtr ->+     alloca $ \intPtr -> do+     status' <- findcharBackward' text_bufferPtr startpos (fromIntegral $ castCharToCChar searchchar) intPtr+     if (status' == 0)+       then return (Left NotFound)+       else peekIntConv intPtr >>= return . Right . BufferOffset+{# fun unsafe Fl_Text_Buffer_search_forward_with_matchcase as searchForwardWithMatchcase' { id `Ptr ()',`Int',`String',id `Ptr CInt', cFromBool `Bool' } -> `Int' #}+instance ( impl ~ (BufferOffset -> String -> Bool ->  IO (Either NotFound BufferOffset))) => Op (SearchForwardWithMatchcase ()) TextBuffer orig impl where+  runOp _ _ text_buffer (BufferOffset startpos) searchstring matchcase =+     withRef text_buffer $ \text_bufferPtr ->+     alloca $ \intPtr -> do+     status' <- searchForwardWithMatchcase' text_bufferPtr startpos searchstring intPtr matchcase+     if (status' == 0)+       then return (Left NotFound)+       else peekIntConv intPtr >>= return .  Right . BufferOffset+{# fun unsafe Fl_Text_Buffer_search_backward_with_matchcase as searchBackwardWithMatchcase' { id `Ptr ()',`Int',`String',id `Ptr CInt', cFromBool `Bool' } -> `Int' #}+instance ( impl ~ (BufferOffset -> String -> Bool ->  IO (Either NotFound BufferOffset))) => Op (SearchBackwardWithMatchcase ()) TextBuffer orig impl where+  runOp _ _ text_buffer (BufferOffset startpos) searchstring matchcase =+     withRef text_buffer $ \text_bufferPtr ->+     alloca $ \intPtr -> do+     status' <- searchBackwardWithMatchcase' text_bufferPtr startpos searchstring intPtr matchcase+     if (status' == 0)+       then return (Left NotFound)+       else peekIntConv intPtr >>= return .  Right . BufferOffset+{# fun unsafe Fl_Text_Buffer_primary_selection as primarySelection' { id `Ptr ()' } -> `Ptr ()' id #}+instance ( impl ~ (  IO (Ref TextSelection))) => Op (PrimarySelection ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> primarySelection' text_bufferPtr >>= toRef+{# fun unsafe Fl_Text_Buffer_secondary_selection as secondarySelection' { id `Ptr ()' } -> `Ptr ()' id #}+instance ( impl ~ (  IO (Ref TextSelection))) => Op (SecondarySelection ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> secondarySelection' text_bufferPtr >>= toRef+{# fun unsafe Fl_Text_Buffer_highlight_selection as highlightSelection' { id `Ptr ()' } -> `Ptr ()' id #}+instance ( impl ~ (  IO (Ref TextSelection))) => Op (HighlightSelection ()) TextBuffer orig impl where+   runOp _ _ text_buffer = withRef text_buffer $ \text_bufferPtr -> highlightSelection' text_bufferPtr >>= toRef+{# fun unsafe Fl_Text_Buffer_prev_char as prevChar' { id `Ptr ()',`Int' } -> `Int' #}+instance ( impl ~ ( BufferOffset ->  IO (Either OutOfRange BufferOffset))) => Op (PrevChar ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferOffset ix) =+     withRef text_buffer $ \text_bufferPtr -> do+       p' <- prevChar' text_bufferPtr ix+       successOrOutOfRange p' (p' == 0) (return . BufferOffset)+{# fun unsafe Fl_Text_Buffer_prev_char_clipped as prevCharClipped' { id `Ptr ()',`Int' } -> `Int' #}+instance ( impl ~ (BufferOffset ->  IO (Either OutOfRange BufferOffset))) => Op (PrevCharClipped ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferOffset ix) =+     withRef text_buffer $ \text_bufferPtr -> do+     p' <- prevCharClipped' text_bufferPtr ix+     successOrOutOfRange p' (p' == 0) (return . BufferOffset)+{# fun unsafe Fl_Text_Buffer_next_char as nextChar' { id `Ptr ()',`Int' } -> `Int' #}+instance ( impl ~ (BufferOffset ->  IO BufferOffset)) => Op (NextChar ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferOffset ix) = withRef text_buffer $ \text_bufferPtr -> nextChar' text_bufferPtr ix >>= return . BufferOffset+{# fun unsafe Fl_Text_Buffer_next_char_clipped as nextCharClipped' { id `Ptr ()',`Int' } -> `Int' #}+instance ( impl ~ (BufferOffset ->  IO (BufferOffset))) => Op (NextCharClipped ()) TextBuffer orig impl where+   runOp _ _ text_buffer (BufferOffset ix) = withRef text_buffer $ \text_bufferPtr -> nextCharClipped' text_bufferPtr ix >>= return . BufferOffset+{# fun unsafe Fl_Text_Buffer_utf8_align as utf8Align' { id `Ptr ()',`Int' } -> `Int' #}+instance ( impl ~ (BufferOffset ->  IO (Either OutOfRange BufferOffset))) => Op (Utf8Align ()) TextBuffer orig impl where+  runOp _ _ text_buffer (BufferOffset align) =+     withRef text_buffer $ \text_bufferPtr -> do+     p' <- utf8Align' text_bufferPtr align+     successOrOutOfRange p' (p' == 0) (return . BufferOffset)++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.TextBuffer"+-- @++-- $functions+-- @+-- addModifyCallback :: 'Ref' 'TextBuffer' -> 'TextModifyCb' -> 'IO' ('FunPtr' ())+--+-- addPredeleteCallback :: 'Ref' 'TextBuffer' -> 'TextPredeleteCb' -> 'IO' ('FunPtr' ())+--+-- appendToBuffer :: 'Ref' 'TextBuffer' -> 'String' -> 'IO' ()+--+-- appendfile :: 'Ref' 'TextBuffer' -> 'String' -> 'IO' ('Either' 'DataProcessingError' ())+--+-- appendfileWithBuflen :: 'Ref' 'TextBuffer' -> 'String' -> 'Int' -> 'IO' ('Either' 'DataProcessingError' ())+--+-- byteAt :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'IO' 'Char'+--+-- callModifyCallbacks :: 'Ref' 'TextBuffer' -> 'IO' ()+--+-- callPredeleteCallbacks :: 'Ref' 'TextBuffer' -> 'IO' ()+--+-- canUndo :: 'Ref' 'TextBuffer' -> 'Bool' -> 'IO' ()+--+-- charAt :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'IO' 'Char'+--+-- copy:: ('Parent' a 'TextBuffer') => 'Ref' 'TextBuffer' -> 'Ref' a -> 'BufferRange' -> 'BufferOffset' -> 'IO' ())+--+-- countDisplayedCharacters :: 'Ref' 'TextBuffer' -> 'BufferRange' -> 'IO' 'Int'+--+-- countLines :: 'Ref' 'TextBuffer' -> 'BufferRange' -> 'IO' 'Int'+--+-- destroy :: 'Ref' 'TextBuffer' -> 'IO' ()+--+-- fileEncodingWarningMessage :: 'Ref' 'TextBuffer' -> 'IO' 'String'+--+-- findcharBackward :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'Char' -> 'IO' ('Either' 'NotFound' 'BufferOffset')+--+-- findcharForward :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'Char' -> 'IO' ('Either' 'NotFound' 'BufferOffset')+--+-- getHighlight :: 'Ref' 'TextBuffer' -> 'IO' 'Bool'+--+-- getLength :: 'Ref' 'TextBuffer' -> 'IO' 'Int'+--+-- getTabDistance :: 'Ref' 'TextBuffer' -> 'IO' 'Int'+--+-- getText :: 'Ref' 'TextBuffer' -> 'IO' 'String'+--+-- highlightPosition :: 'Ref' 'TextBuffer' -> 'IO' ('Maybe' 'BufferRange')+--+-- highlightSelection :: 'Ref' 'TextBuffer' -> 'IO' ('Ref' 'TextSelection')+--+-- highlightText :: 'Ref' 'TextBuffer' -> 'IO' 'String'+--+-- inputFileWasTranscoded :: 'Ref' 'TextBuffer' -> 'IO' 'Bool'+--+-- insert :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'String' -> 'IO' ()+--+-- insertfile :: 'Ref' 'TextBuffer' -> 'String' -> 'BufferOffset' -> 'IO' ('Either' 'DataProcessingError' ())+--+-- insertfileWithBuflen :: 'Ref' 'TextBuffer' -> 'String' -> 'BufferOffset' -> 'Int' -> 'IO' ('Either' 'DataProcessingError' ())+--+-- lineEnd :: 'Ref' 'TextBuffer' -> 'Int' -> 'IO' ('Either' 'OutOfRange' 'BufferOffset')+--+-- lineStart :: 'Ref' 'TextBuffer' -> 'Int' -> 'IO' ('Either' 'OutOfRange' 'BufferOffset')+--+-- lineText :: 'Ref' 'TextBuffer' -> 'Int' -> 'IO' ('Either' 'OutOfRange' 'String')+--+-- loadfile :: 'Ref' 'TextBuffer' -> 'String' -> 'IO' ('Either' 'DataProcessingError' ())+--+-- loadfileWithBuflen :: 'Ref' 'TextBuffer' -> 'String' -> 'Int' -> 'IO' ('Either' 'DataProcessingError' ())+--+-- nextChar :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'IO' 'BufferOffset'+--+-- nextCharClipped :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'IO' 'BufferOffset'+--+-- outputfile :: 'Ref' 'TextBuffer' -> 'String' -> 'BufferRange' -> 'IO' ('Either' 'DataProcessingError' ())+--+-- outputfileWithBuflen :: 'Ref' 'TextBuffer' -> 'String' -> 'BufferRange' -> 'Int' -> 'IO' ('Either' 'DataProcessingError' ())+--+-- prevChar :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'IO' ('Either' 'OutOfRange' 'BufferOffset')+--+-- prevCharClipped :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'IO' ('Either' 'OutOfRange' 'BufferOffset')+--+-- primarySelection :: 'Ref' 'TextBuffer' -> 'IO' ('Ref' 'TextSelection')+--+-- remove :: 'Ref' 'TextBuffer' -> 'BufferRange' -> 'IO' ()+--+-- removeModifyCallback :: 'Ref' 'TextBuffer' -> 'FunPtr' () -> 'IO' ()+--+-- removePredeleteCallback :: 'Ref' 'TextBuffer' -> 'FunPtr' () -> 'IO' ()+--+-- removeSecondarySelection :: 'Ref' 'TextBuffer' -> 'IO' ()+--+-- removeSelection :: 'Ref' 'TextBuffer' -> 'IO' ()+--+-- replace :: 'Ref' 'TextBuffer' -> 'BufferRange' -> 'String' -> 'IO' ()+--+-- replaceSecondarySelection :: 'Ref' 'TextBuffer' -> 'String' -> 'IO' ()+--+-- replaceSelection :: 'Ref' 'TextBuffer' -> 'String' -> 'IO' ()+--+-- rewindLines :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'Int' -> 'IO' 'Int'+--+-- savefile :: 'Ref' 'TextBuffer' -> 'String' -> 'IO' ('Either' 'DataProcessingError' ())+--+-- savefileWithBuflen :: 'Ref' 'TextBuffer' -> 'String' -> 'Int' -> 'IO' ('Either' 'DataProcessingError' ())+--+-- searchBackwardWithMatchcase :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'String' -> 'Bool' -> 'IO' ('Either' 'NotFound' 'BufferOffset')+--+-- searchForwardWithMatchcase :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'String' -> 'Bool' -> 'IO' ('Either' 'NotFound' 'BufferOffset')+--+-- secondarySelect :: 'Ref' 'TextBuffer' -> 'BufferRange' -> 'IO' ()+--+-- secondarySelected :: 'Ref' 'TextBuffer' -> 'IO' 'Bool'+--+-- secondarySelection :: 'Ref' 'TextBuffer' -> 'IO' ('Ref' 'TextSelection')+--+-- secondarySelectionPosition :: 'Ref' 'TextBuffer' -> 'IO' 'BufferRange'+--+-- secondarySelectionText :: 'Ref' 'TextBuffer' -> 'IO' 'String'+--+-- secondaryUnselect :: 'Ref' 'TextBuffer' -> 'IO' ()+--+-- select :: 'Ref' 'TextBuffer' -> 'BufferRange' -> 'IO' ()+--+-- selected :: 'Ref' 'TextBuffer' -> 'IO' 'Bool'+--+-- selectionPosition :: 'Ref' 'TextBuffer' -> 'IO' 'BufferRange'+--+-- selectionText :: 'Ref' 'TextBuffer' -> 'IO' 'String'+--+-- setHighlight :: 'Ref' 'TextBuffer' -> 'BufferRange' -> 'IO' ()+--+-- setTabDistance :: 'Ref' 'TextBuffer' -> 'Int' -> 'IO' ()+--+-- setText :: 'Ref' 'TextBuffer' -> 'String' -> 'IO' ()+--+-- skipDisplayedCharacters :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'Int' -> 'IO' 'BufferOffset'+--+-- skipLines :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'Int' -> 'IO' 'BufferOffset'+--+-- textRange :: 'Ref' 'TextBuffer' -> 'BufferRange' -> 'IO' 'String'+--+-- undo :: 'Ref' 'TextBuffer' -> 'IO' ('Either' 'NoChange' 'BufferOffset')+--+-- unhighlight :: 'Ref' 'TextBuffer' -> 'IO' ()+--+-- unselect :: 'Ref' 'TextBuffer' -> 'IO' ()+--+-- utf8Align :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'IO' ('Either' 'OutOfRange' 'BufferOffset')+--+-- wordEnd :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'IO' ('Either' 'OutOfRange' 'BufferOffset')+--+-- wordStart :: 'Ref' 'TextBuffer' -> 'BufferOffset' -> 'IO' ('Either' 'OutOfRange' 'BufferOffset')+-- @
+ src/Graphics/UI/FLTK/LowLevel/TextDisplay.chs view
@@ -0,0 +1,399 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.TextDisplay+       (+         mkStyleTableEntriesPtr,+         indexStyleTableEntries,+         textDisplayNew+         -- * Hierarchy+         --+         -- $hierarchy++         -- * Functions+         --+         -- $functions+       )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Text_DisplayC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import qualified Foreign.Concurrent as FC+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch+import qualified Foreign.ForeignPtr.Unsafe as Unsafe++mkStyleTableEntriesPtr :: (Parent a TextDisplay) => Ref a -> [StyleTableEntry] -> IO (ForeignPtr [StyleTableEntry])+mkStyleTableEntriesPtr td stes = do+  styleTableEntriesPtr <- mallocBytes ((length stes) * {#sizeof Style_Table_Entry #})+  mapM_+    (+      \(idx, (StyleTableEntry c f s)) -> do+        let currPtr = styleTableEntriesPtr `plusPtr` (idx * {#sizeof Style_Table_Entry #})+        {#set Style_Table_Entry->color #} currPtr $ maybe 0 (\(Color c') -> fromIntegral c') c+        {#set Style_Table_Entry->font  #} currPtr $ maybe 0 (\(Font f') -> fromIntegral f') f+        {#set Style_Table_Entry->size  #} currPtr $ maybe 0 (\(FontSize s') -> s') s+        {#set Style_Table_Entry->attr  #} currPtr 0+    )+    (zip [0..] stes)+  textDisplayAsPtr <- unsafeRefToPtr td+  let finalizerF = if (textDisplayAsPtr == nullPtr)+                   then free styleTableEntriesPtr+                   else return ()+  FC.newForeignPtr+   styleTableEntriesPtr+   finalizerF++indexStyleTableEntries :: [StyleTableEntry] -> [(Char, StyleTableEntry)]+indexStyleTableEntries = zip ['A'..]++{# fun Fl_Text_Display_New as textDisplayNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Text_Display_New_WithLabel as textDisplayNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+textDisplayNew :: Rectangle -> Maybe String -> IO (Ref TextDisplay)+textDisplayNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> textDisplayNew' x_pos y_pos width height >>=+                             toRef+        Just l -> textDisplayNewWithLabel' x_pos y_pos width height l >>=+                             toRef++{# fun Fl_Text_Display_Destroy as textDisplayDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) TextDisplay orig impl where+  runOp _ _ text_display = withRef text_display $ \text_displayPtr -> textDisplayDestroy' text_displayPtr++{# fun Fl_Text_Display_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Rectangle -> IO ())) => Op (Resize ()) TextDisplay orig impl where+  runOp _ _ text_display rectangle = withRef text_display $ \text_displayPtr -> do+    let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+    resize' text_displayPtr x_pos y_pos w_pos h_pos+{# fun unsafe Fl_Text_Display_handle as handle' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Event ->  IO (Int))) => Op (Handle ()) TextDisplay orig impl where+   runOp _ _ text_display e = withRef text_display $ \text_displayPtr -> handle' text_displayPtr (fromEnum e)+{# fun unsafe Fl_Text_Display_set_buffer as setBuffer' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a TextBuffer, impl ~ (Ref a ->  IO ())) => Op (SetBuffer ()) TextDisplay orig impl where+   runOp _ _ text_display buf = withRef text_display $ \text_displayPtr -> withRef buf $ \bufPtr -> setBuffer' text_displayPtr bufPtr+{# fun unsafe Fl_Text_Display_buffer as buffer' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Ref TextBuffer))) => Op (GetBuffer ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> buffer' text_displayPtr >>= toRef+{# fun unsafe Fl_Text_Display_redisplay_range as redisplayRange' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ (BufferRange -> IO ())) => Op (RedisplayRange ()) TextDisplay orig impl where+  runOp _ _ text_display (BufferRange (BufferOffset start') (BufferOffset end')) = withRef text_display $ \text_displayPtr -> redisplayRange' text_displayPtr start' end'+{# fun unsafe Fl_Text_Display_scroll as scroll' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ (Int -> BufferOffset ->  IO ())) => Op (Scroll ()) TextDisplay orig impl where+  runOp _ _ text_display toplinenum (BufferOffset  horizoffset) = withRef text_display $ \text_displayPtr -> scroll' text_displayPtr toplinenum horizoffset+{# fun unsafe Fl_Text_Display_overstrike as overstrike' { id `Ptr ()',`String' } -> `()' #}+instance (impl ~ (String ->  IO ())) => Op (Overstrike ()) TextDisplay orig impl where+   runOp _ _ text_display text = withRef text_display $ \text_displayPtr -> overstrike' text_displayPtr text+{# fun unsafe Fl_Text_Display_set_insert_position as setInsertPosition' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (BufferOffset ->  IO ())) => Op (SetInsertPosition ()) TextDisplay orig impl where+  runOp _ _ text_display (BufferOffset newpos) = withRef text_display $ \text_displayPtr -> setInsertPosition' text_displayPtr newpos+{# fun unsafe Fl_Text_Display_insert_position as insertPosition' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO BufferOffset)) => Op (GetInsertPosition ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> insertPosition' text_displayPtr >>= return . BufferOffset+{# fun unsafe Fl_Text_Display_position_to_xy as positionToXy' { id `Ptr ()',`Int', id `Ptr CInt', id `Ptr CInt'} -> `Int' #}+instance (impl ~ (BufferOffset ->  IO (Either OutOfRange Position))) => Op (PositionToXy ()) TextDisplay orig impl where+  runOp _ _ text_display (BufferOffset pos)  =+     withRef text_display $ \text_displayPtr ->+     alloca $ \xPtr ->+     alloca $ \yPtr -> do+     status' <- positionToXy' text_displayPtr pos xPtr yPtr+     successOrOutOfRange+       ((xPtr,yPtr))+       (status' == 0)+       (\(xp',yp') -> do+           x' <- peekIntConv xp'+           y' <- peekIntConv yp'+           return (Position (X x') (Y y'))+       )+{# fun unsafe Fl_Text_Display_in_selection as inSelection' { id `Ptr ()',`Int',`Int' } -> `Bool' cToBool #}+instance (impl ~ (Position ->  IO (Bool))) => Op (InSelection ()) TextDisplay orig impl where+   runOp _ _ text_display (Position (X x_pos') (Y y_pos')) = withRef text_display $ \text_displayPtr -> inSelection' text_displayPtr x_pos' y_pos'+{# fun unsafe Fl_Text_Display_show_insert_position as showInsertPosition' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (ShowInsertPosition ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> showInsertPosition' text_displayPtr+{# fun unsafe Fl_Text_Display_move_right as moveRight' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Either OutOfRange ()))) => Op (MoveRight ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr ->+     moveRight' text_displayPtr >>= \s -> successOrOutOfRange () (s == 0) return+{# fun unsafe Fl_Text_Display_move_left as moveLeft' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Either OutOfRange ()))) => Op (MoveLeft ()) TextDisplay orig impl where+   runOp _ _ text_display =+     withRef text_display $ \text_displayPtr ->+     moveLeft' text_displayPtr >>= \s -> successOrOutOfRange () (s == 0) return+{# fun unsafe Fl_Text_Display_move_up as moveUp' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Either OutOfRange ()))) => Op (MoveUp ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr ->+     moveUp' text_displayPtr >>= \s -> successOrOutOfRange () (s == 0) return+{# fun unsafe Fl_Text_Display_move_down as moveDown' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Either OutOfRange ()))) => Op (MoveDown ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr ->+     moveDown' text_displayPtr >>= \s -> successOrOutOfRange () (s == 0) return+{# fun unsafe Fl_Text_Display_count_lines as countLines' { id `Ptr ()',`Int',`Int', cFromBool `Bool' } -> `Int' #}+instance (impl ~ (BufferRange -> Bool ->  IO (Int))) => Op (CountLines ()) TextDisplay orig impl where+  runOp _ _ text_display (BufferRange (BufferOffset start') (BufferOffset end')) start_pos_is_line_start =+    withRef text_display $ \text_displayPtr -> countLines' text_displayPtr start' end' start_pos_is_line_start+{# fun unsafe Fl_Text_Display_line_start as lineStart' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (BufferOffset ->  IO (BufferOffset))) => Op (LineStart ()) TextDisplay orig impl where+  runOp _ _ text_display (BufferOffset pos) = withRef text_display $ \text_displayPtr -> lineStart' text_displayPtr pos >>= return . BufferOffset+{# fun unsafe Fl_Text_Display_line_end as lineEnd' { id `Ptr ()',`Int', cFromBool `Bool' } -> `Int' #}+instance (impl ~ (BufferOffset -> Bool ->  IO (BufferOffset))) => Op (LineEnd ()) TextDisplay orig impl where+  runOp _ _ text_display (BufferOffset startpos) startposislinestart = withRef text_display $ \text_displayPtr -> lineEnd' text_displayPtr startpos startposislinestart >>= return . BufferOffset+{# fun unsafe Fl_Text_Display_skip_lines as skipLines' { id `Ptr ()',`Int',`Int', cFromBool `Bool' } -> `Int' #}+instance (impl ~ (BufferOffset -> Int -> Bool ->  IO (BufferOffset))) => Op (SkipLines ()) TextDisplay orig impl where+  runOp _ _ text_display (BufferOffset startpos) nlines startposislinestart = withRef text_display $ \text_displayPtr -> skipLines' text_displayPtr startpos nlines startposislinestart >>= return . BufferOffset+{# fun unsafe Fl_Text_Display_rewind_lines as rewindLines' { id `Ptr ()',`Int',`Int' } -> `Int' #}+instance (impl ~ (BufferOffset -> Int ->  IO (BufferOffset))) => Op (RewindLines ()) TextDisplay orig impl where+  runOp _ _ text_display (BufferOffset startpos) nlines = withRef text_display $ \text_displayPtr -> rewindLines' text_displayPtr startpos nlines >>= return . BufferOffset+{# fun unsafe Fl_Text_Display_next_word as nextWord' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (NextWord ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> nextWord' text_displayPtr+{# fun unsafe Fl_Text_Display_previous_word as previousWord' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (PreviousWord ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> previousWord' text_displayPtr+{# fun unsafe Fl_Text_Display_show_cursor_with_b as showCursorWithB' { id `Ptr ()', cFromBool `Bool' } -> `()' #}+instance (impl ~ (Bool ->  IO ())) => Op (ShowCursor ()) TextDisplay orig impl where+   runOp _ _ text_display b = withRef text_display $ \text_displayPtr -> showCursorWithB' text_displayPtr b+{# fun unsafe Fl_Text_Display_set_cursor_style as cursorStyle' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (CursorType -> IO ())) => Op (SetCursorStyle ()) TextDisplay orig impl where+   runOp _ _ text_display ct = withRef text_display $ \text_displayPtr -> cursorStyle' text_displayPtr (fromEnum ct)+{# fun unsafe Fl_Text_Display_cursor_color as cursorColor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetCursorColor ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> cursorColor' text_displayPtr+{# fun unsafe Fl_Text_Display_set_cursor_color as setCursorColor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetCursorColor ()) TextDisplay orig impl where+   runOp _ _ text_display n = withRef text_display $ \text_displayPtr -> setCursorColor' text_displayPtr n+{# fun unsafe Fl_Text_Display_scrollbar_width as scrollbarWidth' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Width))) => Op (GetScrollbarWidth ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> scrollbarWidth' text_displayPtr >>= return . Width+{# fun unsafe Fl_Text_Display_set_scrollbar_width as setScrollbarWidth' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Width ->  IO ())) => Op (SetScrollbarWidth ()) TextDisplay orig impl where+  runOp _ _ text_display (Width w) = withRef text_display $ \text_displayPtr -> setScrollbarWidth' text_displayPtr w+{# fun unsafe Fl_Text_Display_scrollbar_align as scrollbarAlign' { id `Ptr ()' } -> `AlignType' cToEnum #}+instance (impl ~ ( IO (AlignType))) => Op (GetScrollbarAlign ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> scrollbarAlign' text_displayPtr+{# fun unsafe Fl_Text_Display_set_scrollbar_align as setScrollbarAlign' { id `Ptr ()',cFromEnum `AlignType' } -> `()' #}+instance (impl ~ (AlignType ->  IO ())) => Op (SetScrollbarAlign ()) TextDisplay orig impl where+   runOp _ _ text_display a = withRef text_display $ \text_displayPtr -> setScrollbarAlign' text_displayPtr a+{# fun unsafe Fl_Text_Display_word_start as wordStart' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (BufferOffset ->  IO (BufferOffset))) => Op (WordStart ()) TextDisplay orig impl where+   runOp _ _ text_display (BufferOffset pos) = withRef text_display $ \text_displayPtr -> wordStart' text_displayPtr pos >>= return . BufferOffset+{# fun unsafe Fl_Text_Display_word_end as wordEnd' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (BufferOffset ->  IO (BufferOffset))) => Op (WordEnd ()) TextDisplay orig impl where+   runOp _ _ text_display (BufferOffset pos) = withRef text_display $ \text_displayPtr -> wordEnd' text_displayPtr pos >>= return . BufferOffset+{# fun unsafe Fl_Text_Display_highlight_data as highlightData' { id `Ptr ()',id `Ptr ()',id `Ptr ()',`Int', id `CChar',id `FunPtr UnfinishedStyleCbPrim',id `Ptr ()' } -> `()' #}+instance (Parent a TextBuffer, impl ~ (Ref a -> [(Char, StyleTableEntry)] -> Maybe(Char,UnfinishedStyleCb) -> IO ())) => Op (HighlightData ()) TextDisplay orig impl where+   runOp _ _ text_display style_buffer indexedStyleTable cb =+     withRef text_display $ \text_displayPtr ->+     withRef style_buffer $ \style_bufferPtr -> do+       stesPtr <- mkStyleTableEntriesPtr text_display (map snd indexedStyleTable)+       (indexChar, fPtr) <- case cb of+         (Just (indexChar', unfinishedhighlightcb)) -> do+           fPtr' <- toUnfinishedStyleCbPrim unfinishedhighlightcb+           return ((fromEnum indexChar'), fPtr')+         Nothing -> return (0, nullFunPtr)+       highlightData' text_displayPtr style_bufferPtr (castPtr $ Unsafe.unsafeForeignPtrToPtr $ stesPtr) (length indexedStyleTable) (fromIntegral indexChar) fPtr nullPtr+{# fun unsafe Fl_Text_Display_position_style as positionStyle' { id `Ptr ()',`Int',`Int',`Int' } -> `Int' #}+instance (impl ~ (BufferOffset -> Int -> Int ->  IO TextDisplayStyle)) => Op (PositionStyle ()) TextDisplay orig impl where+  runOp _ _ text_display (BufferOffset linestartpos) linelen lineindex =+    withRef text_display $ \text_displayPtr ->+    positionStyle' text_displayPtr linestartpos linelen lineindex >>= return . TextDisplayStyle . fromIntegral+{# fun unsafe Fl_Text_Display_shortcut as shortcut' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetShortcut ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> shortcut' text_displayPtr+{# fun unsafe Fl_Text_Display_set_shortcut as setShortcut' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetShortcut ()) TextDisplay orig impl where+   runOp _ _ text_display s = withRef text_display $ \text_displayPtr -> setShortcut' text_displayPtr s+{# fun unsafe Fl_Text_Display_textfont as textfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ ( IO (Font))) => Op (GetTextfont ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> textfont' text_displayPtr+{# fun unsafe Fl_Text_Display_textsize as textsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ ( IO (FontSize))) => Op (GetTextsize ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> textsize' text_displayPtr >>= return . FontSize+{# fun unsafe Fl_Text_Display_set_textsize as setTextsize' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ())) => Op (SetTextsize ()) TextDisplay orig impl where+   runOp _ _ text_display (FontSize s) = withRef text_display $ \text_displayPtr -> setTextsize' text_displayPtr s+{# fun unsafe Fl_Text_Display_textcolor as textcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetTextcolor ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> textcolor' text_displayPtr+{# fun unsafe Fl_Text_Display_set_textcolor as setTextcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetTextcolor ()) TextDisplay orig impl where+   runOp _ _ text_display n = withRef text_display $ \text_displayPtr -> setTextcolor' text_displayPtr n+{# fun unsafe Fl_Text_Display_x_to_col as xToCol' { id `Ptr ()',`Double' } -> `Double' #}+instance (impl ~ (Double ->  IO (Double))) => Op (XToCol ()) TextDisplay orig impl where+   runOp _ _ text_display pixelPos = withRef text_display $ \text_displayPtr -> xToCol' text_displayPtr pixelPos+{# fun unsafe Fl_Text_Display_col_to_x as colToX' { id `Ptr ()',`Double' } -> `Double' #}+instance (impl ~ (Double ->  IO (Double))) => Op (ColToX ()) TextDisplay orig impl where+   runOp _ _ text_display col = withRef text_display $ \text_displayPtr -> colToX' text_displayPtr col+{# fun unsafe set_linenumber_width as setLinenumberWidth' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Width ->  IO ())) => Op (SetLinenumberWidth ()) TextDisplay orig impl where+  runOp _ _ text_display (Width width) = withRef text_display $ \text_displayPtr -> setLinenumberWidth' text_displayPtr width+{# fun unsafe linenumber_width as linenumberWidth' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Width))) => Op (GetLinenumberWidth ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> linenumberWidth' text_displayPtr >>= return . Width+{# fun unsafe set_linenumber_font as setLinenumberFont' { id `Ptr ()',cFromFont `Font' } -> `()' #}+instance (impl ~ (Font ->  IO ())) => Op (SetLinenumberFont ()) TextDisplay orig impl where+   runOp _ _ text_display val = withRef text_display $ \text_displayPtr -> setLinenumberFont' text_displayPtr val+{# fun unsafe linenumber_font as linenumberFont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ ( IO (Font))) => Op (GetLinenumberFont ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> linenumberFont' text_displayPtr+{# fun unsafe set_linenumber_size as setLinenumberSize' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ())) => Op (SetLinenumberSize ()) TextDisplay orig impl where+  runOp _ _ text_display (FontSize val) = withRef text_display $ \text_displayPtr -> setLinenumberSize' text_displayPtr val+{# fun unsafe linenumber_size as linenumberSize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ ( IO (FontSize))) => Op (GetLinenumberSize ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> linenumberSize' text_displayPtr >>= return . FontSize+{# fun unsafe set_linenumber_fgcolor as setLinenumberFgcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetLinenumberFgcolor ()) TextDisplay orig impl where+   runOp _ _ text_display val = withRef text_display $ \text_displayPtr -> setLinenumberFgcolor' text_displayPtr val+{# fun unsafe linenumber_fgcolor as linenumberFgcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetLinenumberFgcolor ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> linenumberFgcolor' text_displayPtr+{# fun unsafe set_linenumber_bgcolor as setLinenumberBgcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetLinenumberBgcolor ()) TextDisplay orig impl where+   runOp _ _ text_display val = withRef text_display $ \text_displayPtr -> setLinenumberBgcolor' text_displayPtr val+{# fun unsafe linenumber_bgcolor as linenumberBgcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetLinenumberBgcolor ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> linenumberBgcolor' text_displayPtr+{# fun unsafe set_linenumber_align as setLinenumberAlign' { id `Ptr ()',cFromEnum `AlignType' } -> `()' #}+instance (impl ~ (AlignType ->  IO ())) => Op (SetLinenumberAlign ()) TextDisplay orig impl where+   runOp _ _ text_display val = withRef text_display $ \text_displayPtr -> setLinenumberAlign' text_displayPtr val+{# fun unsafe linenumber_align as linenumberAlign' { id `Ptr ()' } -> `AlignType' cToEnum #}+instance (impl ~ ( IO (AlignType))) => Op (GetLinenumberAlign ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> linenumberAlign' text_displayPtr+{# fun unsafe set_linenumber_format as setLinenumberFormat' { id `Ptr ()',`String' } -> `()' #}+instance (impl ~ (String ->  IO ())) => Op (SetLinenumberFormat ()) TextDisplay orig impl where+   runOp _ _ text_display val = withRef text_display $ \text_displayPtr -> setLinenumberFormat' text_displayPtr val+{# fun unsafe linenumber_format as linenumberFormat' { id `Ptr ()' } -> `String' #}+instance (impl ~ ( IO (String))) => Op (GetLinenumberFormat ()) TextDisplay orig impl where+   runOp _ _ text_display = withRef text_display $ \text_displayPtr -> linenumberFormat' text_displayPtr++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.TextDisplay"+-- @++-- $functions+-- @+-- colToX :: 'Ref' 'TextDisplay' -> 'Double' -> 'IO' 'Double'+--+-- countLines :: 'Ref' 'TextDisplay' -> 'BufferRange' -> 'Bool' -> 'IO' 'Int'+--+-- destroy :: 'Ref' 'TextDisplay' -> 'IO' ()+--+-- getBuffer :: 'Ref' 'TextDisplay' -> 'IO' ('Ref' 'TextBuffer')+--+-- getCursorColor :: 'Ref' 'TextDisplay' -> 'IO' 'Color'+--+-- getInsertPosition :: 'Ref' 'TextDisplay' -> 'IO' 'BufferOffset'+--+-- getLinenumberAlign :: 'Ref' 'TextDisplay' -> 'IO' 'AlignType'+--+-- getLinenumberBgcolor :: 'Ref' 'TextDisplay' -> 'IO' 'Color'+--+-- getLinenumberFgcolor :: 'Ref' 'TextDisplay' -> 'IO' 'Color'+--+-- getLinenumberFont :: 'Ref' 'TextDisplay' -> 'IO' 'Font'+--+-- getLinenumberFormat :: 'Ref' 'TextDisplay' -> 'IO' 'String'+--+-- getLinenumberSize :: 'Ref' 'TextDisplay' -> 'IO' 'FontSize'+--+-- getLinenumberWidth :: 'Ref' 'TextDisplay' -> 'IO' 'Width'+--+-- getScrollbarAlign :: 'Ref' 'TextDisplay' -> 'IO' 'AlignType'+--+-- getScrollbarWidth :: 'Ref' 'TextDisplay' -> 'IO' 'Width'+--+-- getShortcut :: 'Ref' 'TextDisplay' -> 'IO' 'Int'+--+-- getTextcolor :: 'Ref' 'TextDisplay' -> 'IO' 'Color'+--+-- getTextfont :: 'Ref' 'TextDisplay' -> 'IO' 'Font'+--+-- getTextsize :: 'Ref' 'TextDisplay' -> 'IO' 'FontSize'+--+-- handle :: 'Ref' 'TextDisplay' -> 'Event' -> 'IO' 'Int'+--+-- highlightData:: ('Parent' a 'TextBuffer') => 'Ref' 'TextDisplay' -> 'Ref' a -> [('Char', 'StyleTableEntry']) -> 'Maybe' ('Char', 'UnfinishedStyleCb') -> 'IO' ())+--+-- inSelection :: 'Ref' 'TextDisplay' -> 'Position' -> 'IO' 'Bool'+--+-- lineEnd :: 'Ref' 'TextDisplay' -> 'BufferOffset' -> 'Bool' -> 'IO' 'BufferOffset'+--+-- lineStart :: 'Ref' 'TextDisplay' -> 'BufferOffset' -> 'IO' 'BufferOffset'+--+-- moveDown :: 'Ref' 'TextDisplay' -> 'IO' ('Either' 'OutOfRange' ())+--+-- moveLeft :: 'Ref' 'TextDisplay' -> 'IO' ('Either' 'OutOfRange' ())+--+-- moveRight :: 'Ref' 'TextDisplay' -> 'IO' ('Either' 'OutOfRange' ())+--+-- moveUp :: 'Ref' 'TextDisplay' -> 'IO' ('Either' 'OutOfRange' ())+--+-- nextWord :: 'Ref' 'TextDisplay' -> 'IO' ()+--+-- overstrike :: 'Ref' 'TextDisplay' -> 'String' -> 'IO' ()+--+-- positionStyle :: 'Ref' 'TextDisplay' -> 'BufferOffset' -> 'Int' -> 'Int' -> 'IO' 'TextDisplayStyle'+--+-- positionToXy :: 'Ref' 'TextDisplay' -> 'BufferOffset' -> 'IO' ('Either' 'OutOfRange' 'Position')+--+-- previousWord :: 'Ref' 'TextDisplay' -> 'IO' ()+--+-- redisplayRange :: 'Ref' 'TextDisplay' -> 'BufferRange' -> 'IO' ()+--+-- resize :: 'Ref' 'TextDisplay' -> 'Rectangle' -> 'IO' ()+--+-- rewindLines :: 'Ref' 'TextDisplay' -> 'BufferOffset' -> 'Int' -> 'IO' 'BufferOffset'+--+-- scroll :: 'Ref' 'TextDisplay' -> 'Int' -> 'BufferOffset' -> 'IO' ()+--+-- setBuffer:: ('Parent' a 'TextBuffer') => 'Ref' 'TextDisplay' -> 'Ref' a -> 'IO' ())+--+-- setCursorColor :: 'Ref' 'TextDisplay' -> 'Color' -> 'IO' ()+--+-- setCursorStyle :: 'Ref' 'TextDisplay' -> 'CursorType' -> 'IO' ()+--+-- setInsertPosition :: 'Ref' 'TextDisplay' -> 'BufferOffset' -> 'IO' ()+--+-- setLinenumberAlign :: 'Ref' 'TextDisplay' -> 'AlignType' -> 'IO' ()+--+-- setLinenumberBgcolor :: 'Ref' 'TextDisplay' -> 'Color' -> 'IO' ()+--+-- setLinenumberFgcolor :: 'Ref' 'TextDisplay' -> 'Color' -> 'IO' ()+--+-- setLinenumberFont :: 'Ref' 'TextDisplay' -> 'Font' -> 'IO' ()+--+-- setLinenumberFormat :: 'Ref' 'TextDisplay' -> 'String' -> 'IO' ()+--+-- setLinenumberSize :: 'Ref' 'TextDisplay' -> 'FontSize' -> 'IO' ()+--+-- setLinenumberWidth :: 'Ref' 'TextDisplay' -> 'Width' -> 'IO' ()+--+-- setScrollbarAlign :: 'Ref' 'TextDisplay' -> 'AlignType' -> 'IO' ()+--+-- setScrollbarWidth :: 'Ref' 'TextDisplay' -> 'Width' -> 'IO' ()+--+-- setShortcut :: 'Ref' 'TextDisplay' -> 'Int' -> 'IO' ()+--+-- setTextcolor :: 'Ref' 'TextDisplay' -> 'Color' -> 'IO' ()+--+-- setTextsize :: 'Ref' 'TextDisplay' -> 'FontSize' -> 'IO' ()+--+-- showCursor :: 'Ref' 'TextDisplay' -> 'Bool' -> 'IO' ()+--+-- showInsertPosition :: 'Ref' 'TextDisplay' -> 'IO' ()+--+-- skipLines :: 'Ref' 'TextDisplay' -> 'BufferOffset' -> 'Int' -> 'Bool' -> 'IO' 'BufferOffset'+--+-- wordEnd :: 'Ref' 'TextDisplay' -> 'BufferOffset' -> 'IO' 'BufferOffset'+--+-- wordStart :: 'Ref' 'TextDisplay' -> 'BufferOffset' -> 'IO' 'BufferOffset'+--+-- xToCol :: 'Ref' 'TextDisplay' -> 'Double' -> 'IO' 'Double'+-- @
+ src/Graphics/UI/FLTK/LowLevel/TextEditor.chs view
@@ -0,0 +1,170 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.TextEditor+       (+         textEditorNew,+         KeyBinding(..),+         KeyFunc(..),+         KeyFuncPrim,+         keyFuncToFunRef,+         toKeyFuncPrim,+         keyBindingsToArray,+         arrayToKeyBindings+         -- * Hierarchy+         --+         -- $hierarchy++         -- * Functions+         --+         -- $functions+       )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Text_EditorC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Utils+import Data.List++data KeyBinding  = KeyBinding KeyBindingKeySequence FunRef+data KeyFunc     = forall a. (Parent a TextEditor) => KeyFunc (Ref a -> Char -> IO ())+type KeyFuncPrim = CInt -> Ptr () -> IO ()++foreign import ccall "wrapper"+        mkKeyFuncPrim :: KeyFuncPrim -> IO (FunPtr KeyFuncPrim)++toKeyFuncPrim :: KeyFunc -> IO (FunPtr KeyFuncPrim)+toKeyFuncPrim (KeyFunc f) =+    mkKeyFuncPrim+     (+       \char' ptr -> do+         ref <- toRef ptr+         f ref (castCCharToChar $ fromIntegral char')+     )++keyFuncToFunRef :: KeyFunc -> IO FunRef+keyFuncToFunRef f = toKeyFuncPrim f >>= return . toFunRef++keyBindingsToArray :: [KeyBinding] -> IO (Ptr ())+keyBindingsToArray kbs =+  case kbs of+    (kb':kbs') -> foldl'+                  (+                    \p' kb'' -> do+                           curr <- ptrToKb kb''+                           p' >>= {#set Key_BindingC->next #} curr+                           return curr+                  )+                  (ptrToKb kb')+                  kbs'+    []       -> return nullPtr+  where+    extractCodes (KeyBindingKeySequence es key') =+      let keyNum = case key' of+            SpecialKeyType c' -> fromIntegral $ fromEnum c'+            NormalKeyType c' -> fromIntegral $ castCharToCChar c'+          stateCode = maybe 0 (fromIntegral . combine) es+      in+      (stateCode, keyNum)+    ptrToKb (KeyBinding kb fr) =+      let (sc,kn) = extractCodes kb+      in do+       p <- mallocBytes {#sizeof Key_BindingC #}+       {#set Key_BindingC->key #} p kn+       {#set Key_BindingC->state #} p sc+       {#set Key_BindingC->function #} p (castFunPtr  (fromFunRef fr))+       {#set Key_BindingC->next #} p nullPtr+       return p++arrayToKeyBindings :: Ptr () -> IO [KeyBinding]+arrayToKeyBindings p | p == nullPtr = return []+arrayToKeyBindings p =+  go [] p+  where+    go accum p' | p' == nullPtr = print (length accum) >> return accum+    go accum p' = do+      key' <- {#get Key_BindingC->key #} p' >>= return . fromIntegral+      state' <- {#get Key_BindingC->state #} p'+      function' <- {#get Key_BindingC->function #} p'+      next' <- {#get Key_BindingC->next #} p'+      free p'+      let skCandidates = filter (\sk -> fromEnum sk == key') allSpecialKeys+      let keyType = if (null skCandidates)+                    then (NormalKeyType $ castCCharToChar $ fromIntegral key')+                    else (SpecialKeyType $ head skCandidates)+      let evs = if (state' == 0)+                then Nothing+                else Just $ extract allEventStates state'+      let currKb = KeyBinding (KeyBindingKeySequence evs keyType) (toFunRef function')+      go (accum ++ [currKb]) next'++{# fun Fl_Text_Editor_New as textEditorNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Text_Editor_New_WithLabel as textEditorNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+textEditorNew :: Rectangle -> Maybe String -> IO (Ref TextEditor)+textEditorNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> textEditorNew' x_pos y_pos width height >>= toRef+        Just l -> textEditorNewWithLabel' x_pos y_pos width height l >>= toRef++{# fun unsafe Fl_Text_Editor_handle as handle' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Event ->  IO (Int))) => Op (Handle ()) TextEditor orig impl where+   runOp _ _ text_editor e = withRef text_editor $ \text_editorPtr -> handle' text_editorPtr (fromEnum e)+{# fun Fl_Text_Editor_Destroy as textEditorDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) TextEditor orig impl where+  runOp _ _ editor = swapRef editor $ \editorPtr -> do+    textEditorDestroy' editorPtr+    return nullPtr+{# fun unsafe Fl_Text_Editor_set_insert_mode as setInsertMode' { id `Ptr ()', cFromBool `Bool' } -> `()' #}+instance (impl ~ (Bool ->  IO ())) => Op (SetInsertMode ()) TextEditor orig impl where+   runOp _ _ text_editor b = withRef text_editor $ \text_editorPtr -> setInsertMode' text_editorPtr b+{# fun unsafe Fl_Text_Editor_insert_mode as insertMode' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ ( IO (Bool))) => Op (GetInsertMode ()) TextEditor orig impl where+   runOp _ _ text_editor = withRef text_editor $ \text_editorPtr -> insertMode' text_editorPtr+{# fun unsafe Fl_Text_Editor_add_default_key_bindings as addDefaultKeyBindings' { id `Ptr ()',id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO [KeyBinding])) => Op (GetDefaultKeyBindings ()) TextEditor orig impl where+  runOp _ _ text_editor = withRef text_editor $ \text_editorPtr -> do+    p' <- addDefaultKeyBindings' text_editorPtr nullPtr+    kbs <- arrayToKeyBindings p'+    return kbs+{# fun unsafe Fl_Text_Editor_replace_key_bindings as replaceKeyBindings' { id `Ptr ()', id `Ptr ()'} -> `()' #}+instance (impl ~ ([KeyBinding] -> IO ())) => Op (ReplaceKeyBindings ()) TextEditor orig impl where+  runOp _ _ text_editor kbs = withRef text_editor $ \text_editorPtr -> do+        p <- keyBindingsToArray kbs+        replaceKeyBindings' text_editorPtr p++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Group"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.TextDisplay"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.TextEditor"+--+-- @++-- $functions+-- @+-- destroy :: 'Ref' 'TextEditor' -> 'IO' ()+--+-- getDefaultKeyBindings :: 'Ref' 'TextEditor' -> 'IO' ['KeyBinding']+--+-- getInsertMode :: 'Ref' 'TextEditor' -> 'IO' 'Bool'+--+-- handle :: 'Ref' 'TextEditor' -> 'Event' -> 'IO' 'Int'+--+-- replaceKeyBindings :: 'Ref' 'TextEditor' -> ['KeyBinding'] -> 'IO' ()+--+-- setInsertMode :: 'Ref' 'TextEditor' -> 'Bool' -> 'IO' ()+--+-- @
+ src/Graphics/UI/FLTK/LowLevel/TextSelection.chs view
@@ -0,0 +1,73 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.TextSelection+       (+       -- * Hierarchy+       --+       -- $hierarchy++       -- * Functions+       --+       -- $functions+       )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Text_SelectionC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun unsafe Fl_Text_Selection_set as set' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance  ( impl ~ (BufferRange -> IO ())) => Op (Set ()) TextSelection orig impl where+  runOp _ _ text_selection (BufferRange (BufferOffset start'') (BufferOffset end'')) = withRef text_selection $ \text_selectionPtr -> set' text_selectionPtr start'' end''+{# fun unsafe Fl_Text_Selection_update as update' { id `Ptr ()',`Int',`Int',`Int' } -> `()' #}+instance  ( impl ~ (BufferOffset -> Int -> Int ->  IO ())) => Op (Update ()) TextSelection orig impl where+  runOp _ _ text_selection (BufferOffset pos) ndeleted ninserted = withRef text_selection $ \text_selectionPtr -> update' text_selectionPtr pos ndeleted ninserted+{# fun unsafe Fl_Text_Selection_start as start' { id `Ptr ()' } -> `Int' #}+instance  ( impl ~ IO BufferOffset) => Op (Start ()) TextSelection orig impl where+  runOp _ _ text_selection = withRef text_selection $ \text_selectionPtr -> start' text_selectionPtr >>= return . BufferOffset+{# fun unsafe Fl_Text_Selection_end as end' { id `Ptr ()' } -> `Int' #}+instance  ( impl ~ (IO (BufferOffset))) => Op (End ()) TextSelection orig impl where+  runOp _ _ text_selection = withRef text_selection $ \text_selectionPtr -> end' text_selectionPtr >>= return . BufferOffset+{# fun unsafe Fl_Text_Selection_selected as selected' { id `Ptr ()' } -> `Bool' cToBool #}+instance  ( impl ~ IO (Bool)) => Op (Selected ()) TextSelection orig impl where+  runOp _ _ text_selection = withRef text_selection $ \text_selectionPtr -> selected' text_selectionPtr+{# fun unsafe Fl_Text_Selection_set_selected as setSelected' { id `Ptr ()', cFromBool `Bool' } -> `()' #}+instance  ( impl ~ (Bool ->  IO ())) => Op (SetSelected ()) TextSelection orig impl where+  runOp _ _ text_selection b = withRef text_selection $ \text_selectionPtr -> setSelected' text_selectionPtr b+{# fun unsafe Fl_Text_Selection_includes as includes' { id `Ptr ()',`Int' } -> `Bool' cToBool #}+instance  ( impl ~ (BufferOffset ->  IO (Bool))) => Op (Includes ()) TextSelection orig impl where+  runOp _ _ text_selection (BufferOffset pos) = withRef text_selection $ \text_selectionPtr -> includes' text_selectionPtr pos+{# fun unsafe Fl_Text_Selection_position as position' { id `Ptr ()', id `Ptr CInt', id `Ptr CInt' } -> `Int' #}+instance  ( impl ~ (IO (Maybe BufferRange))) => Op (GetPosition ()) TextSelection orig impl where+  runOp _ _ text_selection =+    withRef text_selection $ \text_selectionPtr ->+    statusToBufferRange $ position' text_selectionPtr++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.TextSelection"+-- @++-- $functions+-- @+-- end :: 'Ref' 'TextSelection' -> 'IO' 'BufferOffset'+--+-- getPosition :: 'Ref' 'TextSelection' -> 'IO' ('Maybe' 'BufferRange')+--+-- includes :: 'Ref' 'TextSelection' -> 'BufferOffset' -> 'IO' 'Bool'+--+-- selected :: 'Ref' 'TextSelection' -> 'IO' 'Bool'+--+-- set :: 'Ref' 'TextSelection' -> 'BufferRange' -> 'IO' ()+--+-- setSelected :: 'Ref' 'TextSelection' -> 'Bool' -> 'IO' ()+--+-- start :: 'Ref' 'TextSelection' -> 'IO' 'BufferOffset'+--+-- update :: 'Ref' 'TextSelection' -> 'BufferOffset' -> 'Int' -> 'Int' -> 'IO' ()+-- @
+ src/Graphics/UI/FLTK/LowLevel/Timer.chs view
@@ -0,0 +1,101 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Timer+    (+     -- * Constructor+     timerNew,+     -- * Hierarchy+     --+     -- $hierarchy++     valueTimerNew,+     hiddenTimerNew+     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_TimerC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Timer_New as timerNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+timerNew :: Rectangle -> String -> IO (Ref Timer)+timerNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in timerNewWithLabel' x_pos y_pos width height l' >>= toRef+{# fun Fl_Value_Timer_New as valueTimerNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+valueTimerNew :: Rectangle -> String -> IO (Ref ValueTimer)+valueTimerNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in+    valueTimerNewWithLabel' x_pos y_pos width height l' >>= toRef++{# fun Fl_Hidden_Timer_New as hiddenTimerNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+hiddenTimerNew :: Rectangle -> String -> IO (Ref HiddenTimer)+hiddenTimerNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in+    hiddenTimerNewWithLabel' x_pos y_pos width height l' >>= toRef++{# fun Fl_Timer_Destroy as timerDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Timer orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+                                        timerDestroy' winPtr+                                        return nullPtr+{#fun Fl_Timer_handle as timerHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Timer orig impl where+  runOp _ _ timer event = withRef timer (\p -> timerHandle' p (fromIntegral . fromEnum $ event))+{# fun unsafe Fl_Timer_direction as direction' { id `Ptr ()' } -> `CChar' id #}+instance (impl ~ ( IO (CountDirection))) => Op (GetDirection ()) Timer orig impl where+  runOp _ _ adjuster = withRef adjuster $ \adjusterPtr -> direction' adjusterPtr >>= return . ccharToCountDirection+{# fun unsafe Fl_Timer_set_direction as setDirection' { id `Ptr ()',id `CChar' } -> `()' #}+instance (impl ~ (CountDirection ->  IO ())) => Op (SetDirection ()) Timer orig impl where+  runOp _ _ adjuster d = withRef adjuster $ \adjusterPtr -> setDirection' adjusterPtr (countDirectionToCChar d)+{# fun unsafe Fl_Timer_value as value' { id `Ptr ()' } -> `Double' #}+instance (impl ~ ( IO (Double))) => Op (GetValue ()) Timer orig impl where+  runOp _ _ adjuster = withRef adjuster $ \adjusterPtr -> value' adjusterPtr+{# fun unsafe Fl_Timer_set_value as setValue' { id `Ptr ()',`Double' } -> `()' #}+instance (impl ~ (Double ->  IO ())) => Op (SetValue ()) Timer orig impl where+  runOp _ _ adjuster value = withRef adjuster $ \adjusterPtr -> setValue' adjusterPtr value+{# fun unsafe Fl_Timer_suspended as suspended' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ ( IO (Bool))) => Op (GetSuspended ()) Timer orig impl where+  runOp _ _ adjuster = withRef adjuster $ \adjusterPtr -> suspended' adjusterPtr+{# fun unsafe Fl_Timer_set_suspended as setSuspended' { id `Ptr ()', cFromBool `Bool' } -> `()' #}+instance (impl ~ (Bool ->  IO ())) => Op (SetSuspended ()) Timer orig impl where+  runOp _ _ adjuster s = withRef adjuster $ \adjusterPtr -> setSuspended' adjusterPtr s++-- $functions+-- @+--+-- destroy :: 'Ref' 'Timer' -> 'IO' ()+--+-- getDirection :: 'Ref' 'Timer' -> 'IO' 'CountDirection'+--+-- getSuspended :: 'Ref' 'Timer' -> 'IO' 'Bool'+--+-- getValue :: 'Ref' 'Timer' -> 'IO' 'Double'+--+-- handle :: 'Ref' 'Timer' -> 'Event' -> 'IO' 'Int'+--+-- setDirection :: 'Ref' 'Timer' -> 'CountDirection' -> 'IO' ()+--+-- setSuspended :: 'Ref' 'Timer' -> 'Bool' -> 'IO' ()+--+-- setValue :: 'Ref' 'Timer' -> 'Double' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Timer"+-- @
+ src/Graphics/UI/FLTK/LowLevel/ToggleButton.chs view
@@ -0,0 +1,57 @@+{-# LANGUAGE CPP, EmptyDataDecls, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.ToggleButton+    (+     toggleButtonNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Toggle_ButtonC.h"+#include "Fl_WidgetC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Toggle_Button_New as widgetNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Toggle_Button_New_WithLabel as widgetNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+toggleButtonNew :: Rectangle -> Maybe String -> IO (Ref ToggleButton)+toggleButtonNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> widgetNew' x_pos y_pos width height >>= toRef+        Just l -> widgetNewWithLabel' x_pos y_pos width height l >>= toRef++{# fun Fl_Toggle_Button_Destroy as widgetDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) ToggleButton orig impl where+  runOp _ _ button = swapRef button $+                    \buttonPtr ->+                     widgetDestroy' buttonPtr >>+                     return nullPtr++-- $functions+-- @+--+-- destroy :: 'Ref' 'ToggleButton' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Button"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.ToggleButton"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Tree.chs view
@@ -0,0 +1,657 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Tree+  (+    treeNew+    -- * Hierarchy+    --+    -- $hierarchy++    -- * Functions+    --+    -- $functions+  )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_TreeC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.TreeItem+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch+import qualified Data.ByteString.Char8 as C++{# fun Fl_Tree_New as treeNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Tree_New_WithLabel as treeNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+treeNew :: Rectangle -> Maybe String -> IO (Ref Tree)+treeNew rectangle l' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> treeNew' x_pos y_pos width height >>=+                             toRef+        Just l -> treeNewWithLabel' x_pos y_pos width height l >>=+                             toRef+{# fun Fl_Tree_Destroy as treeDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Tree orig impl where+  runOp _ _ tree = swapRef tree $ \treePtr -> do+    treeDestroy' treePtr+    return nullPtr++{# fun unsafe Fl_Tree_handle as handle' { id `Ptr ()', cFromEnum `Event' } -> `Int' #}+instance (impl ~ (Event ->  IO (Int)) ) => Op (Handle ()) Tree orig impl where+  runOp _ _ tree e = withRef tree $ \treePtr -> handle' treePtr e+{# fun unsafe Fl_Tree_draw as draw' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ()) ) => Op (Draw ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> draw' treePtr+{# fun unsafe Fl_Tree_show_self as showSelf' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ()) ) => Op (ShowSelf ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> showSelf' treePtr+{# fun unsafe Fl_Tree_root_label as rootLabel' { id `Ptr ()',`String' } -> `()' #}+instance (impl ~ (String ->  IO ()) ) => Op (RootLabel ()) Tree orig impl where+  runOp _ _ tree new_label = withRef tree $ \treePtr -> rootLabel' treePtr new_label+{# fun unsafe Fl_Tree_root as root' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref TreeItem))) ) => Op (Root ()) Tree orig impl where+  runOp _ _  tree = withRef tree $ \treePtr -> root' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_add as add' { id `Ptr ()',`String' } -> `Ptr ()' id #}+{# fun unsafe Fl_Tree_add_with_item_name as addWithItemName' { id `Ptr ()',id `Ptr ()',`String' } -> `Ptr ()' id #}+instance (impl ~ (String ->  IO (Maybe (Ref TreeItem)))) => Op (Add ()) Tree orig impl where+  runOp _ _  tree path' = withRef tree $ \treePtr -> add' treePtr path' >>= toMaybeRef+instance (Parent a TreeItem, impl ~ (String -> Ref a -> IO (Maybe (Ref TreeItem)))) => Op (AddAt ()) Tree orig impl where+  runOp _ _ tree path' item' =+    withRef tree  $ \treePtr ->+    withRef item' $ \itemPtr ->+    addWithItemName' treePtr itemPtr path' >>= toMaybeRef+{# fun unsafe Fl_Tree_insert_above as insertAbove' { id `Ptr ()',id `Ptr ()',`String' } -> `Ptr ()' id #}+instance (Parent a TreeItem, impl ~ (Ref a -> String ->  IO (Maybe (Ref a)))) => Op (InsertAbove ()) Tree orig impl where+  runOp _ _  tree above name = withRef tree $ \treePtr -> withRef above $ \abovePtr -> insertAbove' treePtr abovePtr name >>= toMaybeRef+{# fun unsafe Fl_Tree_insert as insert' { id `Ptr ()',id `Ptr ()',`String',`Int' } -> `Ptr ()' id #}+instance (Parent a TreeItem, impl ~ (Ref a -> String -> Int ->  IO (Maybe (Ref a)))) => Op (Insert ()) Tree orig impl where+  runOp _ _ tree item name pos = withRef tree $ \treePtr -> withRef item $ \itemPtr -> insert' treePtr itemPtr name pos >>= toMaybeRef+{# fun unsafe Fl_Tree_remove as remove' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+instance (impl ~ (Ref TreeItem  ->  IO (Either TreeItemNotFound ())) ) => Op (Remove ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> do+    status' <- remove' treePtr itemPtr+    if (status' == (-1)) then (return $ Left TreeItemNotFound) else (return $ Right ())+{# fun unsafe Fl_Tree_clear as clear' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ()) ) => Op (Clear ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> clear' treePtr+{# fun unsafe Fl_Tree_clear_children as clearChildren' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a TreeItem, impl ~ (Ref a ->  IO ()) ) => Op (ClearChildren ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> clearChildren' treePtr itemPtr+{# fun unsafe Fl_Tree_find_item as findItem' { id `Ptr ()',`String' } -> `Ptr ()' id #}+instance (impl ~ (String ->  IO (Maybe (Ref TreeItem))) ) => Op (FindItem ()) Tree orig impl where+  runOp _ _ tree path = withRef tree $ \treePtr -> findItem' treePtr path >>= toMaybeRef+{# fun unsafe Fl_Tree_item_pathname as itemPathname' { id `Ptr ()', id `Ptr CChar', `Int', id `Ptr ()'} -> `Int' #}+instance (Parent a TreeItem, impl ~ (Ref a ->  IO (Maybe String)) ) => Op (ItemPathname ()) Tree orig impl where+  runOp _ _ tree item =+    withRef tree $ \treePtr ->+    withRef item $ \itemPtr ->+    allocaBytes oneKb $ \pathPtr -> do+    retVal' <- itemPathname' treePtr pathPtr oneKb itemPtr+    if retVal' < 0+      then return Nothing+      else do+       b' <- C.packCString (castPtr pathPtr)+       return $ Just (C.unpack b')+{# fun unsafe Fl_Tree_item_clicked as itemClicked' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref TreeItem))) ) => Op (ItemClicked ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> itemClicked' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_first as first' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref TreeItem))) ) => Op (GetFirst ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> first' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_first_visible as firstVisible' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref TreeItem))) ) => Op (FirstVisible ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> firstVisible' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_next as next' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref TreeItem))) ) => Op (Next ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> next' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_next_with_item as nextWithItem' { id `Ptr ()',id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (Ref TreeItem  ->  IO (Maybe (Ref TreeItem))) ) => Op (NextWithItem ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> nextWithItem' treePtr itemPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_prev as prev' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref TreeItem))) ) => Op (Prev ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> prev' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_prev_with_item as prevWithItem' { id `Ptr ()',id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (Ref TreeItem  ->  IO (Maybe (Ref TreeItem))) ) => Op (PrevWithItem ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> prevWithItem' treePtr itemPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_last as last' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref TreeItem))) ) => Op (GetLast ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> last' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_last_visible as lastVisible' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref TreeItem))) ) => Op (LastVisible ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> lastVisible' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_first_selected_item as firstSelectedItem' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref TreeItem))) ) => Op (FirstSelectedItem ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> firstSelectedItem' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_next_selected_item as nextSelectedItem' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref TreeItem))) ) => Op (NextSelectedItem ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> nextSelectedItem' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_next_selected_item_with_item as nextSelectedItemWithItem' { id `Ptr ()',id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (Ref TreeItem  ->  IO (Maybe (Ref TreeItem))) ) => Op (NextSelectedItemWithItem ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> nextSelectedItemWithItem' treePtr itemPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_open_with_item as openWithItem' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+{# fun unsafe Fl_Tree_open_with_item_docallback as openWithItemDocallback' { id `Ptr ()',id `Ptr ()', cFromBool `Bool' } -> `Int' #}+{# fun unsafe Fl_Tree_open_with_path as openWithPath' { id `Ptr ()',`String' } -> `Int' #}+{# fun unsafe Fl_Tree_open_with_path_docallback as openWithPathDocallback' { id `Ptr ()', `String', cFromBool `Bool' } -> `Int' #}+instance (impl ~ (TreeItemLocator -> IO ()) ) => Op (Open ()) Tree orig impl where+  runOp _ _ tree_item locator' =+    withRef tree_item $ \tree_itemPtr ->+    case locator' of+      TreeItemPointerLocator (TreeItemPointer itemRef) -> withRef itemRef $ \itemRefPtr -> openWithItem' tree_itemPtr itemRefPtr >> return ()+      TreeItemNameLocator (TreeItemName n') -> openWithPath' tree_itemPtr n' >> return ()+instance  (impl ~ (TreeItemLocator -> Bool -> IO ())) => Op (OpenAndCallback ()) Tree orig impl where+  runOp _ _ tree_item locator' docallback' =+    withRef tree_item $ \tree_itemPtr ->+    case locator' of+      TreeItemPointerLocator (TreeItemPointer itemRef) -> withRef itemRef $ \itemRefPtr -> openWithItemDocallback' tree_itemPtr itemRefPtr docallback' >> return ()+      TreeItemNameLocator (TreeItemName n') -> openWithPathDocallback' tree_itemPtr n' docallback' >> return ()+{# fun unsafe Fl_Tree_open_toggle as openToggle' { id `Ptr ()',id `Ptr ()' } -> `()' #}+{# fun unsafe Fl_Tree_open_toggle_with_docallback as openToggleWithDocallback' { id `Ptr ()',id `Ptr ()', cFromBool `Bool' } -> `()' #}+instance (impl ~ (Ref TreeItem  ->  IO ()) ) => Op (OpenToggle ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> openToggle' treePtr itemPtr+instance (impl ~ (Ref TreeItem  -> Bool ->  IO ()) ) => Op (OpenToggleAndCallback ()) Tree orig impl where+  runOp _ _ tree item docallback = withRef tree $ \treePtr -> withRef item $ \itemPtr -> openToggleWithDocallback' treePtr itemPtr docallback+{# fun unsafe Fl_Tree_close_with_item as closeWithItem' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+{# fun unsafe Fl_Tree_close_with_item_docallback as closeWithItemDocallback' { id `Ptr ()',id `Ptr ()', cFromBool `Bool' } -> `Int' #}+{# fun unsafe Fl_Tree_close_with_path as closeWithPath' { id `Ptr ()',`String' } -> `Int' #}+{# fun unsafe Fl_Tree_close_with_path_docallback as closeWithPathDocallback' { id `Ptr ()',`String', cFromBool `Bool' } -> `Int' #}+instance (impl ~ (TreeItemLocator -> IO ()) ) => Op (Close ()) Tree orig impl where+  runOp _ _ tree_item locator' =+    withRef tree_item $ \tree_itemPtr ->+    case locator' of+      TreeItemPointerLocator (TreeItemPointer itemRef) -> withRef itemRef $ \itemRefPtr -> closeWithItem' tree_itemPtr itemRefPtr >> return ()+      TreeItemNameLocator (TreeItemName n') -> closeWithPath' tree_itemPtr n' >> return ()+instance  (impl ~ (TreeItemLocator -> Bool -> IO ())) => Op (CloseAndCallback ()) Tree orig impl where+  runOp _ _ tree_item locator' docallback' =+    withRef tree_item $ \tree_itemPtr ->+    case locator' of+      TreeItemPointerLocator (TreeItemPointer itemRef) -> withRef itemRef $ \itemRefPtr -> closeWithItemDocallback' tree_itemPtr itemRefPtr docallback' >> return ()+      TreeItemNameLocator (TreeItemName n') -> closeWithPathDocallback' tree_itemPtr n' docallback' >> return ()+{# fun unsafe Fl_Tree_is_open_with_item as isOpenWithItem' { id `Ptr ()',id `Ptr ()' } -> `Bool' cToBool #}+{# fun unsafe Fl_Tree_is_open_with_path as isOpenWithPath' { id `Ptr ()',`String' } -> `Bool' cToBool  #}+instance (impl ~ (TreeItemLocator ->  IO (Bool)) ) => Op (IsOpen ()) Tree orig impl where+  runOp _ _ tree locator' = withRef tree $ \treePtr ->+    case locator' of+      TreeItemPointerLocator (TreeItemPointer r') -> withRef r' $ \r'Ptr -> isOpenWithItem' treePtr r'Ptr+      TreeItemNameLocator (TreeItemName n') ->+        isOpenWithPath' treePtr n'+{# fun unsafe Fl_Tree_is_close_with_item as isCloseWithItem' { id `Ptr ()',id `Ptr ()' } -> `Bool' cToBool #}+{# fun unsafe Fl_Tree_is_close_with_path as isCloseWithPath' { id `Ptr ()',`String' } -> `Bool' cToBool  #}+instance (impl ~ (TreeItemLocator ->  IO (Bool)) ) => Op (IsClose ()) Tree orig impl where+  runOp _ _ tree locator' = withRef tree $ \treePtr ->+    case locator' of+      TreeItemPointerLocator (TreeItemPointer r') -> withRef r' $ \r'Ptr -> isCloseWithItem' treePtr r'Ptr+      TreeItemNameLocator (TreeItemName n') -> isCloseWithPath' treePtr n'+{# fun unsafe Fl_Tree_select_with_item as selectWithItem' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+{# fun unsafe Fl_Tree_select_with_item_docallback as selectWithItemDocallback' { id `Ptr ()',id `Ptr ()',cFromBool `Bool' } -> `Int' #}+{# fun unsafe Fl_Tree_select_with_path as selectWithPath' { id `Ptr ()',`String' } -> `Int' #}+{# fun unsafe Fl_Tree_select_with_path_docallback as selectWithPathDocallback' { id `Ptr ()',`String',cFromBool `Bool' } -> `Int' #}+instance (impl ~ (TreeItemLocator  ->  IO (Int)) ) => Op (Select ()) Tree orig impl where+  runOp _ _ tree locator' =+    withRef tree $ \treePtr ->+    case locator' of+      TreeItemPointerLocator (TreeItemPointer r') -> withRef r' $ \r'Ptr -> selectWithItem' treePtr r'Ptr+      TreeItemNameLocator (TreeItemName n') -> selectWithPath' treePtr n'+instance  (impl ~ (TreeItemLocator -> Bool -> IO ())) => Op (SelectAndCallback ()) Tree orig impl where+  runOp _ _ tree_item locator' docallback' =+    withRef tree_item $ \tree_itemPtr ->+    case locator' of+      TreeItemPointerLocator (TreeItemPointer itemRef) -> withRef itemRef $ \itemRefPtr -> selectWithItemDocallback' tree_itemPtr itemRefPtr docallback' >> return ()+      TreeItemNameLocator (TreeItemName n') -> selectWithPathDocallback' tree_itemPtr n' docallback' >> return ()+{# fun unsafe Fl_Tree_select_toggle as selectToggle' { id `Ptr ()',id `Ptr ()' } -> `()' #}+{# fun unsafe Fl_Tree_select_toggle_with_docallback as selectToggleWithDocallback' { id `Ptr ()',id `Ptr ()',cFromBool `Bool' } -> `()' #}+instance (impl ~ (Ref TreeItem  ->  IO ()) ) => Op (SelectToggle ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> selectToggle' treePtr itemPtr+instance (impl ~ (Ref TreeItem  -> Bool ->  IO ()) ) => Op (SelectToggleAndCallback ()) Tree orig impl where+  runOp _ _ tree item docallback = withRef tree $ \treePtr -> withRef item $ \itemPtr -> selectToggleWithDocallback' treePtr itemPtr docallback+{# fun unsafe Fl_Tree_deselect_with_item as deselectWithItem' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+{# fun unsafe Fl_Tree_deselect_with_item_docallback as deselectWithItemDocallback' { id `Ptr ()',id `Ptr ()',cFromBool `Bool' } -> `Int' #}+{# fun unsafe Fl_Tree_deselect_with_path as deselectWithPath' { id `Ptr ()', `String'} -> `Int' #}+{# fun unsafe Fl_Tree_deselect_with_path_docallback as deselectWithPathDocallback' { id `Ptr ()',`String',cFromBool `Bool' } -> `Int' #}+instance (impl ~ (TreeItemLocator  ->  IO (Int)) ) => Op (Deselect ()) Tree orig impl where+  runOp _ _ tree locator' =+    withRef tree $ \treePtr ->+    case locator' of+      TreeItemPointerLocator (TreeItemPointer r') -> withRef r' $ \r'Ptr -> deselectWithItem' treePtr r'Ptr+      TreeItemNameLocator (TreeItemName n') -> deselectWithPath' treePtr n'+instance  (impl ~ (TreeItemLocator -> Bool -> IO ())) => Op (DeselectAndCallback ()) Tree orig impl where+  runOp _ _ tree_item locator' docallback' =+    withRef tree_item $ \tree_itemPtr ->+    case locator' of+      TreeItemPointerLocator (TreeItemPointer itemRef) -> withRef itemRef $ \itemRefPtr -> deselectWithItemDocallback' tree_itemPtr itemRefPtr docallback' >> return ()+      TreeItemNameLocator (TreeItemName n') -> deselectWithPathDocallback' tree_itemPtr n' docallback' >> return ()+{# fun unsafe Fl_Tree_select_only as selectOnly' { id `Ptr ()',id `Ptr ()' } -> `()' #}+{# fun unsafe Fl_Tree_select_only_with_docallback as selectOnlyWithDocallback' { id `Ptr ()',id `Ptr ()', cFromBool `Bool' } -> `()' #}+instance (impl ~ (Ref TreeItem  ->  IO ()) ) => Op (SelectOnly ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> selectOnly' treePtr itemPtr+instance (impl ~ (Ref TreeItem  -> Bool ->  IO ()) ) => Op (SelectOnlyAndCallback ()) Tree orig impl where+  runOp _ _ tree item docallback = withRef tree $ \treePtr -> withRef item $ \itemPtr -> selectOnlyWithDocallback' treePtr itemPtr docallback+{# fun unsafe Fl_Tree_select_all as selectAll' { id `Ptr ()',id `Ptr ()' } -> `()' #}+{# fun unsafe Fl_Tree_select_all_with_docallback as selectAllWithDocallback' { id `Ptr ()',id `Ptr ()',cFromBool `Bool' } -> `()' #}+instance (impl ~ (Ref TreeItem  ->  IO ()) ) => Op (SelectAll ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> selectAll' treePtr itemPtr+instance (impl ~ (Ref TreeItem  -> Bool ->  IO ()) ) => Op (SelectAllAndCallback ()) Tree orig impl where+  runOp _ _ tree item docallback = withRef tree $ \treePtr -> withRef item $ \itemPtr -> selectAllWithDocallback' treePtr itemPtr docallback+{# fun unsafe Fl_Tree_set_item_focus as setItemFocus' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (impl ~ (Ref TreeItem  ->  IO ()) ) => Op (SetItemFocus ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> setItemFocus' treePtr itemPtr+{# fun unsafe Fl_Tree_get_item_focus as getItemFocus' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref TreeItem))) ) => Op (GetItemFocus ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> getItemFocus' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_is_selected_with_item as isSelectedWithItem' { id `Ptr ()',id `Ptr ()' } -> `Bool' cToBool #}+{# fun unsafe Fl_Tree_is_selected_with_path as isSelectedWithPath' { id `Ptr ()',`String' } -> `Bool' cToBool #}+instance (impl ~ (TreeItemLocator ->  IO (Bool)) ) => Op (IsSelectedWithItem ()) Tree orig impl where+  runOp _ _ tree locator' = withRef tree $ \treePtr ->+    case locator' of+      TreeItemPointerLocator (TreeItemPointer item) -> withRef item $ \itemPtr -> isSelectedWithItem' treePtr itemPtr+      TreeItemNameLocator (TreeItemName path) -> isSelectedWithPath' treePtr path+{# fun unsafe Fl_Tree_item_labelfont as itemLabelfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ ( IO (Font)) ) => Op (GetItemLabelfont ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> itemLabelfont' treePtr+{# fun unsafe Fl_Tree_set_item_labelfont as itemSetLabelfont' { id `Ptr ()',cFromFont `Font' } -> `()' #}+instance (impl ~ (Font ->  IO ()) ) => Op (SetItemLabelfont ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> itemSetLabelfont' treePtr val+{# fun unsafe Fl_Tree_item_labelsize as itemLabelsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ ( IO (FontSize)) ) => Op (GetItemLabelsize ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> itemLabelsize' treePtr >>= return . FontSize+{# fun unsafe Fl_Tree_set_item_labelsize as itemSetLabelsize' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ()) ) => Op (SetItemLabelsize ()) Tree orig impl where+  runOp _ _ tree (FontSize val) = withRef tree $ \treePtr -> itemSetLabelsize' treePtr val+{# fun unsafe Fl_Tree_item_labelfgcolor as itemLabelfgcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color)) ) => Op (GetItemLabelfgcolor ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> itemLabelfgcolor' treePtr+{# fun unsafe Fl_Tree_set_item_labelfgcolor as setItemLabelfgcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ()) ) => Op (SetItemLabelfgcolor ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setItemLabelfgcolor' treePtr val+{# fun unsafe Fl_Tree_item_labelbgcolor as itemLabelbgcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color)) ) => Op (GetItemLabelbgcolor ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> itemLabelbgcolor' treePtr+{# fun unsafe Fl_Tree_set_item_labelbgcolor as setItemLabelbgcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ()) ) => Op (SetItemLabelbgcolor ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setItemLabelbgcolor' treePtr val+{# fun unsafe Fl_Tree_connectorcolor as connectorcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color)) ) => Op (GetConnectorcolor ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> connectorcolor' treePtr+{# fun unsafe Fl_Tree_set_connectorcolor as setConnectorcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ()) ) => Op (SetConnectorcolor ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setConnectorcolor' treePtr val+{# fun unsafe Fl_Tree_marginleft as marginleft' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int)) ) => Op (GetMarginleft ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> marginleft' treePtr+{# fun unsafe Fl_Tree_set_marginleft as setMarginleft' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ()) ) => Op (SetMarginleft ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setMarginleft' treePtr val+{# fun unsafe Fl_Tree_margintop as margintop' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int)) ) => Op (GetMargintop ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> margintop' treePtr+{# fun unsafe Fl_Tree_set_margintop as setMargintop' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ()) ) => Op (SetMargintop ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setMargintop' treePtr val+{# fun unsafe Fl_Tree_linespacing as linespacing' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int)) ) => Op (GetLinespacing ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> linespacing' treePtr+{# fun unsafe Fl_Tree_set_linespacing as setLinespacing' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ()) ) => Op (SetLinespacing ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setLinespacing' treePtr val+{# fun unsafe Fl_Tree_openchild_marginbottom as openchildMarginbottom' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int)) ) => Op (GetOpenchildMarginbottom ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> openchildMarginbottom' treePtr+{# fun unsafe Fl_Tree_set_openchild_marginbottom as setOpenchildMarginbottom' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ()) ) => Op (SetOpenchildMarginbottom ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setOpenchildMarginbottom' treePtr val+{# fun unsafe Fl_Tree_usericonmarginleft as usericonmarginleft' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int)) ) => Op (GetUsericonmarginleft ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> usericonmarginleft' treePtr+{# fun unsafe Fl_Tree_set_usericonmarginleft as setUsericonmarginleft' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ()) ) => Op (SetUsericonmarginleft ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setUsericonmarginleft' treePtr val+{# fun unsafe Fl_Tree_labelmarginleft as labelmarginleft' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int)) ) => Op (GetLabelmarginleft ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> labelmarginleft' treePtr+{# fun unsafe Fl_Tree_set_labelmarginleft as setLabelmarginleft' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ()) ) => Op (SetLabelmarginleft ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setLabelmarginleft' treePtr val+{# fun unsafe Fl_Tree_connectorwidth as connectorwidth' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int)) ) => Op (GetConnectorwidth ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> connectorwidth' treePtr+{# fun unsafe Fl_Tree_set_connectorwidth as setConnectorwidth' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ()) ) => Op (SetConnectorwidth ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setConnectorwidth' treePtr val+{# fun unsafe Fl_Tree_usericon as usericon' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref Image))) ) => Op (GetUsericon ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> usericon' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_set_usericon as setUsericon' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Image, impl ~ (Ref a  ->  IO ()) ) => Op (SetUsericon ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> withRef val $ \valPtr -> setUsericon' treePtr valPtr+{# fun unsafe Fl_Tree_openicon as openicon' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref Image))) ) => Op (GetOpenicon ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> openicon' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_set_openicon as setOpenicon' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Image , impl ~ (Ref a  ->  IO ()) ) => Op (SetOpenicon ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> withRef val $ \valPtr -> setOpenicon' treePtr valPtr+{# fun unsafe Fl_Tree_closeicon as closeicon' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref Image))) ) => Op (GetCloseicon ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> closeicon' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_set_closeicon as setCloseicon' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Image, impl ~ (Ref a  ->  IO ()) ) => Op (SetCloseicon ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> withRef val $ \valPtr -> setCloseicon' treePtr valPtr+{# fun unsafe Fl_Tree_showcollapse as showcollapse' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int)) ) => Op (GetShowcollapse ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> showcollapse' treePtr+{# fun unsafe Fl_Tree_set_showcollapse as setShowcollapse' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ()) ) => Op (SetShowcollapse ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setShowcollapse' treePtr val+{# fun unsafe Fl_Tree_showroot as showroot' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ ( IO (Bool)) ) => Op (GetShowroot ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> showroot' treePtr+{# fun unsafe Fl_Tree_set_showroot as setShowroot' { id `Ptr ()', cFromBool `Bool' } -> `()' #}+instance (impl ~ (Bool ->  IO ()) ) => Op (SetShowroot ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setShowroot' treePtr val+{# fun unsafe Fl_Tree_connectorstyle as connectorstyle' { id `Ptr ()' } -> `TreeConnector' cToEnum #}+instance (impl ~ ( IO (TreeConnector)) ) => Op (GetConnectorstyle ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> connectorstyle' treePtr+{# fun unsafe Fl_Tree_set_connectorstyle as setConnectorstyle' { id `Ptr ()', cFromEnum `TreeConnector' } -> `()' #}+instance (impl ~ (TreeConnector ->  IO ()) ) => Op (SetConnectorstyle ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setConnectorstyle' treePtr val+{# fun unsafe Fl_Tree_sortorder as sortorder' { id `Ptr ()' } -> `TreeSort' cToEnum #}+instance (impl ~ ( IO (TreeSort)) ) => Op (GetSortorder ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> sortorder' treePtr+{# fun unsafe Fl_Tree_set_sortorder as setSortorder' { id `Ptr ()', cFromEnum `TreeSort' } -> `()' #}+instance (impl ~ (TreeSort ->  IO ()) ) => Op (SetSortorder ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setSortorder' treePtr val+{# fun unsafe Fl_Tree_selectbox as selectbox' { id `Ptr ()' } -> `Boxtype' cToEnum #}+instance (impl ~ ( IO (Boxtype)) ) => Op (GetSelectbox ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> selectbox' treePtr+{# fun unsafe Fl_Tree_set_selectbox as setSelectbox' { id `Ptr ()',cFromEnum `Boxtype' } -> `()' #}+instance (impl ~ (Boxtype ->  IO ()) ) => Op (SetSelectbox ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setSelectbox' treePtr val+{# fun unsafe Fl_Tree_selectmode as selectmode' { id `Ptr ()' } -> `TreeSelect' cToEnum #}+instance (impl ~ ( IO (TreeSelect)) ) => Op (Selectmode ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> selectmode' treePtr+{# fun unsafe Fl_Tree_set_selectmode as setSelectmode' { id `Ptr ()', cFromEnum `TreeSelect' } -> `()' #}+instance (impl ~ (TreeSelect ->  IO ()) ) => Op (SetSelectmode ()) Tree orig impl where+  runOp _ _ tree val = withRef tree $ \treePtr -> setSelectmode' treePtr val+{# fun unsafe Fl_Tree_displayed as displayed' { id `Ptr ()',id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (Ref TreeItem  ->  IO (Bool)) ) => Op (Displayed ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> displayed' treePtr itemPtr+{# fun unsafe Fl_Tree_show_item_with_yoff as showItemWithYoff' { id `Ptr ()',id `Ptr ()',`Int' } -> `()' #}+{# fun unsafe Fl_Tree_show_item as showItem' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (impl ~ (Ref TreeItem  -> Maybe Int ->  IO ()) ) => Op (ShowItemWithYoff ()) Tree orig impl where+  runOp _ _ tree item yoff =+    withRef tree $ \treePtr ->+    withRef item $ \itemPtr ->+    case yoff of+      Just y' -> showItemWithYoff' treePtr itemPtr y'+      Nothing -> showItem' treePtr itemPtr+{# fun unsafe Fl_Tree_show_item_top as showItemTop' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (impl ~ (Ref TreeItem  ->  IO ()) ) => Op (ShowItemTop ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> showItemTop' treePtr itemPtr+{# fun unsafe Fl_Tree_show_item_middle as showItemMiddle' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (impl ~ (Ref TreeItem  ->  IO ()) ) => Op (ShowItemMiddle ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> showItemMiddle' treePtr itemPtr+{# fun unsafe Fl_Tree_show_item_bottom as showItemBottom' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (impl ~ (Ref TreeItem  ->  IO ()) ) => Op (ShowItemBottom ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> showItemBottom' treePtr itemPtr+{# fun unsafe Fl_Tree_display as display' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (impl ~ (Ref TreeItem  ->  IO ()) ) => Op (Display ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> display' treePtr itemPtr+{# fun unsafe Fl_Tree_vposition as vposition' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int)) ) => Op (GetVposition ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> vposition' treePtr+{# fun unsafe Fl_Tree_set_vposition as setVposition' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ()) ) => Op (SetVposition ()) Tree orig impl where+  runOp _ _ tree pos = withRef tree $ \treePtr -> setVposition' treePtr pos+{# fun unsafe Fl_Tree_is_scrollbar as isScrollbar' { id `Ptr ()',id `Ptr ()' } -> `Bool' cToBool #}+instance (Parent a Widget, impl ~ (Ref a  ->  IO (Bool)) ) => Op (IsScrollbar ()) Tree orig impl where+  runOp _ _ tree w = withRef tree $ \treePtr -> withRef w $ \wPtr -> isScrollbar' treePtr wPtr+{# fun unsafe Fl_Tree_scrollbar_size as scrollbarSize' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int)) ) => Op (GetScrollbarSize ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> scrollbarSize' treePtr+{# fun unsafe Fl_Tree_set_scrollbar_size as setScrollbarSize' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ()) ) => Op (SetScrollbarSize ()) Tree orig impl where+  runOp _ _ tree size = withRef tree $ \treePtr -> setScrollbarSize' treePtr size+{# fun unsafe Fl_Tree_is_vscroll_visible as isVscrollVisible' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ ( IO (Bool)) ) => Op (IsVscrollVisible ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> isVscrollVisible' treePtr+{# fun unsafe Fl_Tree_set_callback_item as setCallbackItem' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a TreeItem, impl ~ (Ref a ->  IO ()) ) => Op (SetCallbackItem ()) Tree orig impl where+  runOp _ _ tree item = withRef tree $ \treePtr -> withRef item $ \itemPtr -> setCallbackItem' treePtr itemPtr+{# fun unsafe Fl_Tree_callback_item as callbackItem' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref TreeItem))) ) => Op (GetCallbackItem ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> callbackItem' treePtr >>= toMaybeRef+{# fun unsafe Fl_Tree_set_callback_reason as setCallbackReason' { id `Ptr ()', cFromEnum `TreeReasonType' } -> `()' #}+instance (impl ~ (TreeReasonType ->  IO ()) ) => Op (SetCallbackReason ()) Tree orig impl where+  runOp _ _ tree reason = withRef tree $ \treePtr -> setCallbackReason' treePtr reason+{# fun unsafe Fl_Tree_callback_reason as callbackReason' { id `Ptr ()' } -> `TreeReasonType' cToEnum #}+instance (impl ~ ( IO (TreeReasonType)) ) => Op (GetCallbackReason ()) Tree orig impl where+  runOp _ _ tree = withRef tree $ \treePtr -> callbackReason' treePtr++-- $functions+-- @+--+-- add :: 'Ref' 'Tree' -> 'String' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- addAt:: ('Parent' a 'TreeItem') => 'Ref' 'Tree' -> 'String' -> 'Ref' a -> 'IO' ('Maybe' ('Ref' 'TreeItem')))+--+-- clear :: 'Ref' 'Tree' -> 'IO' ()+--+-- clearChildren:: ('Parent' a 'TreeItem') => 'Ref' 'Tree' -> 'Ref' a -> 'IO' ())+--+-- close :: 'Ref' 'Tree' -> 'TreeItemLocator' -> 'IO' ()+--+-- closeAndCallback :: 'Ref' 'Tree' -> 'TreeItemLocator' -> 'Bool' -> 'IO' ()+--+-- deselect :: 'Ref' 'Tree' -> 'TreeItemLocator' -> 'IO' 'Int'+--+-- deselectAndCallback :: 'Ref' 'Tree' -> 'TreeItemLocator' -> 'Bool' -> 'IO' ()+--+-- destroy :: 'Ref' 'Tree' -> 'IO' ()+--+-- display :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ()+--+-- displayed :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' 'Bool'+--+-- draw :: 'Ref' 'Tree' -> 'IO' ()+--+-- findItem :: 'Ref' 'Tree' -> 'String' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- firstSelectedItem :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- firstVisible :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- getCallbackItem :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- getCallbackReason :: 'Ref' 'Tree' -> 'IO' 'TreeReasonType'+--+-- getCloseicon :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'Image'))+--+-- getConnectorcolor :: 'Ref' 'Tree' -> 'IO' 'Color'+--+-- getConnectorstyle :: 'Ref' 'Tree' -> 'IO' 'TreeConnector'+--+-- getConnectorwidth :: 'Ref' 'Tree' -> 'IO' 'Int'+--+-- getFirst :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- getItemFocus :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- getItemLabelbgcolor :: 'Ref' 'Tree' -> 'IO' 'Color'+--+-- getItemLabelfgcolor :: 'Ref' 'Tree' -> 'IO' 'Color'+--+-- getItemLabelfont :: 'Ref' 'Tree' -> 'IO' 'Font'+--+-- getItemLabelsize :: 'Ref' 'Tree' -> 'IO' 'FontSize'+--+-- getLabelmarginleft :: 'Ref' 'Tree' -> 'IO' 'Int'+--+-- getLast :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- getLinespacing :: 'Ref' 'Tree' -> 'IO' 'Int'+--+-- getMarginleft :: 'Ref' 'Tree' -> 'IO' 'Int'+--+-- getMargintop :: 'Ref' 'Tree' -> 'IO' 'Int'+--+-- getOpenchildMarginbottom :: 'Ref' 'Tree' -> 'IO' 'Int'+--+-- getOpenicon :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'Image'))+--+-- getScrollbarSize :: 'Ref' 'Tree' -> 'IO' 'Int'+--+-- getSelectbox :: 'Ref' 'Tree' -> 'IO' 'Boxtype'+--+-- getShowcollapse :: 'Ref' 'Tree' -> 'IO' 'Int'+--+-- getShowroot :: 'Ref' 'Tree' -> 'IO' 'Bool'+--+-- getSortorder :: 'Ref' 'Tree' -> 'IO' 'TreeSort'+--+-- getUsericon :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'Image'))+--+-- getUsericonmarginleft :: 'Ref' 'Tree' -> 'IO' 'Int'+--+-- getVposition :: 'Ref' 'Tree' -> 'IO' 'Int'+--+-- handle :: 'Ref' 'Tree' -> 'Event' -> 'IO' 'Int'+--+-- insert:: ('Parent' a 'TreeItem') => 'Ref' 'Tree' -> 'Ref' a -> 'String' -> 'Int' -> 'IO' ('Maybe' ('Ref' a)))+--+-- insertAbove:: ('Parent' a 'TreeItem') => 'Ref' 'Tree' -> 'Ref' a -> 'String' -> 'IO' ('Maybe' ('Ref' a)))+--+-- isClose :: 'Ref' 'Tree' -> 'TreeItemLocator' -> 'IO' 'Bool'+--+-- isOpen :: 'Ref' 'Tree' -> 'TreeItemLocator' -> 'IO' 'Bool'+--+-- isScrollbar:: ('Parent' a 'Widget') => 'Ref' 'Tree' -> 'Ref' a -> 'IO' 'Bool')+--+-- isSelectedWithItem :: 'Ref' 'Tree' -> 'TreeItemLocator' -> 'IO' 'Bool'+--+-- isVscrollVisible :: 'Ref' 'Tree' -> 'IO' 'Bool'+--+-- itemClicked :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- itemPathname:: ('Parent' a 'TreeItem') => 'Ref' 'Tree' -> 'Ref' a -> 'IO' ('Maybe' 'String'))+--+-- lastVisible :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- next :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- nextSelectedItem :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- nextSelectedItemWithItem :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- nextWithItem :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- open :: 'Ref' 'Tree' -> 'TreeItemLocator' -> 'IO' ()+--+-- openAndCallback :: 'Ref' 'Tree' -> 'TreeItemLocator' -> 'Bool' -> 'IO' ()+--+-- openToggle :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ()+--+-- openToggleAndCallback :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'Bool' -> 'IO' ()+--+-- prev :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- prevWithItem :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- remove :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ('Either' 'TreeItemNotFound' ())+--+-- root :: 'Ref' 'Tree' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- rootLabel :: 'Ref' 'Tree' -> 'String' -> 'IO' ()+--+-- select :: 'Ref' 'Tree' -> 'TreeItemLocator' -> 'IO' 'Int'+--+-- selectAll :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ()+--+-- selectAllAndCallback :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'Bool' -> 'IO' ()+--+-- selectAndCallback :: 'Ref' 'Tree' -> 'TreeItemLocator' -> 'Bool' -> 'IO' ()+--+-- selectOnly :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ()+--+-- selectOnlyAndCallback :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'Bool' -> 'IO' ()+--+-- selectToggle :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ()+--+-- selectToggleAndCallback :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'Bool' -> 'IO' ()+--+-- selectmode :: 'Ref' 'Tree' -> 'IO' 'TreeSelect'+--+-- setCallbackItem:: ('Parent' a 'TreeItem') => 'Ref' 'Tree' -> 'Ref' a -> 'IO' ())+--+-- setCallbackReason :: 'Ref' 'Tree' -> 'TreeReasonType' -> 'IO' ()+--+-- setCloseicon:: ('Parent' a 'Image') => 'Ref' 'Tree' -> 'Ref' a -> 'IO' ())+--+-- setConnectorcolor :: 'Ref' 'Tree' -> 'Color' -> 'IO' ()+--+-- setConnectorstyle :: 'Ref' 'Tree' -> 'TreeConnector' -> 'IO' ()+--+-- setConnectorwidth :: 'Ref' 'Tree' -> 'Int' -> 'IO' ()+--+-- setItemFocus :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ()+--+-- setItemLabelbgcolor :: 'Ref' 'Tree' -> 'Color' -> 'IO' ()+--+-- setItemLabelfgcolor :: 'Ref' 'Tree' -> 'Color' -> 'IO' ()+--+-- setItemLabelfont :: 'Ref' 'Tree' -> 'Font' -> 'IO' ()+--+-- setItemLabelsize :: 'Ref' 'Tree' -> 'FontSize' -> 'IO' ()+--+-- setLabelmarginleft :: 'Ref' 'Tree' -> 'Int' -> 'IO' ()+--+-- setLinespacing :: 'Ref' 'Tree' -> 'Int' -> 'IO' ()+--+-- setMarginleft :: 'Ref' 'Tree' -> 'Int' -> 'IO' ()+--+-- setMargintop :: 'Ref' 'Tree' -> 'Int' -> 'IO' ()+--+-- setOpenchildMarginbottom :: 'Ref' 'Tree' -> 'Int' -> 'IO' ()+--+-- setOpenicon:: ('Parent' a 'Image') => 'Ref' 'Tree' -> 'Ref' a -> 'IO' ())+--+-- setScrollbarSize :: 'Ref' 'Tree' -> 'Int' -> 'IO' ()+--+-- setSelectbox :: 'Ref' 'Tree' -> 'Boxtype' -> 'IO' ()+--+-- setSelectmode :: 'Ref' 'Tree' -> 'TreeSelect' -> 'IO' ()+--+-- setShowcollapse :: 'Ref' 'Tree' -> 'Int' -> 'IO' ()+--+-- setShowroot :: 'Ref' 'Tree' -> 'Bool' -> 'IO' ()+--+-- setSortorder :: 'Ref' 'Tree' -> 'TreeSort' -> 'IO' ()+--+-- setUsericon:: ('Parent' a 'Image') => 'Ref' 'Tree' -> 'Ref' a -> 'IO' ())+--+-- setUsericonmarginleft :: 'Ref' 'Tree' -> 'Int' -> 'IO' ()+--+-- setVposition :: 'Ref' 'Tree' -> 'Int' -> 'IO' ()+--+-- showItemBottom :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ()+--+-- showItemMiddle :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ()+--+-- showItemTop :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'IO' ()+--+-- showItemWithYoff :: 'Ref' 'Tree' -> 'Ref' 'TreeItem' -> 'Maybe' 'Int' -> 'IO' ()+--+-- showSelf :: 'Ref' 'Tree' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Group"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Tree"+-- @
+ src/Graphics/UI/FLTK/LowLevel/TreeItem.chs view
@@ -0,0 +1,513 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.TreeItem+  (+    TreeItemIndex(..),+    TreeItemPointer(..),+    TreeItemName(..),+    TreeItemReference(..),+    TreeItemLocator(..),+    MoveError(..),+    MoveType(..),+    SiblingPosition(..),+    TreeItemNotFound(..),+    treeItemNew+    -- * Hierarchy+    --+    -- $hierarchy++    -- * Hierarchy+    --+    -- $hierarchy++    -- * Functions+    --+    -- $functions+  )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Tree_ItemC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++newtype TreeItemIndex = TreeItemIndex Int+data TreeItemPointer = forall a. (Parent a TreeItem) => TreeItemPointer (Ref a)+newtype TreeItemName = TreeItemName String+data TreeItemReference = TreeItemByIndex TreeItemIndex | TreeItemByPointer TreeItemPointer+data TreeItemLocator = TreeItemPointerLocator TreeItemPointer | TreeItemNameLocator TreeItemName+data MoveError = NoParent | NoIndexFound | IndexRangeError | CouldNotDeparent | CouldNotReparent+data MoveType = MoveAbove | MoveBelow | MoveInto SiblingPosition+data TreeItemNotFound = TreeItemNotFound+data SiblingPosition = SiblingPosition (Maybe Int)+instance Enum MoveError where+  fromEnum NoParent = (-1)+  fromEnum  NoIndexFound = (-2)+  fromEnum  IndexRangeError = (-4)+  fromEnum  CouldNotDeparent = (-5)+  fromEnum  CouldNotReparent = (-6)++  toEnum (-1) = NoParent+  toEnum (-2) = NoIndexFound+  toEnum (-4) = IndexRangeError+  toEnum (-5) = CouldNotDeparent+  toEnum (-6) = CouldNotReparent+  toEnum e = error $ "No MoveError found for " ++ (show e)+{# fun unsafe Fl_Tree_Item_New_WithPrefs as newTreeItem' {id `Ptr ()'} -> `Ptr ()' id #}+treeItemNew :: Ref TreePrefs -> IO (Ref TreeItem)+treeItemNew prefs' = withRef prefs' $ \prefs'Ptr -> newTreeItem' prefs'Ptr >>= toRef+{# fun Fl_Tree_Item_Destroy as destroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) TreeItem orig impl where+  runOp _ _ menu_ = swapRef menu_ $ \menu_Ptr -> destroy' menu_Ptr >> return nullPtr+{# fun unsafe Fl_Tree_Item_x as x' { id `Ptr ()' } -> `Int' #}+instance (impl ~ IO Int) => Op (GetX ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> x' tree_itemPtr+{# fun unsafe Fl_Tree_Item_y as y' { id `Ptr ()' } -> `Int' #}+instance (impl ~ IO Int) => Op (GetY ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> y' tree_itemPtr+{# fun unsafe Fl_Tree_Item_w as w' { id `Ptr ()' } -> `Int' #}+instance (impl ~ IO Int) => Op (GetW ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> w' tree_itemPtr+{# fun unsafe Fl_Tree_Item_h as h' { id `Ptr ()' } -> `Int' #}+instance (impl ~ IO Int) => Op (GetH ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> h' tree_itemPtr+{# fun unsafe Fl_Tree_Item_show_self_with_indent as showSelfWithIndent' { id `Ptr ()',`String' } -> `()' #}+instance (impl ~ (Maybe String -> IO ())) => Op (ShowSelf ()) TreeItem orig impl where+  runOp _ _ tree_item indent = case indent of+    Just s' -> withRef tree_item $ \tree_itemPtr -> showSelfWithIndent' tree_itemPtr s'+    Nothing -> withRef tree_item $ \tree_itemPtr -> showSelfWithIndent' tree_itemPtr ""+{# fun unsafe Fl_Tree_Item_set_label as setLabel' { id `Ptr ()',`String' } -> `()' #}+instance (impl ~ ( String ->  IO ())) => Op (SetLabel ()) TreeItem orig impl where+  runOp _ _ tree_item val = withRef tree_item $ \tree_itemPtr -> setLabel' tree_itemPtr val+{# fun unsafe Fl_Tree_Item_label as label' { id `Ptr ()' } -> `String' #}+instance (impl ~ (IO (String))) => Op (GetLabel ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> label' tree_itemPtr+{# fun unsafe Fl_Tree_Item_set_labelfont as setLabelfont' { id `Ptr ()',cFromFont `Font' } -> `()' #}+instance (impl ~ ( Font ->  IO ())) => Op (SetLabelfont ()) TreeItem orig impl where+  runOp _ _ tree_item val = withRef tree_item $ \tree_itemPtr -> setLabelfont' tree_itemPtr val+{# fun unsafe Fl_Tree_Item_labelfont as labelfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ (IO (Font))) => Op (GetLabelfont ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> labelfont' tree_itemPtr+{# fun unsafe Fl_Tree_Item_set_labelsize as setLabelsize' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ ( FontSize ->  IO ())) => Op (SetLabelsize ()) TreeItem orig impl where+  runOp _ _ tree_item (FontSize val) = withRef tree_item $ \tree_itemPtr -> setLabelsize' tree_itemPtr val+{# fun unsafe Fl_Tree_Item_labelsize as labelsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ (IO (FontSize))) => Op (GetLabelsize ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> labelsize' tree_itemPtr >>= return . FontSize+{# fun unsafe Fl_Tree_Item_set_labelcolor as setLabelcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ ( Color ->  IO ())) => Op (SetLabelcolor ()) TreeItem orig impl where+  runOp _ _ tree_item val = withRef tree_item $ \tree_itemPtr -> setLabelcolor' tree_itemPtr val+{# fun unsafe Fl_Tree_Item_labelcolor as labelcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ (IO (Color))) => Op (GetLabelcolor ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> labelcolor' tree_itemPtr+{# fun unsafe Fl_Tree_Item_labelfgcolor as labelfgcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ (IO (Color))) => Op (GetLabelfgcolor ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> labelfgcolor' tree_itemPtr+{# fun unsafe Fl_Tree_Item_set_labelfgcolor as setLabelfgcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ ( Color ->  IO ())) => Op (SetLabelfgcolor ()) TreeItem orig impl where+  runOp _ _ tree_item val = withRef tree_item $ \tree_itemPtr -> setLabelfgcolor' tree_itemPtr val+{# fun unsafe Fl_Tree_Item_set_labelbgcolor as setLabelbgcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ ( Color ->  IO ())) => Op (SetLabelbgcolor ()) TreeItem orig impl where+  runOp _ _ tree_item val = withRef tree_item $ \tree_itemPtr -> setLabelbgcolor' tree_itemPtr val+{# fun unsafe Fl_Tree_Item_labelbgcolor as labelbgcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ (IO (Color))) => Op (GetLabelbgcolor ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> labelbgcolor' tree_itemPtr+{# fun unsafe Fl_Tree_Item_set_widget as setWidget' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Widget, impl ~ (Ref a  ->  IO ())) => Op (SetWidget ()) TreeItem orig impl where+  runOp _ _ tree_item val = withRef tree_item $ \tree_itemPtr -> withRef val $ \valPtr -> setWidget' tree_itemPtr valPtr+{# fun unsafe Fl_Tree_Item_widget as widget' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Ref Widget))) => Op (GetWidget ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> widget' tree_itemPtr >>= toRef+{# fun unsafe Fl_Tree_Item_children as children' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (Children ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> children' tree_itemPtr+{# fun unsafe Fl_Tree_Item_child_by_index as childByIndex' { id `Ptr ()',`Int' } -> `Ptr ()' id #}+instance (impl ~ ( Int ->  IO (Maybe (Ref Widget)))) => Op (Child ()) TreeItem orig impl where+  runOp _ _ tree_item index' = withRef tree_item $ \tree_itemPtr -> childByIndex' tree_itemPtr index' >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_has_children as hasChildren' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (HasChildren ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> hasChildren' tree_itemPtr++{# fun unsafe Fl_Tree_Item_find_child as findChild' { id `Ptr ()',`String' } -> `Int' #}+{# fun unsafe Fl_Tree_Item_find_child_by_item as findChildByItem' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+instance (impl ~ ( TreeItemLocator ->  IO (Maybe TreeItemIndex))) => Op (FindChild ()) TreeItem orig impl where+  runOp _ _ tree_item locator' = withRef tree_item $ \tree_itemPtr -> do+    idx' <- case locator' of+             (TreeItemPointerLocator (TreeItemPointer item')) -> withRef item' $ \itemPtr-> findChildByItem' tree_itemPtr itemPtr+             (TreeItemNameLocator (TreeItemName name')) -> findChild' tree_itemPtr name'+    if idx' == -1 then return Nothing else (return $ Just (TreeItemIndex idx'))++{# fun unsafe Fl_Tree_Item_remove_child_by_item as removeChildByItem' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+{# fun unsafe Fl_Tree_Item_remove_child as removeChild' { id `Ptr ()',`String' } -> `Int' #}+instance (impl ~ ( TreeItemLocator ->  IO (Either UnknownError ()))) => Op (RemoveChild ()) TreeItem orig impl where+  runOp _ _ tree_item locator' = withRef tree_item $ \tree_itemPtr -> do+     status' <- case locator' of+       (TreeItemPointerLocator (TreeItemPointer item')) -> withRef item' $ \itemPtr-> removeChildByItem' tree_itemPtr itemPtr+       (TreeItemNameLocator (TreeItemName name')) -> removeChild' tree_itemPtr name'+     if (status' < 0) then (return $ Left UnknownError) else (return $ Right ())+{# fun unsafe Fl_Tree_Item_clear_children as clearChildren' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (ClearChildren ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> clearChildren' tree_itemPtr+{# fun unsafe Fl_Tree_Item_swap_children as swapChildren' { id `Ptr ()',`Int',`Int' } -> `()' #}+instance (impl ~ ( Int -> Int ->  IO ())) => Op (SwapChildren ()) TreeItem orig impl where+  runOp _ _ tree_item ax bx = withRef tree_item $ \tree_itemPtr -> swapChildren' tree_itemPtr ax bx+{# fun unsafe Fl_Tree_Item_swap_children_by_tree_item as swapChildrenByTreeItem' { id `Ptr ()',id `Ptr ()',id `Ptr ()' } -> `Int' #}+instance (Parent a TreeItem, impl ~ (Ref a -> Ref a -> IO (Either TreeItemNotFound ()))) => Op (SwapChildrenByTreeItem ()) TreeItem orig impl where+  runOp _ _ tree_item a b = withRef tree_item $ \tree_itemPtr -> withRef a $ \aPtr -> withRef b $ \bPtr -> do+    status' <- swapChildrenByTreeItem' tree_itemPtr aPtr bPtr+    if (status' == 0) then return (Left TreeItemNotFound) else return (Right ())+{# fun unsafe Fl_Tree_Item_find_child_item as findChildItem' { id `Ptr ()',id `Ptr (Ptr CChar)' } -> `Ptr ()' id #}+instance (impl ~ ([String] ->  IO (Maybe (Ref TreeItem)))) => Op (FindInChildren ()) TreeItem orig impl where+  runOp _ _ tree_item path_ = withRef tree_item $ \tree_itemPtr -> withStrings path_ $ \pathPtr -> findChildItem' tree_itemPtr (castPtr pathPtr) >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_find_item as findItem' { id `Ptr ()',id `Ptr (Ptr CChar)' } -> `Ptr ()' id #}+instance (impl ~ ( [String] ->  IO (Maybe (Ref TreeItem)))) => Op (FindItem ()) TreeItem orig impl where+  runOp _ _ tree_item path =+    withRef tree_item $ \tree_itemPtr ->+      withStrings path (\pathPtr -> findItem' tree_itemPtr (castPtr pathPtr) >>= toMaybeRef)+{# fun unsafe Fl_Tree_Item_add_with as addWith' {id `Ptr ()', id `Ptr ()', id `Ptr CChar', id `Ptr ()'} -> `Ptr ()' id #}+{# fun unsafe Fl_Tree_Item_add_with_at as addWithAt' {id `Ptr ()', id `Ptr ()', id `Ptr ()' , id `Ptr (Ptr CChar)'} -> `Ptr ()' id #}+{# fun unsafe Fl_Tree_Item_add as add' {id `Ptr ()', id `Ptr ()', `String'} -> `Ptr ()' id #}+{# fun unsafe Fl_Tree_Item_add_at as addAt' {id `Ptr ()', id `Ptr ()', id `Ptr (Ptr CChar)' } -> `Ptr ()' id #}+instance (Parent a TreeItem, Parent b TreePrefs, impl ~ (Ref b  -> TreeItemLocator ->  IO (Maybe (Ref a)))) => Op (Add ()) TreeItem orig impl where+  runOp _ _ tree_item prefs arr =+    withRef tree_item $ \tree_itemPtr -> withRef prefs $ \prefsPtr ->+      case arr of+        TreeItemNameLocator (TreeItemName n') -> add' tree_itemPtr prefsPtr n' >>= toMaybeRef+        TreeItemPointerLocator (TreeItemPointer p') -> withRef p' $ \p'Ptr -> addWith' tree_itemPtr prefsPtr (castPtr nullPtr) p'Ptr >>= toMaybeRef+instance (Parent a TreeItem, Parent b TreePrefs, impl ~ (Ref b  ->  [String] -> Maybe (Ref a) -> IO (Maybe (Ref a)))) => Op (AddAt ()) TreeItem orig impl where+  runOp _ _ tree_item prefs path item' =+    withRef tree_item $ \tree_itemPtr -> withRef prefs $ \prefsPtr ->+    withStrings path $ \pathPtr ->+      case item' of+        Nothing -> addAt' tree_itemPtr prefsPtr (castPtr pathPtr) >>= toMaybeRef+        Just i' -> withRef i' $ \i'Ptr -> addWithAt' tree_itemPtr prefsPtr i'Ptr pathPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_insert as insert' { id `Ptr ()',id `Ptr ()',`String' } -> `Ptr ()' id #}+{# fun unsafe Fl_Tree_Item_insert_with_pos as insertWithPos' { id `Ptr ()',id `Ptr ()',`String',`Int' } -> `Ptr ()' id #}+instance (Parent a TreePrefs, impl ~ (Ref a  -> String ->  Maybe Int -> IO (Maybe (Ref TreeItem)))) => Op (Insert ()) TreeItem orig impl where+  runOp _ _ tree_item prefs new_label pos' =+    withRef tree_item $ \tree_itemPtr -> withRef prefs $ \prefsPtr ->+      case pos' of+        Nothing -> insert' tree_itemPtr prefsPtr new_label >>= toMaybeRef+        Just p' -> insertWithPos' tree_itemPtr prefsPtr new_label p' >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_insert_above as insertAbove' { id `Ptr ()',id `Ptr ()', `String' } -> `Ptr ()' id #}+instance (Parent a TreePrefs, impl ~ (Ref a -> String ->  IO (Maybe (Ref TreeItem)))) => Op (InsertAbove ()) TreeItem orig impl where+  runOp _ _ tree_item prefs new_label =+    withRef tree_item $+    \tree_itemPtr ->+     withRef prefs $ \prefsPtr -> insertAbove' tree_itemPtr prefsPtr new_label >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_deparent as deparent' { id `Ptr ()', `Int'} -> `Ptr ()' id #}+instance (impl ~ (Int -> IO (Either UnknownError (Ref orig)))) => Op (Deparent ()) TreeItem orig impl where+  runOp _ _ tree_item pos' = withRef tree_item $ \tree_itemPtr -> do+    item' <- deparent' tree_itemPtr pos'+    if (item' == nullPtr) then (return $ Left UnknownError) else toRef item' >>= return . Right+{# fun unsafe Fl_Tree_Item_reparent as reparent' { id `Ptr ()', id `Ptr ()', `Int'} -> `Int' #}+instance (Parent a TreeItem, impl ~ (Ref a -> Int -> IO (Either UnknownError ()))) => Op (Reparent ()) TreeItem orig impl where+  runOp _ _ tree_item child_item pos' =+    withRef tree_item $ \tree_itemPtr -> withRef child_item $ \child_itemPtr -> do+      status' <- reparent' tree_itemPtr child_itemPtr pos'+      if (status' < 0) then (return $ Left UnknownError) else (return $ Right ())+{# fun unsafe Fl_Tree_Item_move as move' { id `Ptr ()', `Int', `Int'} -> `Int' #}+instance (impl ~ (Int -> Int -> IO (Either OutOfRange ()))) => Op (Move ()) TreeItem orig impl where+  runOp _ _ tree_item pos' spos' =+    withRef tree_item $ \tree_itemPtr -> do+      status' <- move' tree_itemPtr pos' spos'+      if status' == -1 then (return $ Left OutOfRange) else return (Right ())+{# fun unsafe Fl_Tree_Item_move_above as move_above' { id `Ptr ()', id `Ptr ()'} -> `Int' #}+{# fun unsafe Fl_Tree_Item_move_below as move_below' { id `Ptr ()', id `Ptr ()'} -> `Int' #}+{# fun unsafe Fl_Tree_Item_move_into as move_into' { id `Ptr ()', id `Ptr ()', `Int'} -> `Int' #}+instance (Parent a TreeItem, impl ~ (Ref a -> MoveType -> IO (Either MoveError ()))) => Op (MoveTo ()) TreeItem orig impl where+  runOp _ _ tree_item to_item moveType' =+    withRef tree_item $ \tree_itemPtr ->+    withRef to_item $ \to_itemPtr -> do+    statusCode' <- case moveType' of+      MoveInto (SiblingPosition (Just p')) -> move_into' tree_itemPtr to_itemPtr p'+      MoveInto (SiblingPosition Nothing)  -> move_into' tree_itemPtr to_itemPtr 0+      MoveAbove                           -> move_above' tree_itemPtr to_itemPtr+      MoveBelow                           -> move_below' tree_itemPtr to_itemPtr+    if (statusCode' < 0) then return (Left (toEnum statusCode')) else return (Right ())+{# fun unsafe Fl_Tree_Item_depth as depth' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (GetDepth ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> depth' tree_itemPtr+{# fun unsafe Fl_Tree_Item_prev as prev' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Maybe (Ref TreeItem)))) => Op (Prev ()) TreeItem orig impl where+  runOp _ _ tree_item =+    withRef tree_item $ \tree_itemPtr -> prev' tree_itemPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_next as next' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Maybe (Ref TreeItem)))) => Op (Next ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> next' tree_itemPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_next_sibling as nextSibling' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Maybe (Ref TreeItem)))) => Op (NextSibling ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> nextSibling' tree_itemPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_prev_sibling as prevSibling' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Maybe (Ref TreeItem)))) => Op (PrevSibling ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> prevSibling' tree_itemPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_update_prev_next as updatePrevNext' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (UpdatePrevNext ()) TreeItem orig impl where+  runOp _ _ tree_item index' = withRef tree_item $ \tree_itemPtr -> updatePrevNext' tree_itemPtr index'+{# fun unsafe Fl_Tree_Item_next_displayed as nextDisplayed' { id `Ptr ()',id `Ptr ()' } -> `Ptr ()' id #}+instance (Parent a TreePrefs, impl ~ (Ref a  ->  IO (Maybe (Ref TreeItem)))) => Op (NextDisplayed ()) TreeItem orig impl where+  runOp _ _ tree_item prefs = withRef tree_item $ \tree_itemPtr -> withRef prefs $ \prefsPtr -> nextDisplayed' tree_itemPtr prefsPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_prev_displayed as prevDisplayed' { id `Ptr ()',id `Ptr ()' } -> `Ptr ()' id #}+instance (Parent a TreePrefs, impl ~ (Ref a  ->  IO (Maybe (Ref TreeItem)))) => Op (PrevDisplayed ()) TreeItem orig impl where+  runOp _ _ tree_item prefs = withRef tree_item $ \tree_itemPtr -> withRef prefs $ \prefsPtr -> prevDisplayed' tree_itemPtr prefsPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_parent as parent' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Maybe (Ref TreeItem)))) => Op (GetParent ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> parent' tree_itemPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_set_parent as setParent' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a TreeItem, impl ~ (Ref a  ->  IO ())) => Op (SetParent ()) TreeItem orig impl where+  runOp _ _ tree_item val = withRef tree_item $ \tree_itemPtr -> withRef val $ \valPtr -> setParent' tree_itemPtr valPtr+{# fun unsafe Fl_Tree_Item_open as open' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (Open ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> open' tree_itemPtr+{# fun unsafe Fl_Tree_Item_close as close' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (Close ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> close' tree_itemPtr+{# fun unsafe Fl_Tree_Item_is_open as isOpen' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (IsOpen ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> isOpen' tree_itemPtr+{# fun unsafe Fl_Tree_Item_is_close as isClose' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (IsClose ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> isClose' tree_itemPtr+{# fun unsafe Fl_Tree_Item_open_toggle as openToggle' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (OpenToggle ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> openToggle' tree_itemPtr+{# fun unsafe Fl_Tree_Item_select as select' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (Select ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> select' tree_itemPtr+{# fun unsafe Fl_Tree_Item_select_with_val as selectWithVal' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (SelectWithVal ()) TreeItem orig impl where+  runOp _ _ tree_item val = withRef tree_item $ \tree_itemPtr -> selectWithVal' tree_itemPtr val+{# fun unsafe Fl_Tree_Item_select_toggle as selectToggle' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (SelectToggle ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> selectToggle' tree_itemPtr+{# fun unsafe Fl_Tree_Item_select_all as selectAll' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (SelectAll ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> selectAll' tree_itemPtr+{# fun unsafe Fl_Tree_Item_deselect as deselect' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (Deselect ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> deselect' tree_itemPtr+{# fun unsafe Fl_Tree_Item_deselect_all as deselectAll' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (DeselectAll ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> deselectAll' tree_itemPtr+{# fun unsafe Fl_Tree_Item_is_selected as isSelected' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (IsSelected ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> isSelected' tree_itemPtr+{# fun unsafe Fl_Tree_Item_activate as activate' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (Activate ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> activate' tree_itemPtr+{# fun unsafe Fl_Tree_Item_activate_with_val as activateWithVal' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ ( Int ->  IO ())) => Op (ActivateWithVal ()) TreeItem orig impl where+  runOp _ _ tree_item val = withRef tree_item $ \tree_itemPtr -> activateWithVal' tree_itemPtr val+{# fun unsafe Fl_Tree_Item_is_active as isActive' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (IsActive ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> isActive' tree_itemPtr+{# fun unsafe Fl_Tree_Item_visible as visible' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (Visible ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> visible' tree_itemPtr+{# fun unsafe Fl_Tree_Item_is_visible as isVisible' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (IsVisible ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> isVisible' tree_itemPtr+{# fun unsafe Fl_Tree_Item_visible_r as visibleR' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (VisibleR ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> visibleR' tree_itemPtr+{# fun unsafe Fl_Tree_Item_set_usericon as setUsericon' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Image, impl ~ (Ref a  ->  IO ())) => Op (SetUsericon ()) TreeItem orig impl where+  runOp _ _ tree_item val = withRef tree_item $ \tree_itemPtr -> withRef val $ \valPtr -> setUsericon' tree_itemPtr valPtr+{# fun unsafe Fl_Tree_Item_usericon as usericon' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Ref Image))) => Op (GetUsericon ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> usericon' tree_itemPtr >>= toRef+{# fun unsafe Fl_Tree_Item_find_clicked as findClicked' { id `Ptr ()',id `Ptr ()' } -> `Ptr ()' id #}+instance (Parent a TreePrefs, impl ~ (Ref a  ->  IO (Maybe (Ref TreeItem)))) => Op (FindClicked ()) TreeItem orig impl where+  runOp _ _ tree_item prefs = withRef tree_item $ \tree_itemPtr -> withRef prefs $ \prefsPtr -> findClicked' tree_itemPtr prefsPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_Item_event_on_collapse_icon as eventOnCollapseIcon' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+instance (Parent a TreePrefs, impl ~ (Ref a  ->  IO (Int))) => Op (EventOnCollapseIcon ()) TreeItem orig impl where+  runOp _ _ tree_item prefs = withRef tree_item $ \tree_itemPtr -> withRef prefs $ \prefsPtr -> eventOnCollapseIcon' tree_itemPtr prefsPtr+{# fun unsafe Fl_Tree_Item_event_on_label as eventOnLabel' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+instance (Parent a TreePrefs, impl ~ (Ref a  ->  IO (Int))) => Op (EventOnLabel ()) TreeItem orig impl where+  runOp _ _ tree_item prefs = withRef tree_item $ \tree_itemPtr -> withRef prefs $ \prefsPtr -> eventOnLabel' tree_itemPtr prefsPtr+{# fun unsafe Fl_Tree_Item_is_root as isRoot' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (IsRoot ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> isRoot' tree_itemPtr+{# fun unsafe Fl_Tree_Item_label_x as labelX' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (LabelX ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> labelX' tree_itemPtr+{# fun unsafe Fl_Tree_Item_label_y as labelY' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (LabelY ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> labelY' tree_itemPtr+{# fun unsafe Fl_Tree_Item_label_w as labelW' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (LabelW ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> labelW' tree_itemPtr+{# fun unsafe Fl_Tree_Item_label_h as labelH' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (LabelH ()) TreeItem orig impl where+  runOp _ _ tree_item = withRef tree_item $ \tree_itemPtr -> labelH' tree_itemPtr++-- $hierarchy+-- @+-- 'Base' -> 'TreeItem'+-- @++-- $functions+-- @+--+-- activate :: 'Ref' 'TreeItem' -> 'IO' ()+--+-- activateWithVal :: 'Ref' 'TreeItem' -> 'Int' -> 'IO' ()+--+-- add:: ('Parent' a 'TreeItem', 'Parent' b 'TreePrefs') => 'Ref' 'TreeItem' -> 'Ref' b -> 'TreeItemLocator' -> 'IO' ('Maybe' ('Ref' a)))+--+-- addAt:: ('Parent' a 'TreeItem', 'Parent' b 'TreePrefs') => 'Ref' 'TreeItem' -> 'Ref' b -> ['String'] -> 'Maybe' ('Ref' a) -> 'IO' ('Maybe' ('Ref' a)))+--+-- child :: 'Ref' 'TreeItem' -> 'Int' -> 'IO' ('Maybe' ('Ref' 'Widget'))+--+-- children :: 'Ref' 'TreeItem' -> 'IO' 'Int'+--+-- clearChildren :: 'Ref' 'TreeItem' -> 'IO' ()+--+-- close :: 'Ref' 'TreeItem' -> 'IO' ()+--+-- deparent :: 'Ref' 'TreeItem' -> 'Int' -> 'IO' ('Either' 'UnknownError' ('Ref' orig))+--+-- deselect :: 'Ref' 'TreeItem' -> 'IO' ()+--+-- deselectAll :: 'Ref' 'TreeItem' -> 'IO' 'Int'+--+-- destroy :: 'Ref' 'TreeItem' -> 'IO' ()+--+-- eventOnCollapseIcon:: ('Parent' a 'TreePrefs') => 'Ref' 'TreeItem' -> 'Ref' a -> 'IO' 'Int')+--+-- eventOnLabel:: ('Parent' a 'TreePrefs') => 'Ref' 'TreeItem' -> 'Ref' a -> 'IO' 'Int')+--+-- findChild :: 'Ref' 'TreeItem' -> 'TreeItemLocator' -> 'IO' ('Maybe' 'TreeItemIndex')+--+-- findClicked:: ('Parent' a 'TreePrefs') => 'Ref' 'TreeItem' -> 'Ref' a -> 'IO' ('Maybe' ('Ref' 'TreeItem')))+--+-- findInChildren :: 'Ref' 'TreeItem' -> ['String'] -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- findItem :: 'Ref' 'TreeItem' -> ['String'] -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- getDepth :: 'Ref' 'TreeItem' -> 'IO' 'Int'+--+-- getH :: 'Ref' 'TreeItem' -> 'IO' 'Int'+--+-- getLabel :: 'Ref' 'TreeItem' -> 'IO' 'String'+--+-- getLabelbgcolor :: 'Ref' 'TreeItem' -> 'IO' 'Color'+--+-- getLabelcolor :: 'Ref' 'TreeItem' -> 'IO' 'Color'+--+-- getLabelfgcolor :: 'Ref' 'TreeItem' -> 'IO' 'Color'+--+-- getLabelfont :: 'Ref' 'TreeItem' -> 'IO' 'Font'+--+-- getLabelsize :: 'Ref' 'TreeItem' -> 'IO' 'FontSize'+--+-- getParent :: 'Ref' 'TreeItem' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- getUsericon :: 'Ref' 'TreeItem' -> 'IO' ('Ref' 'Image')+--+-- getW :: 'Ref' 'TreeItem' -> 'IO' 'Int'+--+-- getWidget :: 'Ref' 'TreeItem' -> 'IO' ('Ref' 'Widget')+--+-- getX :: 'Ref' 'TreeItem' -> 'IO' 'Int'+--+-- getY :: 'Ref' 'TreeItem' -> 'IO' 'Int'+--+-- hasChildren :: 'Ref' 'TreeItem' -> 'IO' 'Bool'+--+-- insert:: ('Parent' a 'TreePrefs') => 'Ref' 'TreeItem' -> 'Ref' a -> 'String' -> 'Maybe' 'Int' -> 'IO' ('Maybe' ('Ref' 'TreeItem')))+--+-- insertAbove:: ('Parent' a 'TreePrefs') => 'Ref' 'TreeItem' -> 'Ref' a -> 'String' -> 'IO' ('Maybe' ('Ref' 'TreeItem')))+--+-- isActive :: 'Ref' 'TreeItem' -> 'IO' 'Bool'+--+-- isClose :: 'Ref' 'TreeItem' -> 'IO' 'Bool'+--+-- isOpen :: 'Ref' 'TreeItem' -> 'IO' 'Bool'+--+-- isRoot :: 'Ref' 'TreeItem' -> 'IO' 'Bool'+--+-- isSelected :: 'Ref' 'TreeItem' -> 'IO' 'Bool'+--+-- isVisible :: 'Ref' 'TreeItem' -> 'IO' 'Bool'+--+-- labelH :: 'Ref' 'TreeItem' -> 'IO' 'Int'+--+-- labelW :: 'Ref' 'TreeItem' -> 'IO' 'Int'+--+-- labelX :: 'Ref' 'TreeItem' -> 'IO' 'Int'+--+-- labelY :: 'Ref' 'TreeItem' -> 'IO' 'Int'+--+-- move :: 'Ref' 'TreeItem' -> 'Int' -> 'Int' -> 'IO' ('Either' 'OutOfRange' ())+--+-- moveTo:: ('Parent' a 'TreeItem') => 'Ref' 'TreeItem' -> 'Ref' a -> 'MoveType' -> 'IO' ('Either' 'MoveError' ()))+--+-- next :: 'Ref' 'TreeItem' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- nextDisplayed:: ('Parent' a 'TreePrefs') => 'Ref' 'TreeItem' -> 'Ref' a -> 'IO' ('Maybe' ('Ref' 'TreeItem')))+--+-- nextSibling :: 'Ref' 'TreeItem' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- open :: 'Ref' 'TreeItem' -> 'IO' ()+--+-- openToggle :: 'Ref' 'TreeItem' -> 'IO' ()+--+-- prev :: 'Ref' 'TreeItem' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- prevDisplayed:: ('Parent' a 'TreePrefs') => 'Ref' 'TreeItem' -> 'Ref' a -> 'IO' ('Maybe' ('Ref' 'TreeItem')))+--+-- prevSibling :: 'Ref' 'TreeItem' -> 'IO' ('Maybe' ('Ref' 'TreeItem'))+--+-- removeChild :: 'Ref' 'TreeItem' -> 'TreeItemLocator' -> 'IO' ('Either' 'UnknownError' ())+--+-- reparent:: ('Parent' a 'TreeItem') => 'Ref' 'TreeItem' -> 'Ref' a -> 'Int' -> 'IO' ('Either' 'UnknownError' ()))+--+-- select :: 'Ref' 'TreeItem' -> 'IO' ()+--+-- selectAll :: 'Ref' 'TreeItem' -> 'IO' 'Int'+--+-- selectToggle :: 'Ref' 'TreeItem' -> 'IO' ()+--+-- selectWithVal :: 'Ref' 'TreeItem' -> 'Int' -> 'IO' ()+--+-- setLabel :: 'Ref' 'TreeItem' -> 'String' -> 'IO' ()+--+-- setLabelbgcolor :: 'Ref' 'TreeItem' -> 'Color' -> 'IO' ()+--+-- setLabelcolor :: 'Ref' 'TreeItem' -> 'Color' -> 'IO' ()+--+-- setLabelfgcolor :: 'Ref' 'TreeItem' -> 'Color' -> 'IO' ()+--+-- setLabelfont :: 'Ref' 'TreeItem' -> 'Font' -> 'IO' ()+--+-- setLabelsize :: 'Ref' 'TreeItem' -> 'FontSize' -> 'IO' ()+--+-- setParent:: ('Parent' a 'TreeItem') => 'Ref' 'TreeItem' -> 'Ref' a -> 'IO' ())+--+-- setUsericon:: ('Parent' a 'Image') => 'Ref' 'TreeItem' -> 'Ref' a -> 'IO' ())+--+-- setWidget:: ('Parent' a 'Widget') => 'Ref' 'TreeItem' -> 'Ref' a -> 'IO' ())+--+-- showSelf :: 'Ref' 'TreeItem' -> 'Maybe' 'String' -> 'IO' ()+--+-- swapChildren :: 'Ref' 'TreeItem' -> 'Int' -> 'Int' -> 'IO' ()+--+-- swapChildrenByTreeItem:: ('Parent' a 'TreeItem') => 'Ref' 'TreeItem' -> 'Ref' a -> 'Ref' a -> 'IO' ('Either' 'TreeItemNotFound' ()))+--+-- updatePrevNext :: 'Ref' 'TreeItem' -> 'Int' -> 'IO' ()+--+-- visible :: 'Ref' 'TreeItem' -> 'IO' 'Bool'+--+-- visibleR :: 'Ref' 'TreeItem' -> 'IO' 'Bool'+-- @+++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.TreeItem"+-- @
+ src/Graphics/UI/FLTK/LowLevel/TreePrefs.chs view
@@ -0,0 +1,277 @@+{-# LANGUAGE CPP, UndecidableInstances, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.TreePrefs+       (+         treePrefsNew+         -- * Hierarchy+         --+         -- $hierarchy++         -- * Functions+         --+         -- $functions+       )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Tree_PrefsC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy++{# fun unsafe Fl_Tree_Prefs_New as treePrefsNew' {} -> `Ptr ()' id #}+treePrefsNew :: IO (Ref TreePrefs)+treePrefsNew = treePrefsNew' >>= toRef+{# fun unsafe Fl_Tree_Prefs_item_labelfont as itemLabelfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ (IO (Font))) => Op (GetItemLabelfont ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> itemLabelfont' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_item_labelsize as itemLabelsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ (IO (FontSize))) => Op (GetItemLabelsize ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> itemLabelsize' tree_prefsPtr >>= return . FontSize+{# fun unsafe Fl_Tree_Prefs_set_item_labelsize as setItemLabelsize' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ())) => Op (SetItemLabelsize ()) TreePrefs orig impl where+  runOp _ _ tree_prefs (FontSize val) = withRef tree_prefs $ \tree_prefsPtr -> setItemLabelsize' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_set_item_labelfgcolor as setItemLabelfgcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetItemLabelfgcolor ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setItemLabelfgcolor' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_item_labelbgcolor as itemLabelbgcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ (IO (Color))) => Op (GetItemLabelbgcolor ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> itemLabelbgcolor' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_item_labelbgcolor as setItemLabelbgcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetItemLabelbgcolor ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setItemLabelbgcolor' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_labelfont as labelfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ (IO (Font))) => Op (GetLabelfont ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> labelfont' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_labelfont as setLabelfont' { id `Ptr ()',cFromFont `Font' } -> `()' #}+instance (impl ~ (Font ->  IO ())) => Op (SetLabelfont ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setLabelfont' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_labelsize as labelsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ (IO (FontSize))) => Op (GetLabelsize ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> labelsize' tree_prefsPtr >>= return . FontSize+{# fun unsafe Fl_Tree_Prefs_set_labelsize as setLabelsize' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ())) => Op (SetLabelsize ()) TreePrefs orig impl where+  runOp _ _ tree_prefs (FontSize val) = withRef tree_prefs $ \tree_prefsPtr -> setLabelsize' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_labelfgcolor as labelfgcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ (IO (Color))) => Op (GetLabelfgcolor ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> labelfgcolor' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_labelfgcolor as setLabelfgcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetLabelfgcolor ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setLabelfgcolor' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_labelbgcolor as labelbgcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ (IO (Color))) => Op (GetLabelbgcolor ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> labelbgcolor' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_labelbgcolor as setLabelbgcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetLabelbgcolor ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setLabelbgcolor' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_marginleft as marginleft' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (GetMarginleft ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> marginleft' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_marginleft as setMarginleft' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetMarginleft ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setMarginleft' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_margintop as margintop' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (GetMargintop ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> margintop' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_margintop as setMargintop' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetMargintop ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setMargintop' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_openchild_marginbottom as openchildMarginbottom' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (GetOpenchildMarginbottom ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> openchildMarginbottom' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_openchild_marginbottom as setOpenchildMarginbottom' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetOpenchildMarginbottom ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setOpenchildMarginbottom' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_usericonmarginleft as usericonmarginleft' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (GetUsericonmarginleft ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> usericonmarginleft' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_usericonmarginleft as setUsericonmarginleft' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetUsericonmarginleft ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setUsericonmarginleft' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_labelmarginleft as labelmarginleft' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (GetLabelmarginleft ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> labelmarginleft' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_labelmarginleft as setLabelmarginleft' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetLabelmarginleft ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setLabelmarginleft' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_linespacing as linespacing' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (GetLinespacing ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> linespacing' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_linespacing as setLinespacing' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetLinespacing ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setLinespacing' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_connectorcolor as connectorcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ (IO (Color))) => Op (GetConnectorcolor ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> connectorcolor' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_connectorcolor as setConnectorcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetConnectorcolor ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setConnectorcolor' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_connectorstyle as connectorstyle' { id `Ptr ()' } -> `TreeConnector' cToEnum #}+instance (impl ~ (IO (TreeConnector))) => Op (GetConnectorstyle ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> connectorstyle' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_connectorstyle_with_tree_connector as setConnectorstyle' { id `Ptr ()',cFromEnum  `TreeConnector' } -> `()' #}+instance (impl ~ (TreeConnector -> IO ())) => Op (SetConnectorstyle ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setConnectorstyle' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_connectorwidth as connectorwidth' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (GetConnectorwidth ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> connectorwidth' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_connectorwidth as setConnectorwidth' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetConnectorwidth ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setConnectorwidth' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_openicon as openicon' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Maybe (Ref Image)))) => Op (GetOpenicon ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> openicon' tree_prefsPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_Prefs_set_openicon as setOpenicon' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Image, impl ~ (Ref a  ->  IO ())) => Op (SetOpenicon ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> withRef val $ \valPtr -> setOpenicon' tree_prefsPtr valPtr+{# fun unsafe Fl_Tree_Prefs_closeicon as closeicon' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Maybe (Ref Image)))) => Op (GetCloseicon ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> closeicon' tree_prefsPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_Prefs_set_closeicon as setCloseicon' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Image, impl ~ (Ref a  ->  IO ())) => Op (SetCloseicon ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> withRef val $ \valPtr -> setCloseicon' tree_prefsPtr valPtr+{# fun unsafe Fl_Tree_Prefs_usericon as usericon' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Maybe (Ref Image)))) => Op (GetUsericon ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> usericon' tree_prefsPtr >>= toMaybeRef+{# fun unsafe Fl_Tree_Prefs_set_usericon as setUsericon' { id `Ptr ()',id `Ptr ()' } -> `()' #}+instance (Parent a Image, impl ~ (Ref a  ->  IO ())) => Op (SetUsericon ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> withRef val $ \valPtr -> setUsericon' tree_prefsPtr valPtr+{# fun unsafe Fl_Tree_Prefs_showcollapse as showcollapse' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (GetShowcollapse ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> showcollapse' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_showcollapse as setShowcollapse' { id `Ptr ()', cFromBool `Bool' } -> `()' #}+instance (impl ~ (Bool ->  IO ())) => Op (SetShowcollapse ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setShowcollapse' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_sortorder as sortorder' { id `Ptr ()' } -> `TreeSort' cToEnum #}+instance (impl ~ (IO (TreeSort))) => Op (GetSortorder ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> sortorder' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_sortorder as setSortorder' { id `Ptr ()', cFromEnum `TreeSort' } -> `()' #}+instance (impl ~ (TreeSort ->  IO ())) => Op (SetSortorder ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setSortorder' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_selectbox as selectbox' { id `Ptr ()' } -> `Boxtype' cToEnum #}+instance (impl ~ (IO (Boxtype))) => Op (GetSelectbox ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> selectbox' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_selectbox as setSelectbox' { id `Ptr ()',cFromEnum `Boxtype' } -> `()' #}+instance (impl ~ (Boxtype ->  IO ())) => Op (SetSelectbox ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setSelectbox' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_showroot as showroot' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (GetShowroot ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> showroot' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_showroot as setShowroot' { id `Ptr ()', cFromBool `Bool' } -> `()' #}+instance (impl ~ (Bool ->  IO ())) => Op (SetShowroot ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setShowroot' tree_prefsPtr val+{# fun unsafe Fl_Tree_Prefs_selectmode as selectmode' { id `Ptr ()' } -> `TreeSelect' cToEnum #}+instance (impl ~ (IO (TreeSelect))) => Op (GetSelectmode ()) TreePrefs orig impl where+  runOp _ _ tree_prefs = withRef tree_prefs $ \tree_prefsPtr -> selectmode' tree_prefsPtr+{# fun unsafe Fl_Tree_Prefs_set_selectmode as setSelectmode' { id `Ptr ()', cFromEnum `TreeSelect' } -> `()' #}+instance (impl ~ (TreeSelect ->  IO ())) => Op (SetSelectmode ()) TreePrefs orig impl where+  runOp _ _ tree_prefs val = withRef tree_prefs $ \tree_prefsPtr -> setSelectmode' tree_prefsPtr val++-- $functions+-- @+--+-- getCloseicon :: 'Ref' 'TreePrefs' -> 'IO' ('Maybe' ('Ref' 'Image'))+--+-- getConnectorcolor :: 'Ref' 'TreePrefs' -> 'IO' 'Color'+--+-- getConnectorstyle :: 'Ref' 'TreePrefs' -> 'IO' 'TreeConnector'+--+-- getConnectorwidth :: 'Ref' 'TreePrefs' -> 'IO' 'Int'+--+-- getItemLabelbgcolor :: 'Ref' 'TreePrefs' -> 'IO' 'Color'+--+-- getItemLabelfont :: 'Ref' 'TreePrefs' -> 'IO' 'Font'+--+-- getItemLabelsize :: 'Ref' 'TreePrefs' -> 'IO' 'FontSize'+--+-- getLabelbgcolor :: 'Ref' 'TreePrefs' -> 'IO' 'Color'+--+-- getLabelfgcolor :: 'Ref' 'TreePrefs' -> 'IO' 'Color'+--+-- getLabelfont :: 'Ref' 'TreePrefs' -> 'IO' 'Font'+--+-- getLabelmarginleft :: 'Ref' 'TreePrefs' -> 'IO' 'Int'+--+-- getLabelsize :: 'Ref' 'TreePrefs' -> 'IO' 'FontSize'+--+-- getLinespacing :: 'Ref' 'TreePrefs' -> 'IO' 'Int'+--+-- getMarginleft :: 'Ref' 'TreePrefs' -> 'IO' 'Int'+--+-- getMargintop :: 'Ref' 'TreePrefs' -> 'IO' 'Int'+--+-- getOpenchildMarginbottom :: 'Ref' 'TreePrefs' -> 'IO' 'Int'+--+-- getOpenicon :: 'Ref' 'TreePrefs' -> 'IO' ('Maybe' ('Ref' 'Image'))+--+-- getSelectbox :: 'Ref' 'TreePrefs' -> 'IO' 'Boxtype'+--+-- getSelectmode :: 'Ref' 'TreePrefs' -> 'IO' 'TreeSelect'+--+-- getShowcollapse :: 'Ref' 'TreePrefs' -> 'IO' 'Bool'+--+-- getShowroot :: 'Ref' 'TreePrefs' -> 'IO' 'Bool'+--+-- getSortorder :: 'Ref' 'TreePrefs' -> 'IO' 'TreeSort'+--+-- getUsericon :: 'Ref' 'TreePrefs' -> 'IO' ('Maybe' ('Ref' 'Image'))+--+-- getUsericonmarginleft :: 'Ref' 'TreePrefs' -> 'IO' 'Int'+--+-- setCloseicon:: ('Parent' a 'Image') => 'Ref' 'TreePrefs' -> 'Ref' a -> 'IO' ())+--+-- setConnectorcolor :: 'Ref' 'TreePrefs' -> 'Color' -> 'IO' ()+--+-- setConnectorstyle :: 'Ref' 'TreePrefs' -> 'TreeConnector' -> 'IO' ()+--+-- setConnectorwidth :: 'Ref' 'TreePrefs' -> 'Int' -> 'IO' ()+--+-- setItemLabelbgcolor :: 'Ref' 'TreePrefs' -> 'Color' -> 'IO' ()+--+-- setItemLabelfgcolor :: 'Ref' 'TreePrefs' -> 'Color' -> 'IO' ()+--+-- setItemLabelsize :: 'Ref' 'TreePrefs' -> 'FontSize' -> 'IO' ()+--+-- setLabelbgcolor :: 'Ref' 'TreePrefs' -> 'Color' -> 'IO' ()+--+-- setLabelfgcolor :: 'Ref' 'TreePrefs' -> 'Color' -> 'IO' ()+--+-- setLabelfont :: 'Ref' 'TreePrefs' -> 'Font' -> 'IO' ()+--+-- setLabelmarginleft :: 'Ref' 'TreePrefs' -> 'Int' -> 'IO' ()+--+-- setLabelsize :: 'Ref' 'TreePrefs' -> 'FontSize' -> 'IO' ()+--+-- setLinespacing :: 'Ref' 'TreePrefs' -> 'Int' -> 'IO' ()+--+-- setMarginleft :: 'Ref' 'TreePrefs' -> 'Int' -> 'IO' ()+--+-- setMargintop :: 'Ref' 'TreePrefs' -> 'Int' -> 'IO' ()+--+-- setOpenchildMarginbottom :: 'Ref' 'TreePrefs' -> 'Int' -> 'IO' ()+--+-- setOpenicon:: ('Parent' a 'Image') => 'Ref' 'TreePrefs' -> 'Ref' a -> 'IO' ())+--+-- setSelectbox :: 'Ref' 'TreePrefs' -> 'Boxtype' -> 'IO' ()+--+-- setSelectmode :: 'Ref' 'TreePrefs' -> 'TreeSelect' -> 'IO' ()+--+-- setShowcollapse :: 'Ref' 'TreePrefs' -> 'Bool' -> 'IO' ()+--+-- setShowroot :: 'Ref' 'TreePrefs' -> 'Bool' -> 'IO' ()+--+-- setSortorder :: 'Ref' 'TreePrefs' -> 'TreeSort' -> 'IO' ()+--+-- setUsericon:: ('Parent' a 'Image') => 'Ref' 'TreePrefs' -> 'Ref' a -> 'IO' ())+--+-- setUsericonmarginleft :: 'Ref' 'TreePrefs' -> 'Int' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.TreePrefs"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Utils.hs view
@@ -0,0 +1,265 @@+module Graphics.UI.FLTK.LowLevel.Utils where+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Dispatch+import Data.List+import Foreign+import qualified Foreign.Concurrent as FC+import Foreign.C+import qualified Data.ByteString.Char8 as C+import qualified Data.ByteString as B+import qualified System.IO.Unsafe as Unsafe++foreign import ccall "wrapper"+        mkWidgetCallbackPtr :: CallbackWithUserDataPrim -> IO (FunPtr CallbackWithUserDataPrim)+foreign import ccall "wrapper"+        mkCallbackPtr :: CallbackPrim -> IO (FunPtr CallbackPrim)+foreign import ccall "wrapper"+        mkColorAverageCallbackPtr :: ColorAverageCallbackPrim -> IO (FunPtr ColorAverageCallbackPrim)+foreign import ccall "wrapper"+        mkGlobalEventHandlerPtr :: GlobalEventHandlerPrim -> IO (FunPtr GlobalEventHandlerPrim)+foreign import ccall "wrapper"+        mkDrawCallbackPrimPtr :: DrawCallbackPrim -> IO (FunPtr DrawCallbackPrim)+foreign import ccall "wrapper"+        mkImageDrawCallbackPrimPtr :: ImageDrawCallbackPrim -> IO (FunPtr ImageDrawCallbackPrim)+foreign import ccall "wrapper"+        mkImageCopyCallbackPrimPtr :: ImageCopyCallbackPrim -> IO (FunPtr ImageCopyCallbackPrim)+foreign import ccall "wrapper"+        mkUnfinishedStyleCbPrim :: UnfinishedStyleCbPrim -> IO (FunPtr UnfinishedStyleCbPrim)+foreign import ccall "wrapper"+        mkFinalizer :: (Ptr a -> IO ()) -> IO (FinalizerPtr a)+foreign import ccall "wrapper"+        mkFinalizerEnv :: (Ptr env -> Ptr a -> IO ()) -> IO (FinalizerEnvPtr env a)+foreign import ccall "wrapper"+        wrapBoxDrawFPrim :: BoxDrawFPrim -> IO (FunPtr BoxDrawFPrim)+foreign import ccall "dynamic"+        unwrapGlobalCallbackPtr :: FunPtr GlobalCallback -> GlobalCallback+foreign import ccall "dynamic"+        unwrapBoxDrawFPrim :: FunPtr BoxDrawFPrim -> BoxDrawFPrim+foreign import ccall "wrapper"+        mkTextModifyCb :: TextModifyCbPrim -> IO (FunPtr TextModifyCbPrim)+foreign import ccall "wrapper"+        mkTextPredeleteCb :: TextPredeleteCbPrim -> IO (FunPtr TextPredeleteCbPrim)++toCallbackPrim :: (Ref a -> IO ()) ->+                  IO (FunPtr (Ptr () -> IO ()))+toCallbackPrim f = mkCallbackPtr $ \ptr -> do+  pp <- wrapNonNull ptr "Null pointer. toCallbackPrim"+  f (castTo (wrapInRef pp))++toCallbackPrimWithUserData :: (Ref a -> IO ()) ->+                              IO (FunPtr (Ptr () -> Ptr () -> IO ()))+toCallbackPrimWithUserData f = mkWidgetCallbackPtr $ \ptr _ -> do+  pp <- wrapNonNull ptr "Null pointer: toWidgetCallbackPrim"+  f (castTo (wrapInRef pp))++cFromEnum :: (Enum a, Integral b) => a -> b+cFromEnum = fromIntegral . fromEnum+cToEnum :: (Integral b, Enum a) => b -> a+cToEnum = toEnum . fromIntegral+cToBool :: (Eq a, Num a) => a -> Bool+cToBool status = case status of+                   0 -> False+                   _ -> True+cFromBool :: (Eq a, Num a) => Bool -> a+cFromBool status = if status then 1 else 0++toFunPtr :: (a -> FunPtr a) -> a -> FunPtr a+toFunPtr f a = f a++extract :: (Enum a) => [a] -> CInt -> [a]+extract allCodes compoundCode+    = map cToEnum $+      filter (masks compoundCode) $+      map cFromEnum allCodes++combine :: (Enum a, Ord a) => [a] -> Int+combine = sum . map (fromEnum . head) . group . sort++masks :: CInt -> CInt -> Bool+masks compoundCode code = (compoundCode .&. code) /= 0++keySequenceToCInt :: [EventState] -> KeyType -> CInt+keySequenceToCInt modifiers char =+  let charCode = case char of+        SpecialKeyType c' -> fromIntegral $ fromEnum c'+        NormalKeyType c' -> fromIntegral $ castCharToCChar c'+    in (fromIntegral $ combine modifiers) + charCode++wrapNonNull :: Ptr a -> String -> IO (ForeignPtr (Ptr a))+wrapNonNull ptr msg = if (ptr == nullPtr)+                      then error msg+                      else do+                        pptr <- malloc+                        poke pptr ptr+                        FC.newForeignPtr pptr (return ())+++toGlobalEventHandlerPrim :: GlobalEventHandlerF -> IO (FunPtr GlobalEventHandlerPrim)+toGlobalEventHandlerPrim f = mkGlobalEventHandlerPtr+                             (\eventNumber ->+                                let event = cToEnum (eventNumber :: CInt)+                                in f event >>= return . fromIntegral)++toGlobalCallbackPrim :: GlobalCallback -> IO (FunPtr CallbackPrim)+toGlobalCallbackPrim f = mkCallbackPtr (\_ -> f)++toDrawCallback :: DrawCallback -> IO (FunPtr DrawCallbackPrim)+toDrawCallback f = mkDrawCallbackPrimPtr+                   (\string' length' x' y' -> do+                      str' <- peekCStringLen (string', fromIntegral length')+                      f str' (Position (X (fromIntegral x')) (Y (fromIntegral y'))))++toBoxDrawF :: BoxDrawFPrim -> BoxDrawF+toBoxDrawF boxDrawPrim =+    (\r c ->+       let (x_pos,y_pos,width,height) = fromRectangle r+           colorPrim = cFromColor c+       in+         boxDrawPrim ((fromIntegral x_pos) :: CInt)+                     ((fromIntegral y_pos) :: CInt)+                     ((fromIntegral width) :: CInt)+                     ((fromIntegral height) :: CInt)+                     colorPrim+    )++toBoxDrawFPrim :: BoxDrawF -> BoxDrawFPrim+toBoxDrawFPrim f =+    (\xPrim yPrim wPrim hPrim colorPrim ->+       let r = toRectangle (fromIntegral xPrim,+                            fromIntegral yPrim,+                            fromIntegral wPrim,+                            fromIntegral hPrim)+           c = cToColor colorPrim+       in+           f r c)++toTextModifyCbPrim :: TextModifyCb -> IO (FunPtr TextModifyCbPrim)+toTextModifyCbPrim f =+  mkTextModifyCb+    (+      \pos' nInserted' nDeleted' nRestyled' stringPtr _ ->+       peekCString stringPtr >>=+       f (fromIntegral pos')+         (fromIntegral nInserted')+         (fromIntegral nDeleted')+         (fromIntegral nRestyled')+    )++toTextPredeleteCbPrim :: TextPredeleteCb -> IO (FunPtr TextPredeleteCbPrim)+toTextPredeleteCbPrim f =+  mkTextPredeleteCb+    (+      \pos' nDeleted' _ ->+       f (BufferOffset (fromIntegral pos')) (fromIntegral nDeleted')+    )++toUnfinishedStyleCbPrim :: UnfinishedStyleCb -> IO (FunPtr UnfinishedStyleCbPrim)+toUnfinishedStyleCbPrim f =+    mkUnfinishedStyleCbPrim+     (+       \pos' _ -> f (BufferOffset (fromIntegral pos'))+     )++orNullFunPtr :: (a -> IO (FunPtr b)) -> Maybe a -> IO (FunPtr b)+orNullFunPtr = maybe (return nullFunPtr)++arrayToRefs:: (Ptr (Ptr ())) -> Int -> IO [(Ref a)]+arrayToRefs arrayPtr numElements =+    go arrayPtr numElements []+    where+      go _ 0 accum =  return accum+      go currPtr numLeft accum = do+        curr <- peek currPtr+        ref <- toRef curr+        go (currPtr `plusPtr` (sizeOf (undefined :: Ptr (Ptr a))))+           (numLeft - 1)+           (accum ++ [ref])++refOrError :: String -> Ptr () -> IO (Ref b)+refOrError errorMessage p = wrapNonNull p errorMessage >>=+                               return . wrapInRef+toShortcut :: [KeyType] -> FlShortcut+toShortcut =+  fromIntegral .+  sum .+  map+   (\k -> case k of+     (SpecialKeyType sk') -> fromEnum sk'+     (NormalKeyType c') -> fromEnum c'+   )++cToKeyType :: CInt -> KeyType+cToKeyType cint =+  let findSpecialKey = find+                        (\sk -> cint == (fromIntegral $ fromEnum sk))+                        allSpecialKeys+  in+  case findSpecialKey of+    Just sk -> SpecialKeyType sk+    Nothing -> NormalKeyType (toEnum $ fromIntegral cint)++cFromKeyType :: KeyType -> CInt+cFromKeyType kt = case kt of+  SpecialKeyType sk -> fromIntegral $ fromEnum sk+  NormalKeyType nk -> fromIntegral $ fromEnum nk++toRef ::  Ptr () -> IO (Ref a)+toRef ptr = throwStackOnError $+                  do+                    pp <- wrapNonNull ptr "Null Pointer Error"+                    let result = wrapInRef pp+                    return $ result++unsafeToRef :: Ptr () -> (Ref a)+unsafeToRef = Unsafe.unsafePerformIO . toRef++toMaybeRef :: Ptr () -> IO (Maybe (Ref a))+toMaybeRef ptr' = if ptr' == nullPtr then return Nothing else toRef ptr' >>= return . Just++supressWarningAboutRes :: a -> ()+supressWarningAboutRes _ = ()++foldl1WithDefault :: a -> (a -> a -> a) -> [a] -> a+foldl1WithDefault emptyCase _ [] = emptyCase+foldl1WithDefault _ f as = foldl1 f as++integralToMaybe :: (Integral a, Integral b) => a -> Maybe b+integralToMaybe n = if (n == 0) then Nothing else (Just $ fromIntegral n)++countDirectionToCChar :: CountDirection -> CChar+countDirectionToCChar d =+  case d of+   CountUp -> 1+   CountDown -> 0++ccharToCountDirection :: CChar -> CountDirection+ccharToCountDirection c = if (c == 0) then CountDown else CountUp++oneKb :: Int+oneKb = 1024++alignmentsToInt :: Alignments -> Int+alignmentsToInt (Alignments aligntypes') = combine aligntypes'+intToAlignments :: Int -> Alignments+intToAlignments = Alignments . extract allAlignTypes . fromIntegral++menuItemFlagsToInt :: MenuItemFlags -> Int+menuItemFlagsToInt (MenuItemFlags menuItemFlags') = combine menuItemFlags'+intToMenuItemFlags :: Int -> MenuItemFlags+intToMenuItemFlags = MenuItemFlags . extract allMenuItemFlags . fromIntegral++withByteStrings :: [B.ByteString] -> (Ptr (Ptr CChar) -> IO a) -> IO a+withByteStrings bs f = B.useAsCString (foldl1 B.append bs) (\ptr -> new ptr >>= f)++withPixmap :: PixmapHs -> ((Ptr (Ptr CChar)) -> IO a) -> IO a+withPixmap (PixmapHs pixmap) f = withByteStrings pixmap f++withBitmap :: BitmapHs -> ((Ptr CChar) -> Int -> Int -> IO a) -> IO a+withBitmap (BitmapHs bitmap (Size (Width width') (Height height'))) f =+   B.useAsCString+     bitmap+     (\ptr -> f ptr width' height')++withStrings :: [String] -> (Ptr (Ptr CChar) -> IO a) -> IO a+withStrings ss f = withByteStrings (map C.pack ss) f
+ src/Graphics/UI/FLTK/LowLevel/Valuator.chs view
@@ -0,0 +1,156 @@+{-# LANGUAGE CPP, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Valuator+    (+     -- * Constructor+     valuatorNew,+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_ValuatorC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Widget+import Data.Ratio++{# fun Fl_Valuator_New as valuatorNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Valuator_New_WithLabel as valuatorNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_OverriddenValuator_New_WithLabel as overriddenValuatorNewWithLabel' { `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenValuator_New as overriddenValuatorNew' { `Int',`Int',`Int',`Int', id `Ptr ()'} -> `Ptr ()' id #}+valuatorNew :: Rectangle -> Maybe String -> Maybe (CustomWidgetFuncs Valuator) -> IO (Ref Valuator)+valuatorNew rectangle l' funcs' =+  widgetMaker+    rectangle+    l'+    funcs'+    valuatorNew'+    valuatorNewWithLabel'+    overriddenValuatorNew'+    overriddenValuatorNewWithLabel'++{# fun Fl_Valuator_Destroy as valuatorDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Valuator orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+                                        valuatorDestroy' winPtr+                                        return nullPtr+{#fun Fl_Valuator_handle as valuatorHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Valuator orig impl where+  runOp _ _ valuator event = withRef valuator (\p -> valuatorHandle' p (fromIntegral . fromEnum $ event))+{# fun Fl_Valuator_resize_super as resizeSuper' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rectangle ->  IO ())) => Op (ResizeSuper ()) Valuator orig impl where+  runOp _ _ valuator rectangle = withRef valuator $ \valuatorPtr -> do+                                 let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+                                 resizeSuper' valuatorPtr x_pos y_pos w_pos h_pos+{# fun Fl_Valuator_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rectangle -> IO ())) => Op (Resize ()) Valuator orig impl where+  runOp _ _ valuator rectangle = withRef valuator $ \valuatorPtr -> do+                                 let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+                                 resize' valuatorPtr x_pos y_pos w_pos h_pos+{# fun unsafe Fl_Valuator_bounds as bounds' { id `Ptr ()',`Double',`Double' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Double -> Double ->  IO ())) => Op (Bounds ()) Valuator orig impl where+  runOp _ _ valuator a b = withRef valuator $ \valuatorPtr -> bounds' valuatorPtr a b+{# fun unsafe Fl_Valuator_minimum as minimum' { id `Ptr ()' } -> `Double' #}+instance (impl ~ ( IO (Double))) => Op (GetMinimum ()) Valuator orig impl where+  runOp _ _ valuator = withRef valuator $ \valuatorPtr -> minimum' valuatorPtr+{# fun unsafe Fl_Valuator_set_minimum as setMinimum' { id `Ptr ()',`Double' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Double ->  IO ())) => Op (SetMinimum ()) Valuator orig impl where+  runOp _ _ valuator a = withRef valuator $ \valuatorPtr -> setMinimum' valuatorPtr a+{# fun unsafe Fl_Valuator_maximum as maximum' { id `Ptr ()' } -> `Double' #}+instance (impl ~ ( IO (Double))) => Op (GetMaximum ()) Valuator orig impl where+  runOp _ _ valuator = withRef valuator $ \valuatorPtr -> maximum' valuatorPtr+{# fun unsafe Fl_Valuator_set_maximum as setMaximum' { id `Ptr ()',`Double' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Double ->  IO ())) => Op (SetMaximum ()) Valuator orig impl where+  runOp _ _ valuator a = withRef valuator $ \valuatorPtr -> setMaximum' valuatorPtr a+{# fun unsafe Fl_Valuator_range as range' { id `Ptr ()',`Double',`Double' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Double -> Double ->  IO ())) => Op (Range ()) Valuator orig impl where+  runOp _ _ valuator a b = withRef valuator $ \valuatorPtr -> range' valuatorPtr a b+{# fun unsafe Fl_Valuator_set_step_with_a_b as setStepWithAB' { id `Ptr ()', `Double', `Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rational -> IO ())) => Op (SetStep ()) Valuator orig impl where+  runOp _ _ valuator r = withRef valuator $ \valuatorPtr -> setStepWithAB' valuatorPtr (fromIntegral (denominator r)) (fromIntegral (numerator r))+{# fun unsafe Fl_Valuator_step as step' { id `Ptr ()' } -> `Double' #}+instance (impl ~ ( IO (Rational))) => Op (GetStep ()) Valuator orig impl where+  runOp _ _ valuator = withRef valuator $ \valuatorPtr -> step' valuatorPtr >>= \r -> return $ approxRational r 0+{# fun unsafe Fl_Valuator_precision as precision' { id `Ptr ()',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Int ->  IO ())) => Op (Precision ()) Valuator orig impl where+  runOp _ _ valuator p' = withRef valuator $ \valuatorPtr -> precision' valuatorPtr p'+{# fun unsafe Fl_Valuator_value as value' { id `Ptr ()' } -> `Double' #}+instance (impl ~ ( IO (Double))) => Op (GetValue ()) Valuator orig impl where+  runOp _ _ valuator = withRef valuator $ \valuatorPtr -> value' valuatorPtr+{# fun unsafe Fl_Valuator_set_value as setValue' { id `Ptr ()',`Double' } -> `Int' #}+instance (impl ~ (Double ->  IO (Int))) => Op (SetValue ()) Valuator orig impl where+  runOp _ _ valuator v = withRef valuator $ \valuatorPtr -> setValue' valuatorPtr v+{# fun unsafe Fl_Valuator_format as format' { id `Ptr ()',`String' } -> `Int' #}+instance (impl ~ (String ->  IO (Int))) => Op (Format ()) Valuator orig impl where+  runOp _ _ valuator f = withRef valuator $ \valuatorPtr -> format' valuatorPtr f+{# fun unsafe Fl_Valuator_round as round' { id `Ptr ()',`Double' } -> `Double' #}+instance (impl ~ (Double ->  IO (Double))) => Op (Round ()) Valuator orig impl where+  runOp _ _ valuator v = withRef valuator $ \valuatorPtr -> round' valuatorPtr v+{# fun unsafe Fl_Valuator_clamp as clamp' { id `Ptr ()',`Double' } -> `Double' #}+instance (impl ~ (Double ->  IO (Double))) => Op (Clamp ()) Valuator orig impl where+  runOp _ _ valuator v = withRef valuator $ \valuatorPtr -> clamp' valuatorPtr v+{# fun unsafe Fl_Valuator_increment as increment' { id `Ptr ()',`Double',`Int' } -> `Double' #}+instance (impl ~ (Double -> Int ->  IO (Double))) => Op (Increment ()) Valuator orig impl where+  runOp _ _ valuator v n = withRef valuator $ \valuatorPtr -> increment' valuatorPtr v n++-- $functions+-- @+--+-- bounds :: 'Ref' 'Valuator' -> 'Double' -> 'Double' -> 'IO' ()+--+-- clamp :: 'Ref' 'Valuator' -> 'Double' -> 'IO' 'Double'+--+-- destroy :: 'Ref' 'Valuator' -> 'IO' ()+--+-- format :: 'Ref' 'Valuator' -> 'String' -> 'IO' 'Int'+--+-- getMaximum :: 'Ref' 'Valuator' -> 'IO' 'Double'+--+-- getMinimum :: 'Ref' 'Valuator' -> 'IO' 'Double'+--+-- getStep :: 'Ref' 'Valuator' -> 'IO' 'Rational'+--+-- getValue :: 'Ref' 'Valuator' -> 'IO' 'Double'+--+-- handle :: 'Ref' 'Valuator' -> 'Event' -> 'IO' 'Int'+--+-- increment :: 'Ref' 'Valuator' -> 'Double' -> 'Int' -> 'IO' 'Double'+--+-- precision :: 'Ref' 'Valuator' -> 'Int' -> 'IO' ()+--+-- range :: 'Ref' 'Valuator' -> 'Double' -> 'Double' -> 'IO' ()+--+-- resize :: 'Ref' 'Valuator' -> 'Rectangle' -> 'IO' ()+--+-- resizeSuper :: 'Ref' 'Valuator' -> 'Rectangle' -> 'IO' ()+--+-- round :: 'Ref' 'Valuator' -> 'Double' -> 'IO' 'Double'+--+-- setMaximum :: 'Ref' 'Valuator' -> 'Double' -> 'IO' ()+--+-- setMinimum :: 'Ref' 'Valuator' -> 'Double' -> 'IO' ()+--+-- setStep :: 'Ref' 'Valuator' -> 'Rational' -> 'IO' ()+--+-- setValue :: 'Ref' 'Valuator' -> 'Double' -> 'IO' 'Int'+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+-- @
+ src/Graphics/UI/FLTK/LowLevel/ValueInput.chs view
@@ -0,0 +1,119 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.ValueInput+    (+     -- * Constructor+     valueInputNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Value_InputC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Value_Input_New as valueInputNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Value_Input_New_WithLabel as valueInputNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+valueInputNew :: Rectangle -> Maybe String -> IO (Ref ValueInput)+valueInputNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> valueInputNew' x_pos y_pos width height >>=+                             toRef+        Just l -> valueInputNewWithLabel' x_pos y_pos width height l >>=+                               toRef++{# fun Fl_Value_Input_Destroy as valueInputDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) ValueInput orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+    valueInputDestroy' winPtr+    return nullPtr+{#fun Fl_Value_Input_handle as valueInputHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) ValueInput orig impl where+  runOp _ _ valueInput event = withRef valueInput (\p -> valueInputHandle' p (fromIntegral . fromEnum $ event))+{# fun unsafe Fl_Value_Input_soft as soft' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ ( IO (Bool))) => Op (GetSoft ()) ValueInput orig impl where+  runOp _ _ value_input = withRef value_input $ \value_inputPtr -> soft' value_inputPtr+{# fun unsafe Fl_Value_Input_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' #}+instance (impl ~ (Rectangle ->  IO ())) => Op (Resize ()) ValueInput orig impl where+  runOp _ _ value_input rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in withRef value_input $ \value_inputPtr -> resize' value_inputPtr x_pos' y_pos' width' height'+{# fun unsafe Fl_Value_Input_set_soft as setSoft' { id `Ptr ()',cFromBool `Bool' } -> `()' #}+instance (impl ~ (Bool->  IO ())) => Op (SetSoft ()) ValueInput orig impl where+  runOp _ _ value_input s = withRef value_input $ \value_inputPtr -> setSoft' value_inputPtr s+{# fun unsafe Fl_Value_Input_shortcut as shortcut' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetShortcut ()) ValueInput orig impl where+  runOp _ _ value_input = withRef value_input $ \value_inputPtr -> shortcut' value_inputPtr+{# fun unsafe Fl_Value_Input_set_shortcut as setShortcut' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetShortcut ()) ValueInput orig impl where+  runOp _ _ value_input v = withRef value_input $ \value_inputPtr -> setShortcut' value_inputPtr v+{# fun unsafe Fl_Value_Input_textfont as textfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ ( IO (Font))) => Op (GetTextfont ()) ValueInput orig impl where+  runOp _ _ value_input = withRef value_input $ \value_inputPtr -> textfont' value_inputPtr+{# fun unsafe Fl_Value_Input_set_textfont as setTextfont' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetTextfont ()) ValueInput orig impl where+  runOp _ _ value_input v = withRef value_input $ \value_inputPtr -> setTextfont' value_inputPtr v+{# fun unsafe Fl_Value_Input_textsize as textsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ ( IO (FontSize))) => Op (GetTextsize ()) ValueInput orig impl where+  runOp _ _ value_input = withRef value_input $ \value_inputPtr -> textsize' value_inputPtr >>= return . FontSize+{# fun unsafe Fl_Value_Input_set_textsize as setTextsize' { id `Ptr ()',id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ())) => Op (SetTextsize ()) ValueInput orig impl where+  runOp _ _ value_input (FontSize v) = withRef value_input $ \value_inputPtr -> setTextsize' value_inputPtr v+{# fun unsafe Fl_Value_Input_textcolor as textcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetTextcolor ()) ValueInput orig impl where+  runOp _ _ value_input = withRef value_input $ \value_inputPtr -> textcolor' value_inputPtr+{# fun unsafe Fl_Value_Input_set_textcolor as setTextcolor' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetTextcolor ()) ValueInput orig impl where+  runOp _ _ value_input (Color v) = withRef value_input $ \value_inputPtr -> setTextcolor' value_inputPtr (fromIntegral v)++-- $functions+-- @+--+-- destroy :: 'Ref' 'ValueInput' -> 'IO' ()+--+-- getShortcut :: 'Ref' 'ValueInput' -> 'IO' 'Int'+--+-- getSoft :: 'Ref' 'ValueInput' -> 'IO' 'Bool'+--+-- getTextcolor :: 'Ref' 'ValueInput' -> 'IO' 'Color'+--+-- getTextfont :: 'Ref' 'ValueInput' -> 'IO' 'Font'+--+-- getTextsize :: 'Ref' 'ValueInput' -> 'IO' 'FontSize'+--+-- handle :: 'Ref' 'ValueInput' -> 'Event' -> 'IO' 'Int'+--+-- resize :: 'Ref' 'ValueInput' -> 'Rectangle' -> 'IO' ()+--+-- setShortcut :: 'Ref' 'ValueInput' -> 'Int' -> 'IO' ()+--+-- setSoft :: 'Ref' 'ValueInput' -> 'Bool' -> 'IO' ()+--+-- setTextcolor :: 'Ref' 'ValueInput' -> 'Color' -> 'IO' ()+--+-- setTextfont :: 'Ref' 'ValueInput' -> 'Int' -> 'IO' ()+--+-- setTextsize :: 'Ref' 'ValueInput' -> 'FontSize' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.ValueInput"+-- @
+ src/Graphics/UI/FLTK/LowLevel/ValueOutput.chs view
@@ -0,0 +1,110 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.ValueOutput+    (+     -- * Constructor+     valueOutputNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Value_OutputC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Value_Output_New as valueOutputNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Value_Output_New_WithLabel as valueOutputNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+valueOutputNew :: Rectangle -> Maybe String -> IO (Ref ValueOutput)+valueOutputNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> valueOutputNew' x_pos y_pos width height >>=+                             toRef+        Just l -> valueOutputNewWithLabel' x_pos y_pos width height l >>=+                               toRef++{# fun Fl_Value_Output_Destroy as valueOutputDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ IO ()) => Op (Destroy ()) ValueOutput orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+    valueOutputDestroy' winPtr+    return nullPtr++{#fun Fl_Value_Output_handle as valueOutputHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) ValueOutput orig impl where+  runOp _ _ valueOutput event = withRef valueOutput (\p -> valueOutputHandle' p (fromIntegral . fromEnum $ event))+{# fun unsafe Fl_Value_Output_soft as soft' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ ( IO (Bool))) => Op (GetSoft ()) ValueOutput orig impl where+  runOp _ _ value_input = withRef value_input $ \value_inputPtr -> soft' value_inputPtr+{# fun unsafe Fl_Value_Output_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' #}+instance (impl ~ (Rectangle ->  IO ())) => Op (Resize ()) ValueOutput orig impl where+  runOp _ _ value_input rectangle = let (x_pos', y_pos', width', height') = fromRectangle rectangle in withRef value_input $ \value_inputPtr -> resize' value_inputPtr x_pos' y_pos' width' height'+{# fun unsafe Fl_Value_Output_set_soft as setSoft' { id `Ptr ()',cFromBool `Bool' } -> `()' #}+instance (impl ~ (Bool->  IO ())) => Op (SetSoft ()) ValueOutput orig impl where+  runOp _ _ value_input s = withRef value_input $ \value_inputPtr -> setSoft' value_inputPtr s+{# fun unsafe Fl_Value_Output_textfont as textfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ ( IO (Font))) => Op (GetTextfont ()) ValueOutput orig impl where+  runOp _ _ value_input = withRef value_input $ \value_inputPtr -> textfont' value_inputPtr+{# fun unsafe Fl_Value_Output_set_textfont as setTextfont' { id `Ptr ()',`Int' } -> `()' #}+instance (impl ~ (Int ->  IO ())) => Op (SetTextfont ()) ValueOutput orig impl where+  runOp _ _ value_input v = withRef value_input $ \value_inputPtr -> setTextfont' value_inputPtr v+{# fun unsafe Fl_Value_Output_textsize as textsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ ( IO (FontSize))) => Op (GetTextsize ()) ValueOutput orig impl where+  runOp _ _ value_input = withRef value_input $ \value_inputPtr -> textsize' value_inputPtr >>= return . FontSize+{# fun unsafe Fl_Value_Output_set_textsize as setTextsize' { id `Ptr ()',id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ())) => Op (SetTextsize ()) ValueOutput orig impl where+  runOp _ _ value_input (FontSize v) = withRef value_input $ \value_inputPtr -> setTextsize' value_inputPtr v+{# fun unsafe Fl_Value_Output_textcolor as textcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetTextcolor ()) ValueOutput orig impl where+  runOp _ _ value_input = withRef value_input $ \value_inputPtr -> textcolor' value_inputPtr+{# fun unsafe Fl_Value_Output_set_textcolor as setTextcolor' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetTextcolor ()) ValueOutput orig impl where+  runOp _ _ value_input (Color v) = withRef value_input $ \value_inputPtr -> setTextcolor' value_inputPtr (fromIntegral v)++-- $functions+-- @+--+-- destroy :: 'Ref' 'ValueOutput' -> 'IO' ()+--+-- getSoft :: 'Ref' 'ValueOutput' -> 'IO' 'Bool'+--+-- getTextcolor :: 'Ref' 'ValueOutput' -> 'IO' 'Color'+--+-- getTextfont :: 'Ref' 'ValueOutput' -> 'IO' 'Font'+--+-- getTextsize :: 'Ref' 'ValueOutput' -> 'IO' 'FontSize'+--+-- handle :: 'Ref' 'ValueOutput' -> 'Event' -> 'IO' 'Int'+--+-- resize :: 'Ref' 'ValueOutput' -> 'Rectangle' -> 'IO' ()+--+-- setSoft :: 'Ref' 'ValueOutput' -> 'Bool' -> 'IO' ()+--+-- setTextcolor :: 'Ref' 'ValueOutput' -> 'Color' -> 'IO' ()+--+-- setTextfont :: 'Ref' 'ValueOutput' -> 'Int' -> 'IO' ()+--+-- setTextsize :: 'Ref' 'ValueOutput' -> 'FontSize' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.ValueOutput"+-- @
+ src/Graphics/UI/FLTK/LowLevel/ValueSlider.chs view
@@ -0,0 +1,104 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.ValueSlider+       (+         -- * Constructor+         valueSliderNew+         -- * Hierarchy+         --+         -- $hierarchy++         -- * Functions+         --+         -- $functions+       )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_Value_SliderC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Value_Slider_New as valueSliderNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Value_Slider_New_WithLabel as valueSliderNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+valueSliderNew :: Rectangle -> Maybe String -> IO (Ref ValueSlider)+valueSliderNew rectangle l'=+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case l' of+        Nothing -> valueSliderNew' x_pos y_pos width height >>= toRef+        Just l -> valueSliderNewWithLabel' x_pos y_pos width height l >>= toRef++-- {# fun Fl_Hor_Value_Slider_New as horValueSliderNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+-- {# fun Fl_Hor_Value_Slider_New_WithLabel as horValueSliderNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+-- horValueSliderNew :: Rectangle -> Maybe String -> IO (HorValueSlider ())+-- horValueSliderNew rectangle l'=+--     let (x_pos, y_pos, width, height) = fromRectangle rectangle+--     in case l' of+--         Nothing -> horValueSliderNew' x_pos y_pos width height >>= toRef+--         Just l -> horValueSliderNewWithLabel' x_pos y_pos width height l >>= toRef++{# fun Fl_Value_Slider_Destroy as valueSliderDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) ValueSlider orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+    valueSliderDestroy' winPtr+    return nullPtr+{#fun Fl_Value_Slider_handle as valueSliderHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) ValueSlider orig impl where+  runOp _ _ valueSlider event = withRef valueSlider (\p -> valueSliderHandle' p (fromIntegral . fromEnum $ event))+{# fun unsafe Fl_Value_Slider_textfont as textfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ ( IO (Font))) => Op (GetTextfont ()) ValueSlider orig impl where+  runOp _ _ value_slider = withRef value_slider $ \value_sliderPtr -> textfont' value_sliderPtr+{# fun unsafe Fl_Value_Slider_set_textfont as setTextfont' { id `Ptr ()',cFromFont `Font' } -> `()' #}+instance (impl ~ (Font ->  IO ())) => Op (SetTextfont ()) ValueSlider orig impl where+  runOp _ _ value_slider s = withRef value_slider $ \value_sliderPtr -> setTextfont' value_sliderPtr s+{# fun unsafe Fl_Value_Slider_textsize as textsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ ( IO (FontSize))) => Op (GetTextsize ()) ValueSlider orig impl where+  runOp _ _ value_slider = withRef value_slider $ \value_sliderPtr -> textsize' value_sliderPtr >>= return . FontSize+{# fun unsafe Fl_Value_Slider_set_textsize as setTextsize' { id `Ptr ()', id `CInt' } -> `()' #}+instance (impl ~ (FontSize ->  IO ())) => Op (SetTextsize ()) ValueSlider orig impl where+  runOp _ _ value_slider (FontSize s) = withRef value_slider $ \value_sliderPtr -> setTextsize' value_sliderPtr s+{# fun unsafe Fl_Value_Slider_textcolor as textcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ ( IO (Color))) => Op (GetTextcolor ()) ValueSlider orig impl where+  runOp _ _ value_slider = withRef value_slider $ \value_sliderPtr -> textcolor' value_sliderPtr+{# fun unsafe Fl_Value_Slider_set_textcolor as setTextcolor' { id `Ptr ()',cFromColor `Color' } -> `()' #}+instance (impl ~ (Color ->  IO ())) => Op (SetTextcolor ()) ValueSlider orig impl where+  runOp _ _ value_slider s = withRef value_slider $ \value_sliderPtr -> setTextcolor' value_sliderPtr s++-- $functions+-- @+--+-- destroy :: 'Ref' 'ValueSlider' -> 'IO' ()+--+-- getTextcolor :: 'Ref' 'ValueSlider' -> 'IO' 'Color'+--+-- getTextfont :: 'Ref' 'ValueSlider' -> 'IO' 'Font'+--+-- getTextsize :: 'Ref' 'ValueSlider' -> 'IO' 'FontSize'+--+-- handle :: 'Ref' 'ValueSlider' -> 'Event' -> 'IO' 'Int'+--+-- setTextcolor :: 'Ref' 'ValueSlider' -> 'Color' -> 'IO' ()+--+-- setTextfont :: 'Ref' 'ValueSlider' -> 'Font' -> 'IO' ()+--+-- setTextsize :: 'Ref' 'ValueSlider' -> 'FontSize' -> 'IO' ()+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Valuator"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Slider"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.ValueSlider"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Widget.chs view
@@ -0,0 +1,660 @@+{-# LANGUAGE CPP, RankNTypes, UndecidableInstances, GADTs, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Widget+    (+     -- * Constructor+     widgetCustom,+     widgetMaker,+     -- * Custom+     CustomWidgetFuncs(..),+     defaultCustomWidgetFuncs,+     fillCustomWidgetFunctionStruct,+     customWidgetFunctionStruct,+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Widget Functions+     --+     -- $widgetfunctions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_WidgetC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy++type RectangleFPrim              = Ptr () -> CInt -> CInt -> CInt -> CInt -> IO ()++foreign import ccall "wrapper"+        mkWidgetEventHandler :: (Ptr () -> CInt -> IO CInt) -> IO (FunPtr (Ptr () -> CInt -> IO CInt))+foreign import ccall "wrapper"+        mkRectanglePtr :: RectangleFPrim -> IO (FunPtr RectangleFPrim)++toRectangleFPrim ::  (Ref a -> Rectangle -> IO ()) ->+                     IO (FunPtr (Ptr () -> CInt -> CInt -> CInt -> CInt -> IO ()))+toRectangleFPrim f = mkRectanglePtr $ \wPtr x_pos y_pos width height ->+  let rectangle = toRectangle (fromIntegral x_pos,+                               fromIntegral y_pos,+                               fromIntegral width,+                               fromIntegral height)+  in do+  fptr <- wrapNonNull wPtr "Null Pointer. toRectangleFPrim"+  f (wrapInRef fptr) rectangle++toEventHandlerPrim :: (Ref a -> Event -> IO Int) ->+                      IO (FunPtr (Ptr () -> CInt -> IO CInt))+toEventHandlerPrim f = mkWidgetEventHandler $+                       \wPtr eventNumber ->+                            let event = cToEnum (eventNumber :: CInt)+                            in do+                            fptr <- wrapNonNull wPtr "Null Pointer: toEventHandlerPrim"+                            result <- f (wrapInRef fptr) event+                            return $ fromIntegral result++-- | Overrideable 'Widget' functions+data CustomWidgetFuncs a =+    CustomWidgetFuncs+    {+     -- | See <http://www.fltk.org/doc-1.3/classFl__Widget.html#a1acb38c6b3cb40452ad02ccfeedbac8a Fl_Widget::draw>+     drawCustom   :: Maybe (Ref a -> IO ())+     -- | See <http://www.fltk.org/doc-1.3/classFl__Widget.html#a9cb17cc092697dfd05a3fab55856d218 Fl_Widget::handle>+    ,handleCustom :: Maybe (Ref a -> Event -> IO Int)+     -- | See <http://www.fltk.org/doc-1.3/classFl__Widget.html#aca98267e7a9b94f699ebd27d9f59e8bb Fl_Widget::resize>+    ,resizeCustom :: Maybe (Ref a -> Rectangle -> IO ())+     -- | See <http://www.fltk.org/doc-1.3/classFl__Widget.html#ab572c6fbc922bf3268b72cf9e2939606 Fl_Widget::show>+    ,showCustom   :: Maybe (Ref a -> IO ())+     -- | See <http://www.fltk.org/doc-1.3/classFl__Widget.html#a1fe8405b86da29d147dc3b5841cf181c Fl_Widget::hide>+    ,hideCustom   :: Maybe (Ref a -> IO ())+    }+++-- | Fill up a struct with pointers to functions on the Haskell side that will get called instead of the default ones.+--+-- Fill up the 'Widget' part the function pointer struct.+--+-- Only of interest to 'Widget' contributors+fillCustomWidgetFunctionStruct :: forall a. (Parent a Widget) =>+                                  Ptr () ->+                                  CustomWidgetFuncs a ->+                                  IO ()+fillCustomWidgetFunctionStruct structPtr (CustomWidgetFuncs _draw' _handle' _resize' _show' _hide') = do+      toCallbackPrim `orNullFunPtr` _draw'       >>= {#set fl_Widget_Virtual_Funcs->draw#} structPtr+      toEventHandlerPrim `orNullFunPtr` _handle' >>= {#set fl_Widget_Virtual_Funcs->handle#} structPtr+      toRectangleFPrim `orNullFunPtr` _resize'   >>= {#set fl_Widget_Virtual_Funcs->resize#} structPtr+      toCallbackPrim `orNullFunPtr` _show'       >>= {#set fl_Widget_Virtual_Funcs->show#} structPtr+      toCallbackPrim `orNullFunPtr` _hide'       >>= {#set fl_Widget_Virtual_Funcs->hide#} structPtr++{# fun unsafe Fl_Widget_default_virtual_funcs as virtualFuncs' {} -> `Ptr ()' id #}+-- | Given a record of functions, return a pointer to a struct with function pointers back+-- to those functions.+--+-- Only of interest to 'Widget' contributors.+customWidgetFunctionStruct :: forall a. (Parent a Widget) =>+                              CustomWidgetFuncs a ->+                              IO (Ptr ())+customWidgetFunctionStruct customWidgetFuncs' = do+  p <- virtualFuncs'+  fillCustomWidgetFunctionStruct p customWidgetFuncs'+  return p++-- | An empty set of functions to pass to 'widgetCustom'.+defaultCustomWidgetFuncs :: forall a. (Parent a Widget) => CustomWidgetFuncs a+defaultCustomWidgetFuncs = CustomWidgetFuncs+                            Nothing+                            Nothing+                            Nothing+                            Nothing+                            Nothing++-- | Lots of 'Widget' subclasses have the same constructor parameters. This function consolidates them.+--+-- Only of interest to 'Widget' contributors.+widgetMaker :: forall a. (Parent a Widget) =>+               Rectangle                                                          -- ^ Position and size+               -> Maybe String                                                    -- ^ Title+               -> Maybe (CustomWidgetFuncs a)                                     -- ^ Custom functions+               -> (Int -> Int -> Int -> Int -> IO ( Ptr ()))                      -- ^ Foreign constructor to call if neither title nor custom functions are given+               -> (Int -> Int -> Int -> Int -> String -> IO ( Ptr () ))           -- ^ Foreign constructor to call if only title is given+               -> (Int -> Int -> Int -> Int -> Ptr () -> IO ( Ptr () ))           -- ^ Foreign constructor to call if only custom functions are given+               -> (Int -> Int -> Int -> Int -> String -> Ptr () -> IO ( Ptr () )) -- ^ Foreign constructor to call if both title and custom functions are given+               -> IO (Ref a)                                                      -- ^ Reference to the widget+widgetMaker rectangle _label' customFuncs' new' newWithLabel' newWithCustomFuncs' newWithCustomFuncsLabel' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case (_label', customFuncs') of+        (Nothing,Nothing) -> new' x_pos y_pos width height >>= toRef+        ((Just l), Nothing) -> newWithLabel' x_pos y_pos width height l >>= toRef+        ((Just l), (Just fs)) -> do+          ptr <- customWidgetFunctionStruct fs+          newWithCustomFuncsLabel' x_pos y_pos width height l (castPtr ptr) >>= toRef+        (Nothing, (Just fs)) -> do+          ptr <- customWidgetFunctionStruct fs+          newWithCustomFuncs' x_pos y_pos width height (castPtr ptr) >>= toRef++{# fun Fl_Widget_New as widgetNew' { `Int',`Int',`Int',`Int' } -> `Ptr ()' id #}+{# fun Fl_Widget_New_WithLabel as widgetNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+{# fun Fl_OverriddenWidget_New_WithLabel as overriddenWidgetNewWithLabel' { `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenWidget_New as overriddenWidgetNew' { `Int',`Int',`Int',`Int', id `Ptr ()'} -> `Ptr ()' id #}+-- | Widget constructor.+widgetCustom :: Rectangle+                -> Maybe String+                -> CustomWidgetFuncs Widget+                -> IO (Ref Widget)+widgetCustom rectangle l' funcs' =+  widgetMaker+    rectangle+    l'+    (Just  funcs')+    widgetNew'+    widgetNewWithLabel'+    overriddenWidgetNew'+    overriddenWidgetNewWithLabel'++{# fun Fl_Widget_Destroy as widgetDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~  IO ()) => Op (Destroy ()) Widget orig impl where+  runOp _ _ win = swapRef win $ \winPtr -> do+    widgetDestroy' winPtr+    return nullPtr++{#fun Fl_Widget_handle as widgetHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Widget orig impl where+  runOp _ _ widget event = withRef widget (\p -> widgetHandle' p (fromIntegral . fromEnum $ event))++{#fun Fl_Widget_parent as widgetParent' { id `Ptr ()'} -> `Ptr ()' id #}+instance (impl ~  IO (Maybe (Ref Group))) => Op (GetParent ()) Widget orig impl where+  runOp _ _ widget = withRef widget widgetParent' >>= toMaybeRef++{#fun Fl_Widget_set_parent as widgetSetParent' { id `Ptr ()', id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (Parent a Group, impl ~ (Ref a -> IO ())) => Op (SetParent ()) Widget orig impl where+  runOp _ _ widget group =+      withRef widget+      (\widgetPtr ->+        withRef group (\groupPtr ->+                        widgetSetParent' widgetPtr groupPtr+                      )+      )+{# fun Fl_Widget_type as type' { id `Ptr ()' } -> `Word8' #}+instance (impl ~ IO (Word8)) => Op (GetType_ ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> type' widgetPtr+{# fun Fl_Widget_set_type as setType' { id `Ptr ()',`Word8' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Word8 ->  IO ())) => Op (SetType ()) Widget orig impl where+  runOp _ _ widget t = withRef widget $ \widgetPtr -> setType' widgetPtr t+{# fun Fl_Widget_draw_label as drawLabel' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+{# fun Fl_Widget_draw_label_with_xywh_alignment as drawLabelWithXywhAlignment' { id `Ptr ()',`Int',`Int',`Int',`Int', `Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Maybe (Rectangle,Alignments)->  IO ())) => Op (DrawLabel ()) Widget orig impl where+  runOp _ _ widget Nothing = withRef widget $ \widgetPtr -> drawLabel' widgetPtr+  runOp _ _ widget (Just (rectangle,align_)) = withRef widget $ \widgetPtr -> do+    let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+    drawLabelWithXywhAlignment' widgetPtr x_pos y_pos w_pos h_pos (alignmentsToInt align_)++{# fun Fl_Widget_x as x' { id `Ptr ()' } -> `Int' #}+instance (impl ~ IO (Int)) => Op (GetX ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> x' widgetPtr+{# fun Fl_Widget_y as y' { id `Ptr ()' } -> `Int' #}+instance (impl ~ IO (Int)) => Op (GetY ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> y' widgetPtr+{# fun Fl_Widget_w as w' { id `Ptr ()' } -> `Int' #}+instance (impl ~ IO (Int)) => Op (GetW ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> w' widgetPtr+{# fun Fl_Widget_h as h' { id `Ptr ()' } -> `Int' #}+instance (impl ~ IO (Int)) => Op (GetH ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> h' widgetPtr+instance (+         FindOp orig (GetX ()) (Match obj),+         FindOp orig (GetY ()) (Match obj),+         FindOp orig (GetW ()) (Match obj),+         FindOp orig (GetH ()) (Match obj),+         Op (GetX ()) obj orig (IO Int),+         Op (GetY ()) obj orig (IO Int),+         Op (GetW ()) obj orig (IO Int),+         Op (GetH ()) obj orig (IO Int),+         impl ~ IO Rectangle+         )+         =>+         Op (GetRectangle ()) Widget orig impl where+   runOp _ _ widget = do+     _x <- getX (castTo widget :: Ref orig)+     _y <- getY (castTo widget :: Ref orig)+     _w <- getW (castTo widget :: Ref orig)+     _h <- getH (castTo widget :: Ref orig)+     return (toRectangle (_x,_y,_w,_h))+{# fun Fl_Widget_set_align as setAlign' { id `Ptr ()', `Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Alignments ->  IO ())) => Op (SetAlign ()) Widget orig impl where+  runOp _ _ widget _align = withRef widget $ \widgetPtr -> setAlign' widgetPtr (alignmentsToInt _align)+{# fun Fl_Widget_align as align' { id `Ptr ()' } -> `CUInt' id #}+instance (impl ~ IO Alignments) => Op (GetAlign ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> align' widgetPtr >>= return . intToAlignments . fromIntegral+{# fun Fl_Widget_box as box' { id `Ptr ()' } -> `Boxtype' cToEnum #}+instance (impl ~ IO (Boxtype)) => Op (GetBox ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> box' widgetPtr+{# fun Fl_Widget_set_box as setBox' { id `Ptr ()',cFromEnum `Boxtype' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Boxtype ->  IO ())) => Op (SetBox ()) Widget orig impl where+  runOp _ _ widget new_box = withRef widget $ \widgetPtr -> setBox' widgetPtr new_box+{# fun Fl_Widget_color as color' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ IO (Color)) => Op (GetColor ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> color' widgetPtr+{# fun Fl_Widget_set_color as setColor' { id `Ptr ()',cFromColor `Color' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Color ->  IO ())) => Op (SetColor ()) Widget orig impl where+  runOp _ _ widget bg = withRef widget $ \widgetPtr -> setColor' widgetPtr bg+{# fun Fl_Widget_set_color_with_bg_sel as setColorWithBgSel' { id `Ptr ()',cFromColor `Color',cFromColor `Color' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Color -> Color ->  IO ())) => Op (SetColorWithBgSel ()) Widget orig impl where+  runOp _ _ widget bg a = withRef widget $ \widgetPtr -> setColorWithBgSel' widgetPtr bg a+{# fun Fl_Widget_selection_color as selectionColor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ IO (Color)) => Op (GetSelectionColor ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> selectionColor' widgetPtr+{# fun Fl_Widget_set_selection_color as setSelectionColor' { id `Ptr ()',cFromColor `Color' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Color ->  IO ())) => Op (SetSelectionColor ()) Widget orig impl where+  runOp _ _ widget a = withRef widget $ \widgetPtr -> setSelectionColor' widgetPtr a+{# fun Fl_Widget_label as label' { id `Ptr ()' } -> `String' #}+instance (impl ~ IO (String)) => Op (GetLabel ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> label' widgetPtr+{# fun Fl_Widget_copy_label as copyLabel' { id `Ptr ()',`String' } -> `()' supressWarningAboutRes #}+instance (impl ~ (String ->  IO ())) => Op (CopyLabel ()) Widget orig impl where+  runOp _ _ widget new_label = withRef widget $ \widgetPtr -> copyLabel' widgetPtr new_label+{# fun Fl_Widget_set_label as setLabel' { id `Ptr ()',`String' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( String -> IO ())) => Op (SetLabel ()) Widget orig impl where+  runOp _ _ widget text = withRef widget $ \widgetPtr -> setLabel' widgetPtr text+{# fun Fl_Widget_labeltype as labeltype' { id `Ptr ()' } -> `Labeltype' cToEnum #}+instance (impl ~ (IO (Labeltype))) => Op (GetLabeltype ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> labeltype' widgetPtr+{# fun Fl_Widget_set_labeltype as setLabeltype' { id `Ptr ()',cFromEnum `Labeltype' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Labeltype ->  IO ())) => Op (SetLabeltype ()) Widget orig impl where+  runOp _ _ widget a = withRef widget $ \widgetPtr -> setLabeltype' widgetPtr a+{# fun Fl_Widget_labelcolor as labelcolor' { id `Ptr ()' } -> `Color' cToColor #}+instance (impl ~ (IO (Color))) => Op (GetLabelcolor ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> labelcolor' widgetPtr+{# fun Fl_Widget_set_labelcolor as setLabelcolor' { id `Ptr ()',cFromColor `Color' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Color ->  IO ())) => Op (SetLabelcolor ()) Widget orig impl where+  runOp _ _ widget c = withRef widget $ \widgetPtr -> setLabelcolor' widgetPtr c+{# fun Fl_Widget_labelfont as labelfont' { id `Ptr ()' } -> `Font' cToFont #}+instance (impl ~ (IO (Font))) => Op (GetLabelfont ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> labelfont' widgetPtr+{# fun Fl_Widget_set_labelfont as setLabelfont' { id `Ptr ()',cFromFont `Font' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Font ->  IO ())) => Op (SetLabelfont ()) Widget orig impl where+  runOp _ _ widget c = withRef widget $ \widgetPtr -> setLabelfont' widgetPtr c+{# fun Fl_Widget_labelsize as labelsize' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ (IO (FontSize))) => Op (GetLabelsize ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> labelsize' widgetPtr >>= return . FontSize+{# fun Fl_Widget_set_labelsize as setLabelsize' { id `Ptr ()',id `CInt' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( FontSize ->  IO ())) => Op (SetLabelsize ()) Widget orig impl where+  runOp _ _ widget (FontSize pix) = withRef widget $ \widgetPtr -> setLabelsize' widgetPtr pix+{# fun Fl_Widget_image as image' { id `Ptr ()' } -> `(Ref Image)' unsafeToRef #}+instance (impl ~ (IO (Ref Image))) => Op (GetImage ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> image' widgetPtr+{# fun Fl_Widget_set_image as setImage' { id `Ptr ()',id `Ptr ()'} -> `()' supressWarningAboutRes #}+instance (Parent a Image, impl ~ (Ref a ->  IO ())) => Op (SetImage ()) Widget orig impl where+  runOp _ _ widget pix = withRef widget $ \widgetPtr -> withRef pix $ \pixPtr -> setImage' widgetPtr pixPtr+{# fun Fl_Widget_deimage as deimage' { id `Ptr ()' } -> `(Ref Image)' unsafeToRef #}+instance (impl ~ (IO (Ref Image))) => Op (GetDeimage ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> deimage' widgetPtr+{# fun Fl_Widget_set_deimage as setDeimage' { id `Ptr ()',id `Ptr ()'} -> `()' supressWarningAboutRes #}+instance (Parent a Image, impl ~ (Ref a ->  IO ())) => Op (SetDeimage ()) Widget orig impl where+  runOp _ _ widget pix = withRef widget $ \widgetPtr -> withRef pix $ \pixPtr -> setDeimage' widgetPtr pixPtr+{# fun Fl_Widget_tooltip as tooltip' { id `Ptr ()' } -> `String' #}+instance (impl ~ (IO (String))) => Op (GetTooltip ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> tooltip' widgetPtr+{# fun Fl_Widget_copy_tooltip as copyTooltip' { id `Ptr ()',`String' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( String ->  IO ())) => Op (CopyTooltip ()) Widget orig impl where+  runOp _ _ widget text = withRef widget $ \widgetPtr -> copyTooltip' widgetPtr text+{# fun Fl_Widget_set_tooltip as setTooltip' { id `Ptr ()',`String' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( String ->  IO ())) => Op (SetTooltip ()) Widget orig impl where+  runOp _ _ widget text = withRef widget $ \widgetPtr -> setTooltip' widgetPtr text+{# fun Fl_Widget_when as when' { id `Ptr ()' } -> `CInt' id #}+instance (impl ~ IO [When]) => Op (GetWhen ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr ->+      when' widgetPtr >>= return . extract allWhen+{# fun Fl_Widget_set_when as setWhen' { id `Ptr ()',`Word8' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( [When] ->  IO ())) => Op (SetWhen ()) Widget orig impl where+  runOp _ _ widget i = withRef widget $ \widgetPtr ->+    setWhen' widgetPtr (fromIntegral . combine $ i)+{# fun Fl_Widget_visible as visible' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO Bool)) => Op (GetVisible ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> visible' widgetPtr+{# fun Fl_Widget_visible_r as visibleR' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO Bool)) => Op (GetVisibleR ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> visibleR' widgetPtr+{# fun Fl_Widget_show_super as showSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (ShowWidgetSuper ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> showSuper' widgetPtr+{# fun Fl_Widget_show as show' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (ShowWidget ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> show' widgetPtr+{# fun Fl_Widget_hide_super as hideSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (HideSuper ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> hideSuper' widgetPtr+{# fun Fl_Widget_hide as hide' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Hide ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> hide' widgetPtr+{# fun Fl_Widget_set_visible as setVisible' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (SetVisible ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> setVisible' widgetPtr+{# fun Fl_Widget_clear_visible as clearVisible' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (ClearVisible ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> clearVisible' widgetPtr+{# fun Fl_Widget_active as active' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (Active ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> active' widgetPtr+{# fun Fl_Widget_active_r as activeR' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (ActiveR ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> activeR' widgetPtr+{# fun Fl_Widget_activate as activate' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Activate ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> activate' widgetPtr+{# fun Fl_Widget_deactivate as deactivate' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Deactivate ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> deactivate' widgetPtr+{# fun Fl_Widget_output as output' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (GetOutput ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> output' widgetPtr+{# fun Fl_Widget_set_output as setOutput' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (SetOutput ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> setOutput' widgetPtr+{# fun Fl_Widget_clear_output as clearOutput' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (ClearOutput ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> clearOutput' widgetPtr+{# fun Fl_Widget_takesevents as takesevents' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (Takesevents ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> takesevents' widgetPtr+{# fun Fl_Widget_set_active as setActive' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (SetActive ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> setActive' widgetPtr+{# fun Fl_Widget_clear_active as clearActive' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (ClearActive ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> clearActive' widgetPtr+{# fun Fl_Widget_set_changed as setChanged' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (SetChanged ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> setChanged' widgetPtr+{# fun Fl_Widget_clear_changed as clearChanged' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (ClearChanged ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> clearChanged' widgetPtr+{# fun Fl_Widget_changed as changed' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ (IO (Bool))) => Op (Changed ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> changed' widgetPtr+{# fun Fl_Widget_take_focus as takeFocus' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Either NoChange ()))) => Op (TakeFocus ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> takeFocus' widgetPtr >>= return . successOrNoChange+{# fun Fl_Widget_set_visible_focus as setVisibleFocus' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (SetVisibleFocus ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> setVisibleFocus' widgetPtr+{# fun Fl_Widget_clear_visible_focus as clearVisibleFocus' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (ClearVisibleFocus ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> clearVisibleFocus' widgetPtr+{# fun Fl_Widget_modify_visible_focus as modifyVisibleFocus' { id `Ptr ()',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Int ->  IO ())) => Op (ModifyVisibleFocus ()) Widget orig impl where+  runOp _ _ widget v = withRef widget $ \widgetPtr -> modifyVisibleFocus' widgetPtr v+{# fun Fl_Widget_visible_focus as visibleFocus' { id `Ptr ()' } -> `Int' #}+instance (impl ~ (IO (Int))) => Op (GetVisibleFocus ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> visibleFocus' widgetPtr+{# fun Fl_Widget_contains as contains' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+instance (Parent a Widget, impl ~  (Ref a ->  IO Int)) => Op (Contains ()) Widget orig impl where+  runOp _ _ widget otherWidget = withRef widget $ \widgetPtr -> withRef otherWidget $ \otherWidgetPtr -> contains' widgetPtr otherWidgetPtr+{# fun Fl_Widget_inside as inside' { id `Ptr ()',id `Ptr ()' } -> `Int' #}+instance (Parent a Widget, impl ~ (Ref a -> IO (Int))) => Op (Inside ()) Widget orig impl where+  runOp _ _ widget otherWidget = withRef widget $ \widgetPtr -> withRef otherWidget $ \otherWidgetPtr -> inside' widgetPtr otherWidgetPtr+{# fun Fl_Widget_redraw as redraw' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Redraw ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> redraw' widgetPtr+{# fun Fl_Widget_redraw_label as redrawLabel' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (RedrawLabel ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> redrawLabel' widgetPtr+{# fun Fl_Widget_damage as damage' { id `Ptr ()' } -> `Word8' #}+instance (impl ~ (IO (Word8))) => Op (GetDamage ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> damage' widgetPtr+{# fun Fl_Widget_clear_damage_with_bitmask as clearDamageWithBitmask' { id `Ptr ()',`Word8' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Word8 ->  IO ())) => Op (ClearDamageWithBitmask ()) Widget orig impl where+  runOp _ _ widget c = withRef widget $ \widgetPtr -> clearDamageWithBitmask' widgetPtr c+{# fun Fl_Widget_clear_damage as clearDamage' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (ClearDamage ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> clearDamage' widgetPtr+{# fun Fl_Widget_damage_with_text as damageWithText' { id `Ptr ()',`Word8' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Word8 ->  IO ())) => Op (GetDamageWithText ()) Widget orig impl where+  runOp _ _ widget c = withRef widget $ \widgetPtr -> damageWithText' widgetPtr c+{# fun Fl_Widget_damage_inside_widget as damageInsideWidget' { id `Ptr ()',`Word8',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Word8 -> Rectangle ->  IO ())) => Op (GetDamageInsideWidget ()) Widget orig impl where+  runOp _ _ widget c rectangle = withRef widget $ \widgetPtr -> do+    let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+    damageInsideWidget' widgetPtr c x_pos y_pos w_pos h_pos+{# fun Fl_Widget_measure_label as measureLabel' {id `Ptr ()',alloca- `Int' peekIntConv*, alloca- `Int' peekIntConv*} -> `()' #}+instance (impl ~ ( IO (Size))) => Op (MeasureLabel ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> measureLabel' widgetPtr >>= \(width, height) -> return $ Size (Width width) (Height height)+{# fun Fl_Widget_window as window' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Ref Window))) => Op (GetWindow ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> window' widgetPtr >>= toRef+{# fun Fl_Widget_top_window as topWindow' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ (IO (Ref Window))) => Op (GetTopWindow ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> (topWindow' widgetPtr) >>= toRef+{# fun Fl_Widget_top_window_offset as topWindowOffset' { id `Ptr ()',alloca- `Int' peekIntConv*,alloca- `Int' peekIntConv* } -> `()' #}+instance (impl ~ ( IO (Position))) => Op (GetTopWindowOffset ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> topWindowOffset' widgetPtr >>= \(x_pos,y_pos) -> return $ Position (X x_pos) (Y y_pos)+{# fun Fl_Widget_resize_super as resizeSuper' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Rectangle ->  IO ())) => Op (ResizeSuper ()) Widget orig impl where+  runOp _ _ widget rectangle = withRef widget $ \widgetPtr -> do+    let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+    resizeSuper' widgetPtr x_pos y_pos w_pos h_pos+{# fun Fl_Widget_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Rectangle -> IO ())) => Op (Resize ()) Widget orig impl where+  runOp _ _ widget rectangle = withRef widget $ \widgetPtr -> do+    let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+    resize' widgetPtr x_pos y_pos w_pos h_pos+{# fun Fl_Widget_set_callback as setCallback' { id `Ptr ()', id `FunPtr CallbackWithUserDataPrim'} -> `()' supressWarningAboutRes #}++instance (impl ~ ((Ref orig -> IO ()) -> IO ())) => Op (SetCallback ()) Widget orig impl where+  runOp _ _ widget callback = withRef widget $ \widgetPtr -> do+    ptr <- toCallbackPrimWithUserData callback+    setCallback' widgetPtr (castFunPtr ptr)++{# fun Fl_Widget_draw_box as widgetDrawBox' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+{# fun Fl_Widget_draw_box_with_tc as widgetDrawBoxWithTC' { id `Ptr ()', cFromEnum `Boxtype', cFromColor`Color' } -> `()' supressWarningAboutRes #}+{# fun Fl_Widget_draw_box_with_txywhc as widgetDrawBoxWithTXywhC' { id `Ptr ()', cFromEnum `Boxtype', `Int',`Int',`Int',`Int', cFromColor `Color' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (DrawBox ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> widgetDrawBox' widgetPtr+instance (impl ~ ( Boxtype -> Color -> Maybe Rectangle -> IO ())) => Op (DrawBoxWithBoxtype ()) Widget orig impl where+  runOp _ _ widget bx c Nothing =+    withRef widget $ \widgetPtr -> widgetDrawBoxWithTC' widgetPtr bx c+  runOp _ _ widget bx c (Just r) =+              withRef widget $ \widgetPtr -> do+                let (x_pos,y_pos,w_pos,h_pos) = fromRectangle r+                widgetDrawBoxWithTXywhC' widgetPtr bx x_pos y_pos w_pos h_pos c+{# fun Fl_Widget_draw_backdrop as widgetDrawBackdrop' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (DrawBackdrop ()) Widget orig impl where+  runOp _ _ widget = withRef widget $ \widgetPtr -> widgetDrawBackdrop' widgetPtr++{# fun Fl_Widget_draw_focus as widgetDrawFocus' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+{# fun Fl_Widget_draw_focus_with_txywh as widgetDrawFocusWithTXywh' { id `Ptr ()', cFromEnum `Boxtype', `Int', `Int', `Int', `Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( Maybe (Boxtype, Rectangle) -> IO ())) => Op (DrawFocus ()) Widget orig impl where+  runOp _ _ widget Nothing =+                withRef widget $ \ widgetPtr -> widgetDrawFocus' widgetPtr+  runOp _ _ widget (Just (bx, r)) =+                withRef widget $ \widgetPtr -> do+                  let (x_pos,y_pos,w_pos,h_pos) = fromRectangle r+                  widgetDrawFocusWithTXywh' widgetPtr bx x_pos y_pos w_pos h_pos++-- $widgetfunctions+-- @+--+-- activate :: 'Ref' 'Widget' -> 'IO' ()+--+-- active :: 'Ref' 'Widget' -> 'IO' 'Bool'+--+-- activeR :: 'Ref' 'Widget' -> 'IO' 'Bool'+--+-- changed :: 'Ref' 'Widget' -> 'IO' 'Bool'+--+-- clearActive :: 'Ref' 'Widget' -> 'IO' ()+--+-- clearChanged :: 'Ref' 'Widget' -> 'IO' ()+--+-- clearDamage :: 'Ref' 'Widget' -> 'IO' ()+--+-- clearDamageWithBitmask :: 'Ref' 'Widget' -> 'Word8' -> 'IO' ()+--+-- clearOutput :: 'Ref' 'Widget' -> 'IO' ()+--+-- clearVisible :: 'Ref' 'Widget' -> 'IO' ()+--+-- clearVisibleFocus :: 'Ref' 'Widget' -> 'IO' ()+--+-- contains:: ('Parent' a 'Widget') => 'Ref' 'Widget' -> 'Ref' a -> 'IO' 'Int')+--+-- copyLabel :: 'Ref' 'Widget' -> 'String' -> 'IO' ()+--+-- copyTooltip :: 'Ref' 'Widget' -> 'String' -> 'IO' ()+--+-- deactivate :: 'Ref' 'Widget' -> 'IO' ()+--+-- destroy :: 'Ref' 'Widget' -> 'IO' ()+--+-- drawBackdrop :: 'Ref' 'Widget' -> 'IO' ()+--+-- drawBox :: 'Ref' 'Widget' -> 'IO' ()+--+-- drawBoxWithBoxtype :: 'Ref' 'Widget' -> 'Boxtype' -> 'Color' -> 'Maybe' 'Rectangle' -> 'IO' ()+--+-- drawFocus :: 'Ref' 'Widget' -> 'Maybe' ('Boxtype', 'Rectangle') -> 'IO' ()+--+-- drawLabel :: 'Ref' 'Widget' -> 'Maybe' ('Rectangle', 'Alignments') -> 'IO' ()+--+-- getAlign :: 'Ref' 'Widget' -> 'IO' 'Alignments'+--+-- getBox :: 'Ref' 'Widget' -> 'IO' 'Boxtype'+--+-- getColor :: 'Ref' 'Widget' -> 'IO' 'Color'+--+-- getDamage :: 'Ref' 'Widget' -> 'IO' 'Word8'+--+-- getDamageInsideWidget :: 'Ref' 'Widget' -> 'Word8' -> 'Rectangle' -> 'IO' ()+--+-- getDamageWithText :: 'Ref' 'Widget' -> 'Word8' -> 'IO' ()+--+-- getDeimage :: 'Ref' 'Widget' -> 'IO' ('Ref' 'Image')+--+-- getH :: 'Ref' 'Widget' -> 'IO' 'Int'+--+-- getImage :: 'Ref' 'Widget' -> 'IO' ('Ref' 'Image')+--+-- getLabel :: 'Ref' 'Widget' -> 'IO' 'String'+--+-- getLabelcolor :: 'Ref' 'Widget' -> 'IO' 'Color'+--+-- getLabelfont :: 'Ref' 'Widget' -> 'IO' 'Font'+--+-- getLabelsize :: 'Ref' 'Widget' -> 'IO' 'FontSize'+--+-- getLabeltype :: 'Ref' 'Widget' -> 'IO' 'Labeltype'+--+-- getOutput :: 'Ref' 'Widget' -> 'IO' 'Int'+--+-- getParent :: 'Ref' 'Widget' -> 'IO' ('Maybe' ('Ref' 'Group'))+--+-- getRectangle:: ('FindOp' orig ('GetX' ()) ('Match' obj), 'FindOp' orig ('GetY' ()) ('Match' obj), 'FindOp' orig ('GetW' ()) ('Match' obj), 'FindOp' orig ('GetH' ()) ('Match' obj), 'Op' ('GetX' ()) obj orig ('IO' 'Int',) 'Op' ('GetY' ()) obj orig ('IO' 'Int',) 'Op' ('GetW' ()) obj orig ('IO' 'Int',) 'Op' ('GetH' ()) obj orig ('IO' 'Int')) => 'Ref' 'Widget' -> 'IO' 'Rectangle')+--+-- getSelectionColor :: 'Ref' 'Widget' -> 'IO' 'Color'+--+-- getTooltip :: 'Ref' 'Widget' -> 'IO' 'String'+--+-- getTopWindow :: 'Ref' 'Widget' -> 'IO' ('Ref' 'Window')+--+-- getTopWindowOffset :: 'Ref' 'Widget' -> 'IO' 'Position'+--+-- getType_ :: 'Ref' 'Widget' -> 'IO' 'Word8'+--+-- getVisible :: 'Ref' 'Widget' -> 'IO' 'Bool'+--+-- getVisibleFocus :: 'Ref' 'Widget' -> 'IO' 'Int'+--+-- getVisibleR :: 'Ref' 'Widget' -> 'IO' 'Bool'+--+-- getW :: 'Ref' 'Widget' -> 'IO' 'Int'+--+-- getWhen :: 'Ref' 'Widget' -> 'IO' ['When']+--+-- getWindow :: 'Ref' 'Widget' -> 'IO' ('Ref' 'Window')+--+-- getX :: 'Ref' 'Widget' -> 'IO' 'Int'+--+-- getY :: 'Ref' 'Widget' -> 'IO' 'Int'+--+-- handle :: 'Ref' 'Widget' -> 'Event' -> 'IO' 'Int'+--+-- hide :: 'Ref' 'Widget' -> 'IO' ()+--+-- hideSuper :: 'Ref' 'Widget' -> 'IO' ()+--+-- inside:: ('Parent' a 'Widget') => 'Ref' 'Widget' -> 'Ref' a -> 'IO' 'Int')+--+-- measureLabel :: 'Ref' 'Widget' -> 'IO' 'Size'+--+-- modifyVisibleFocus :: 'Ref' 'Widget' -> 'Int' -> 'IO' ()+--+-- redraw :: 'Ref' 'Widget' -> 'IO' ()+--+-- redrawLabel :: 'Ref' 'Widget' -> 'IO' ()+--+-- resize :: 'Ref' 'Widget' -> 'Rectangle' -> 'IO' ()+--+-- resizeSuper :: 'Ref' 'Widget' -> 'Rectangle' -> 'IO' ()+--+-- setActive :: 'Ref' 'Widget' -> 'IO' ()+--+-- setAlign :: 'Ref' 'Widget' -> 'Alignments' -> 'IO' ()+--+-- setBox :: 'Ref' 'Widget' -> 'Boxtype' -> 'IO' ()+--+-- setCallback :: 'Ref' 'Widget' -> ('Ref' orig -> 'IO' ()) -> 'IO' ()+--+-- setChanged :: 'Ref' 'Widget' -> 'IO' ()+--+-- setColor :: 'Ref' 'Widget' -> 'Color' -> 'IO' ()+--+-- setColorWithBgSel :: 'Ref' 'Widget' -> 'Color' -> 'Color' -> 'IO' ()+--+-- setDeimage:: ('Parent' a 'Image') => 'Ref' 'Widget' -> 'Ref' a -> 'IO' ())+--+-- setImage:: ('Parent' a 'Image') => 'Ref' 'Widget' -> 'Ref' a -> 'IO' ())+--+-- setLabel :: 'Ref' 'Widget' -> 'String' -> 'IO' ()+--+-- setLabelcolor :: 'Ref' 'Widget' -> 'Color' -> 'IO' ()+--+-- setLabelfont :: 'Ref' 'Widget' -> 'Font' -> 'IO' ()+--+-- setLabelsize :: 'Ref' 'Widget' -> 'FontSize' -> 'IO' ()+--+-- setLabeltype :: 'Ref' 'Widget' -> 'Labeltype' -> 'IO' ()+--+-- setOutput :: 'Ref' 'Widget' -> 'IO' ()+--+-- setParent:: ('Parent' a 'Group') => 'Ref' 'Widget' -> 'Ref' a -> 'IO' ())+--+-- setSelectionColor :: 'Ref' 'Widget' -> 'Color' -> 'IO' ()+--+-- setTooltip :: 'Ref' 'Widget' -> 'String' -> 'IO' ()+--+-- setType :: 'Ref' 'Widget' -> 'Word8' -> 'IO' ()+--+-- setVisible :: 'Ref' 'Widget' -> 'IO' ()+--+-- setVisibleFocus :: 'Ref' 'Widget' -> 'IO' ()+--+-- setWhen :: 'Ref' 'Widget' -> ['When'] -> 'IO' ()+--+-- showWidget :: 'Ref' 'Widget' -> 'IO' ()+--+-- showWidgetSuper :: 'Ref' 'Widget' -> 'IO' ()+--+-- takeFocus :: 'Ref' 'Widget' -> 'IO' ('Either' 'NoChange' ())+--+-- takesevents :: 'Ref' 'Widget' -> 'IO' 'Bool'+-- @+++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+-- @
+ src/Graphics/UI/FLTK/LowLevel/Window.chs view
@@ -0,0 +1,560 @@+{-# LANGUAGE CPP, UndecidableInstances, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ExistentialQuantification #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Window+    (+     CustomWindowFuncs(..),+     OptionalSizeRangeArgs(..),+     PositionSpec(..),+     defaultCustomWindowFuncs,+     fillCustomWidgetFunctionStruct,+     defaultOptionalSizeRangeArgs,+     windowCustom,+     windowNew,+     windowMaker,+     currentWindow+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_C.h"+#include "Fl_WindowC.h"+#include "Fl_WidgetC.h"+#include "Fl_GroupC.h"+import Foreign+import Foreign.C+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Dispatch+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Widget++import C2HS hiding (cFromEnum, toBool,cToEnum,cToBool)++data PositionSpec = ByPosition Position+                  | forall a. (Parent a Widget) => ByWidget (Ref a)++data CustomWindowFuncs a =+    CustomWindowFuncs {+      flushCustom :: Maybe (Ref a -> IO ())+    }++data OptionalSizeRangeArgs = OptionalSizeRangeArgs {+      maxw :: Maybe Int,+      maxh :: Maybe Int,+      dw :: Maybe Int,+      dh :: Maybe Int,+      aspect :: Maybe Bool+    }++optionalSizeRangeArgsToStruct :: OptionalSizeRangeArgs -> IO (Ptr ())+optionalSizeRangeArgsToStruct args = do+  p <- mallocBytes {#sizeof fl_Window_size_range_args #}+  {#set fl_Window_size_range_args->maxw #} p $ maybe 0 fromIntegral (maxw args)+  {#set fl_Window_size_range_args->maxh #} p $ maybe 0 fromIntegral (maxh args)+  {#set fl_Window_size_range_args->dw #} p $ maybe 0 fromIntegral (dw args)+  {#set fl_Window_size_range_args->dh #} p $ maybe 0 fromIntegral (dh args)+  {#set fl_Window_size_range_args->aspect #} p $ maybe 0 fromBool (aspect args)+  return p++defaultOptionalSizeRangeArgs :: OptionalSizeRangeArgs+defaultOptionalSizeRangeArgs = OptionalSizeRangeArgs Nothing Nothing Nothing Nothing Nothing++fillCustomWindowFunctionStruct :: forall a. (Parent a Window) =>+                                  Ptr () ->+                                  CustomWindowFuncs a ->+                                  IO ()+fillCustomWindowFunctionStruct structPtr (CustomWindowFuncs _flush') =+  toCallbackPrim  `orNullFunPtr` _flush' >>= {#set fl_Window_Virtual_Funcs->flush#} structPtr++defaultCustomWindowFuncs :: forall a. (Parent a Window) => CustomWindowFuncs a+defaultCustomWindowFuncs = CustomWindowFuncs Nothing++{# fun unsafe Fl_Window_default_virtual_funcs as virtualFuncs' {} -> `Ptr ()' id #}+windowMaker :: forall a b. (Parent a Window, Parent b Widget) =>+               Size ->+               Maybe Position ->+               Maybe String ->+               CustomWidgetFuncs b ->+               CustomWindowFuncs a ->+               (Int -> Int -> Ptr () -> IO (Ptr ())) ->+               (Int -> Int -> String -> Ptr () -> IO (Ptr ())) ->+               (Int -> Int -> Int -> Int -> Ptr () -> IO (Ptr ())) ->+               (Int -> Int -> Int -> Int -> String -> Ptr () -> IO (Ptr ())) ->+               IO (Ref a)+windowMaker (Size (Width w) (Height h))+            position+            title+            customWidgetFuncs'+            customWindowFuncs'+            custom'+            customWithLabel'+            customXY'+            customXYWithLabel' =+     do+       p <- virtualFuncs'+       fillCustomWidgetFunctionStruct p customWidgetFuncs'+       fillCustomWindowFunctionStruct p customWindowFuncs'+       case (position, title) of+        (Nothing, Nothing) -> custom' w h p >>= toRef+        (Just (Position (X x) (Y y)), Nothing) -> customXY' x y w h p >>= toRef+        (Just (Position (X x) (Y y)), (Just l')) -> customXYWithLabel' x y w h l' p >>= toRef+        (Nothing, (Just l')) -> customWithLabel' w h l' p >>= toRef++{# fun Fl_OverriddenWindow_New as overriddenWindowNew' {`Int',`Int', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenWindow_NewXY as overriddenWindowNewXY' {`Int',`Int', `Int', `Int', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenWindow_NewXY_WithLabel as overriddenWindowNewXYWithLabel' { `Int',`Int',`Int',`Int',`String', id `Ptr ()'} -> `Ptr ()' id #}+{# fun Fl_OverriddenWindow_New_WithLabel as overriddenWindowNewWithLabel' { `Int',`Int', `String', id `Ptr ()'} -> `Ptr ()' id #}+windowCustom :: Size ->+                Maybe Position ->+                Maybe String ->+                CustomWidgetFuncs Window ->+                CustomWindowFuncs Window ->+                IO (Ref Window)+windowCustom size position title customWidgetFuncs' customWindowFuncs' =+  windowMaker+    size+    position+    title+    customWidgetFuncs'+    customWindowFuncs'+    overriddenWindowNew'+    overriddenWindowNewWithLabel'+    overriddenWindowNewXY'+    overriddenWindowNewXYWithLabel'++windowNew :: Size -> Maybe Position -> Maybe String -> IO (Ref Window)+windowNew size position title =+  windowMaker+    size+    position+    title+    (defaultCustomWidgetFuncs :: CustomWidgetFuncs Window)+    (defaultCustomWindowFuncs :: CustomWindowFuncs Window)+    overriddenWindowNew'+    overriddenWindowNewWithLabel'+    overriddenWindowNewXY'+    overriddenWindowNewXYWithLabel'++{# fun Fl_Window_Destroy as windowDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> windowDestroy' winPtr++{# fun Fl_Window_draw_super as drawSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (DrawSuper ()) Window orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> drawSuper' windowPtr++{# fun Fl_Window_handle_super as handleSuper' { id `Ptr ()',`Int' } -> `Int' #}+instance (impl ~ (Int ->  IO (Int))) => Op (HandleSuper ()) Window orig impl where+  runOp _ _ window event = withRef window $ \windowPtr -> handleSuper' windowPtr event++{# fun Fl_Window_resize_super as resizeSuper' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rectangle -> IO ())) => Op (ResizeSuper ()) Window orig impl where+  runOp _ _ window rectangle =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in withRef window $ \windowPtr -> resizeSuper' windowPtr x_pos y_pos width height++{# fun Fl_Window_show_super as showSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (ShowWidgetSuper ()) Window orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> showSuper' windowPtr++{# fun Fl_Window_hide_super as hideSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (HideSuper ()) Window orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> hideSuper' windowPtr++{# fun Fl_Window_flush_super as flushSuper' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (FlushSuper ()) Window orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> flushSuper' windowPtr++{# fun Fl_Window_show as windowShow' {id `Ptr ()'} -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (ShowWidget ()) Window orig impl where+  runOp _ _ window = withRef window (\p -> windowShow' p)++{#fun Fl_Window_handle as windowHandle' { id `Ptr ()', id `CInt' } -> `Int' #}+instance (impl ~ (Event -> IO Int)) => Op (Handle ()) Window orig impl where+  runOp _ _ window event = withRef window (\p -> windowHandle' p (fromIntegral . fromEnum $ event))++{# fun Fl_Window_resize as resize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Rectangle -> IO ())) => Op (Resize ()) Window orig impl where+  runOp _ _ window rectangle = withRef window $ \windowPtr -> do+                                 let (x_pos,y_pos,w_pos,h_pos) = fromRectangle rectangle+                                 resize' windowPtr x_pos y_pos w_pos h_pos++{# fun Fl_Window_set_callback as windowSetCallback' {id `Ptr ()' , id `FunPtr CallbackWithUserDataPrim'} -> `()' supressWarningAboutRes #}+instance (impl ~ ((Ref orig -> IO ()) -> IO ())) => Op (SetCallback ()) Window orig impl where+  runOp _ _ window callback =+   withRef window $ (\p -> do+                           callbackPtr <- toCallbackPrimWithUserData callback+                           windowSetCallback' (castPtr p) callbackPtr)++{# fun Fl_Window_hide as hide' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Hide ()) Window orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> hide' windowPtr++{# fun Fl_Window_changed as changed' { id `Ptr ()' } -> `Bool' cToBool #}+instance (impl ~ ( IO (Bool))) => Op (Changed ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> changed' winPtr++{# fun Fl_Window_fullscreen as fullscreen' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (MakeFullscreen ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> fullscreen' winPtr++{# fun Fl_Window_fullscreen_off as fullscreenOff' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_fullscreen_off_with_resize as fullscreenOffWithResize' { id `Ptr ()',`Int',`Int',`Int',`Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Maybe Rectangle ->  IO ())) => Op (FullscreenOff ()) Window orig impl where+  runOp _ _ win (Just rectangle) =+    withRef win $ \winPtr ->+        let (x_pos, y_pos, width, height) = fromRectangle rectangle+        in fullscreenOffWithResize' winPtr x_pos y_pos width height+  runOp _ _ win Nothing =+    withRef win $ \winPtr -> fullscreenOff' winPtr++{# fun Fl_Window_set_border as setBorder' { id `Ptr ()', fromBool `Bool' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Bool ->  IO ())) => Op (SetBorder ()) Window orig impl where+  runOp _ _ win b = withRef win $ \winPtr -> setBorder' winPtr b++{# fun Fl_Window_clear_border as clearBorder' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (ClearBorder ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> clearBorder' winPtr++{# fun Fl_Window_border as border' { id `Ptr ()' } -> `Bool' toBool#}+instance (impl ~ ( IO (Bool))) => Op (GetBorder ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> border' winPtr++{# fun Fl_Window_set_override as setOverride' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (SetOverride ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> setOverride' winPtr++{# fun Fl_Window_override as override' { id `Ptr ()' } -> `Bool' toBool #}+instance (impl ~ ( IO (Bool))) => Op (GetOverride ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> override' winPtr++{# fun Fl_Window_set_modal as setModal' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (SetModal ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> setModal' winPtr++{# fun Fl_Window_modal as modal' { id `Ptr ()' } -> `Bool' toBool #}+instance (impl ~ ( IO (Bool))) => Op (GetModal ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> modal' winPtr++{# fun Fl_Window_set_non_modal as setNonModal' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (SetNonModal ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> setNonModal' winPtr++{# fun Fl_Window_non_modal as nonModal' { id `Ptr ()' } -> `Bool' toBool #}+instance (impl ~ ( IO (Bool))) => Op (NonModal ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> nonModal' winPtr++{# fun Fl_Window_set_menu_window as setMenuWindow' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (SetMenuWindow ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> setMenuWindow' winPtr++{# fun Fl_Window_menu_window as menuWindow' { id `Ptr ()' } -> `Bool' toBool #}+instance (impl ~ ( IO (Bool))) => Op (GetMenuWindow ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> menuWindow' winPtr++{# fun Fl_Window_set_tooltip_window as setTooltipWindow' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (SetTooltipWindow ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> setTooltipWindow' winPtr++{# fun Fl_Window_tooltip_window as tooltipWindow' { id `Ptr ()' } -> `Bool' toBool #}+instance (impl ~ ( IO (Bool))) => Op (GetTooltipWindow ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> tooltipWindow' winPtr++{# fun Fl_Window_hotspot_with_x_y as hotspotWithXY' { id `Ptr ()',`Int',`Int' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_hotspot_with_x_y_with_offscreen as hotspotWithXYWithOffscreen' { id `Ptr ()',`Int',`Int', fromBool `Bool' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_hotspot_with_widget as hotspotWithWidget' { id `Ptr ()',id `Ptr ()' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_hotspot_with_widget_with_offscreen as hotspotWithWidgetWithOffscreen' { id `Ptr ()',id `Ptr ()',fromBool `Bool' } -> `()' supressWarningAboutRes #}+instance (impl ~ (PositionSpec -> Maybe Bool -> IO ())) => Op (HotSpot ()) Window orig impl where+  runOp _ _ win positionSpec offscreen =+    withRef win $ \winPtr ->+            case (positionSpec, offscreen) of+              ((ByPosition (Position (X x) (Y y))), (Just offscreen')) ->+                  hotspotWithXYWithOffscreen' winPtr x y offscreen'+              ((ByPosition (Position (X x) (Y y))), Nothing) -> hotspotWithXY' winPtr x y+              ((ByWidget templateWidget), (Just offscreen')) ->+                  withRef templateWidget $ \templatePtr ->+                      hotspotWithWidgetWithOffscreen' winPtr templatePtr offscreen'+              ((ByWidget templateWidget), Nothing) ->+                  withRef templateWidget $ \templatePtr ->+                      hotspotWithWidget' winPtr templatePtr+{# fun Fl_Window_free_position as freePosition' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (FreePosition ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> freePosition' winPtr++{# fun Fl_Window_size_range as sizeRange' { id `Ptr ()',`Int',`Int' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_size_range_with_args as sizeRangeWithArgs' { id `Ptr ()',`Int',`Int', id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Int -> Int -> IO ())) => Op (SizeRange ()) Window orig impl where+  runOp _ _ win minw' minh' =+    withRef win $ \winPtr -> sizeRange' winPtr minw' minh'+instance (impl ~ (Int -> Int -> OptionalSizeRangeArgs ->  IO ())) => Op (SizeRangeWithArgs ()) Window orig impl where+  runOp _ _ win minw' minh' args =+    withRef win $ \winPtr -> do+      structPtr <- optionalSizeRangeArgsToStruct args+      sizeRangeWithArgs' winPtr minw' minh' structPtr++{# fun Fl_Window_label as label' { id `Ptr ()' } -> `String' #}+instance (impl ~ ( IO (String))) => Op (GetLabel ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> label' winPtr++{# fun Fl_Window_iconlabel as iconlabel' { id `Ptr ()' } -> `String' #}+instance (impl ~ ( IO (String))) => Op (GetIconlabel ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> iconlabel' winPtr++{# fun Fl_Window_set_label as setLabel' { id `Ptr ()',`String' } -> `()' supressWarningAboutRes #}+instance (impl ~ (String ->  IO ())) => Op (SetLabel ()) Window orig impl where+  runOp _ _ win l' = withRef win $ \winPtr -> setLabel' winPtr l'++{# fun Fl_Window_set_iconlabel as setIconlabel' { id `Ptr ()',`String' } -> `()' supressWarningAboutRes #}+instance (impl ~ (String ->  IO ())) => Op (SetIconlabel ()) Window orig impl where+  runOp _ _ win l' = withRef win $ \winPtr -> setIconlabel' winPtr l'++{# fun Fl_Window_set_label_with_iconlabel as setLabelWithIconlabel' { id `Ptr ()',`String',`String' } -> `()' supressWarningAboutRes #}+instance (impl ~ (String -> String ->  IO ())) => Op (SetLabelWithIconlabel ()) Window orig impl where+  runOp _ _ win label iconlabel = withRef win $ \winPtr -> setLabelWithIconlabel' winPtr label iconlabel++{# fun Fl_Window_copy_label as copyLabel' { id `Ptr ()',`String' } -> `()' supressWarningAboutRes #}+instance (impl ~ (String ->  IO ())) => Op (CopyLabel ()) Window orig impl where+  runOp _ _ win a = withRef win $ \winPtr -> copyLabel' winPtr a++{# fun Fl_Window_xclass as xclass' { id `Ptr ()' } -> `String' #}+instance (impl ~ ( IO (String))) => Op (GetXclass ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> xclass' winPtr++{# fun Fl_Window_set_xclass as setXclass' { id `Ptr ()',`String' } -> `()' supressWarningAboutRes #}+instance (impl ~ (String ->  IO ())) => Op (SetXclass ()) Window orig impl where+  runOp _ _ win c = withRef win $ \winPtr -> setXclass' winPtr c++{# fun Fl_Window_icon as icon' { id `Ptr ()' } -> `Ptr ()' id #}+instance (impl ~ ( IO (Maybe (Ref Image)))) => Op (GetIcon ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> icon' winPtr >>= toMaybeRef++{# fun Fl_Window_set_icon as setIcon' { id `Ptr ()', id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (Parent a Image, impl ~ (Ref a ->  IO ())) => Op (SetIcon ()) Window orig impl where+  runOp _ _ win bitmap = withRef win $ \winPtr -> withRef bitmap $ \bitmapPtr -> setIcon' winPtr bitmapPtr++{# fun Fl_Window_shown as shown' { id `Ptr ()' } -> `Bool' toBool #}+instance (impl ~ ( IO (Bool))) => Op (Shown ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> shown' winPtr++{# fun Fl_Window_iconize as iconize' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (Iconize ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> iconize' winPtr++{# fun Fl_Window_x_root as xRoot' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetXRoot ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> xRoot' winPtr++{# fun Fl_Window_y_root as yRoot' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetYRoot ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> yRoot' winPtr++{# fun Fl_Window_current as current' {  } -> `Ptr ()' id #}+currentWindow ::  (Parent a Window) => IO (Ref a)+currentWindow = current' >>= toRef++{# fun Fl_Window_make_current as makeCurrent' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ ( IO ())) => Op (MakeCurrent ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> makeCurrent' winPtr++{# fun Fl_Window_set_cursor_with_bg as setCursorWithBg' { id `Ptr ()',cFromEnum `Cursor',cFromColor `Color' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_set_cursor_with_fg as setCursorWithFg' { id `Ptr ()',cFromEnum `Cursor',cFromColor `Color' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_set_cursor_with_fg_bg as setCursorWithFgBg' { id `Ptr ()',cFromEnum `Cursor',cFromColor `Color',cFromColor `Color' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_set_cursor as setCursor' { id `Ptr ()',cFromEnum `Cursor' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Cursor -> IO ())) => Op (SetCursor ()) Window orig impl where+  runOp _ _ win cursor =  withRef win $ \winPtr -> setCursor' winPtr cursor+instance (impl ~ (Cursor -> (Maybe Color, Maybe Color) ->  IO ())) => Op (SetCursorWithFgBg ()) Window orig impl where+  runOp _ _ win cursor fgbg =+    case fgbg of+      ((Just fg), (Just bg)) -> withRef win $ \winPtr -> setCursorWithFgBg' winPtr cursor fg bg+      (Nothing , (Just bg)) -> withRef win $ \winPtr -> setCursorWithBg' winPtr cursor bg+      ((Just fg), Nothing)  -> withRef win $ \winPtr -> setCursorWithFg' winPtr cursor fg+      (Nothing, Nothing)    -> withRef win $ \winPtr -> setCursor' winPtr cursor++{# fun Fl_Window_set_default_cursor_with_bg as setDefaultCursorWithBg' { id `Ptr ()',cFromEnum `CursorType',cFromColor `Color' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_set_default_cursor_with_fg as setDefaultCursorWithFg' { id `Ptr ()',cFromEnum `CursorType',cFromColor `Color' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_set_default_cursor_with_fg_bg as setDefaultCursorWithFgBg' { id `Ptr ()',cFromEnum `CursorType',cFromColor `Color',cFromColor `Color' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_set_default_cursor as setDefaultCursor' { id `Ptr ()',cFromEnum `CursorType' } -> `()' supressWarningAboutRes #}+instance (impl ~ (CursorType -> IO ())) => Op (SetDefaultCursor ()) Window orig impl where+  runOp _ _ win cursor = withRef win $ \winPtr -> setDefaultCursor' winPtr cursor+instance (impl ~ (CursorType -> (Maybe Color, Maybe Color) -> IO ())) => Op (SetDefaultCursorWithFgBg ()) Window orig impl where+  runOp _ _ win cursor fgbg =+    case fgbg of+      ((Just fg), (Just bg)) -> withRef win $ \winPtr -> setDefaultCursorWithFgBg' winPtr cursor fg bg+      (Nothing , (Just bg)) -> withRef win $ \winPtr -> setDefaultCursorWithBg' winPtr cursor bg+      ((Just fg), Nothing)  -> withRef win $ \winPtr -> setDefaultCursorWithFg' winPtr cursor fg+      (Nothing, Nothing)    -> withRef win $ \winPtr -> setDefaultCursor' winPtr cursor++{# fun Fl_Window_decorated_w as decoratedW' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetDecoratedW ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> decoratedW' winPtr++{# fun Fl_Window_decorated_h as decoratedH' { id `Ptr ()' } -> `Int' #}+instance (impl ~ ( IO (Int))) => Op (GetDecoratedH ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> decoratedH' winPtr++{# fun Fl_Window_draw_box as windowDrawBox' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_draw_box_with_tc as windowDrawBoxWithTC' { id `Ptr ()', cFromEnum `Boxtype', cFromColor`Color' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_draw_box_with_txywhc as windowDrawBoxWithTXywhC' { id `Ptr ()', cFromEnum `Boxtype', `Int',`Int',`Int',`Int', cFromColor `Color' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (DrawBox ()) Window orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> windowDrawBox' windowPtr+instance (impl ~ (Boxtype -> Color -> Maybe Rectangle -> IO ())) => Op (DrawBoxWithBoxtype ()) Window orig impl where+  runOp _ _ window bx c Nothing =+              withRef window $ \windowPtr -> windowDrawBoxWithTC' windowPtr bx c+  runOp _ _ window bx c (Just r) =+              withRef window $ \windowPtr -> do+                let (x_pos,y_pos,w_pos,h_pos) = fromRectangle r+                windowDrawBoxWithTXywhC' windowPtr bx x_pos y_pos w_pos h_pos c+{# fun Fl_Window_draw_backdrop as windowDrawBackdrop' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (DrawBackdrop ()) Window orig impl where+  runOp _ _ window = withRef window $ \windowPtr -> windowDrawBackdrop' windowPtr++{# fun Fl_Window_draw_focus as windowDrawFocus' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+{# fun Fl_Window_draw_focus_with_txywh as windowDrawFocusWithTXywh' { id `Ptr ()', cFromEnum `Boxtype', `Int', `Int', `Int', `Int' } -> `()' supressWarningAboutRes #}+instance (impl ~ (Maybe (Boxtype, Rectangle) -> IO ())) => Op (DrawFocus ()) Window orig impl where+  runOp _ _ window Nothing =+                withRef window $ \ windowPtr -> windowDrawFocus' windowPtr+  runOp _ _ window (Just (bx, r)) =+                withRef window $ \windowPtr -> do+                  let (x_pos,y_pos,w_pos,h_pos) = fromRectangle r+                  windowDrawFocusWithTXywh' windowPtr bx x_pos y_pos w_pos h_pos++{# fun Fl_Window_wait_for_expose as waitForExpose' { id `Ptr ()' } -> `()' #}+instance (impl ~ ( IO ())) => Op (WaitForExpose ()) Window orig impl where+  runOp _ _ win = withRef win $ \winPtr -> waitForExpose' winPtr+++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Group"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Window"+-- @++-- $functions+-- @+-- changed :: 'Ref' 'Window' -> 'IO' 'Bool'+--+-- clearBorder :: 'Ref' 'Window' -> 'IO' ()+--+-- copyLabel :: 'Ref' 'Window' -> 'String' -> 'IO' ()+--+-- destroy :: 'Ref' 'Window' -> 'IO' ()+--+-- drawBackdrop :: 'Ref' 'Window' -> 'IO' ()+--+-- drawBox :: 'Ref' 'Window' -> 'IO' ()+--+-- drawBoxWithBoxtype :: 'Ref' 'Window' -> 'Boxtype' -> 'Color' -> 'Maybe' 'Rectangle' -> 'IO' ()+--+-- drawFocus :: 'Ref' 'Window' -> 'Maybe' ('Boxtype', 'Rectangle') -> 'IO' ()+--+-- drawSuper :: 'Ref' 'Window' -> 'IO' ()+--+-- flushSuper :: 'Ref' 'Window' -> 'IO' ()+--+-- freePosition :: 'Ref' 'Window' -> 'IO' ()+--+-- fullscreenOff :: 'Ref' 'Window' -> 'Maybe' 'Rectangle' -> 'IO' ()+--+-- getBorder :: 'Ref' 'Window' -> 'IO' 'Bool'+--+-- getDecoratedH :: 'Ref' 'Window' -> 'IO' 'Int'+--+-- getDecoratedW :: 'Ref' 'Window' -> 'IO' 'Int'+--+-- getIcon :: 'Ref' 'Window' -> 'IO' ('Maybe' ('Ref' 'Image'))+--+-- getIconlabel :: 'Ref' 'Window' -> 'IO' 'String'+--+-- getLabel :: 'Ref' 'Window' -> 'IO' 'String'+--+-- getMenuWindow :: 'Ref' 'Window' -> 'IO' 'Bool'+--+-- getModal :: 'Ref' 'Window' -> 'IO' 'Bool'+--+-- getOverride :: 'Ref' 'Window' -> 'IO' 'Bool'+--+-- getTooltipWindow :: 'Ref' 'Window' -> 'IO' 'Bool'+--+-- getXRoot :: 'Ref' 'Window' -> 'IO' 'Int'+--+-- getXclass :: 'Ref' 'Window' -> 'IO' 'String'+--+-- getYRoot :: 'Ref' 'Window' -> 'IO' 'Int'+--+-- handle :: 'Ref' 'Window' -> 'Event' -> 'IO' 'Int'+--+-- handleSuper :: 'Ref' 'Window' -> 'Int' -> 'IO' 'Int'+--+-- hide :: 'Ref' 'Window' -> 'IO' ()+--+-- hideSuper :: 'Ref' 'Window' -> 'IO' ()+--+-- hotSpot :: 'Ref' 'Window' -> 'PositionSpec' -> 'Maybe' 'Bool' -> 'IO' ()+--+-- iconize :: 'Ref' 'Window' -> 'IO' ()+--+-- makeCurrent :: 'Ref' 'Window' -> 'IO' ()+--+-- makeFullscreen :: 'Ref' 'Window' -> 'IO' ()+--+-- nonModal :: 'Ref' 'Window' -> 'IO' 'Bool'+--+-- resize :: 'Ref' 'Window' -> 'Rectangle' -> 'IO' ()+--+-- resizeSuper :: 'Ref' 'Window' -> 'Rectangle' -> 'IO' ()+--+-- setBorder :: 'Ref' 'Window' -> 'Bool' -> 'IO' ()+--+-- setCallback :: 'Ref' 'Window' -> ('Ref' orig -> 'IO' ()) -> 'IO' ()+--+-- setCursor :: 'Ref' 'Window' -> 'Cursor' -> 'IO' ()+--+-- setCursorWithFgBg :: 'Ref' 'Window' -> 'Cursor' -> ('Maybe' 'Color', 'Maybe' 'Color') -> 'IO' ()+--+-- setDefaultCursor :: 'Ref' 'Window' -> 'CursorType' -> 'IO' ()+--+-- setDefaultCursorWithFgBg :: 'Ref' 'Window' -> 'CursorType' -> ('Maybe' 'Color', 'Maybe' 'Color') -> 'IO' ()+--+-- setIcon:: ('Parent' a 'Image') => 'Ref' 'Window' -> 'Ref' a -> 'IO' ())+--+-- setIconlabel :: 'Ref' 'Window' -> 'String' -> 'IO' ()+--+-- setLabel :: 'Ref' 'Window' -> 'String' -> 'IO' ()+--+-- setLabelWithIconlabel :: 'Ref' 'Window' -> 'String' -> 'String' -> 'IO' ()+--+-- setMenuWindow :: 'Ref' 'Window' -> 'IO' ()+--+-- setModal :: 'Ref' 'Window' -> 'IO' ()+--+-- setNonModal :: 'Ref' 'Window' -> 'IO' ()+--+-- setOverride :: 'Ref' 'Window' -> 'IO' ()+--+-- setTooltipWindow :: 'Ref' 'Window' -> 'IO' ()+--+-- setXclass :: 'Ref' 'Window' -> 'String' -> 'IO' ()+--+-- showWidget :: 'Ref' 'Window' -> 'IO' ()+--+-- showWidgetSuper :: 'Ref' 'Window' -> 'IO' ()+--+-- shown :: 'Ref' 'Window' -> 'IO' 'Bool'+--+-- sizeRange :: 'Ref' 'Window' -> 'Int' -> 'Int' -> 'IO' ()+--+-- sizeRangeWithArgs :: 'Ref' 'Window' -> 'Int' -> 'Int' -> 'OptionalSizeRangeArgs' -> 'IO' ()+--+-- waitForExpose :: 'Ref' 'Window' -> 'IO' ()+-- @
+ src/Graphics/UI/FLTK/LowLevel/Wizard.chs view
@@ -0,0 +1,76 @@+{-# LANGUAGE CPP, ExistentialQuantification, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, ScopedTypeVariables, UndecidableInstances #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}+module Graphics.UI.FLTK.LowLevel.Wizard+    (+     wizardNew+     -- * Hierarchy+     --+     -- $hierarchy++     -- * Functions+     --+     -- $functions+    )+where+#include "Fl_ExportMacros.h"+#include "Fl_Types.h"+#include "Fl_WizardC.h"+import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)+import Foreign.C.Types+import Graphics.UI.FLTK.LowLevel.Fl_Types+import Graphics.UI.FLTK.LowLevel.Utils+import Graphics.UI.FLTK.LowLevel.Hierarchy+import Graphics.UI.FLTK.LowLevel.Dispatch++{# fun Fl_Wizard_New as wizardNew' {  `Int',`Int', `Int', `Int'} -> `Ptr ()' id #}+{# fun Fl_Wizard_New_WithLabel as wizardNewWithLabel' { `Int',`Int',`Int',`Int',`String'} -> `Ptr ()' id #}+wizardNew :: Rectangle -> Maybe String -> IO (Ref Wizard)+wizardNew rectangle label' =+    let (x_pos, y_pos, width, height) = fromRectangle rectangle+    in case label' of+        (Just l') -> wizardNewWithLabel' x_pos y_pos width height l' >>= toRef+        Nothing -> wizardNew' x_pos y_pos width height >>= toRef++{# fun Fl_Wizard_Destroy as wizardDestroy' { id `Ptr ()' } -> `()' supressWarningAboutRes #}+instance (impl ~ (IO ())) => Op (Destroy ()) Wizard orig impl where+  runOp _ _ wizard = swapRef wizard $ \wizardPtr -> do+    wizardDestroy' wizardPtr+    return nullPtr+{# fun unsafe Fl_Wizard_next as wizardNext' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (Next ()) Wizard orig impl where+  runOp _ _ wizard = withRef wizard $ \wizardPtr -> wizardNext' wizardPtr+{# fun unsafe Fl_Wizard_prev as wizardPrev' { id `Ptr ()' } -> `()' #}+instance (impl ~ (IO ())) => Op (Prev ()) Wizard orig impl where+  runOp _ _ wizard = withRef wizard $ \wizardPtr -> wizardPrev' wizardPtr+{# fun unsafe Fl_Wizard_set_value as wizardSetValue' { id `Ptr ()', id `Ptr ()' } -> `()' #}+instance (Parent a Widget, impl ~ ( Ref a -> IO ())) => Op (SetValue ()) Wizard orig impl where+  runOp _ _ wizard widget =+    withRef wizard $ \wizardPtr ->+      withRef widget $ \widgetPtr ->+        wizardSetValue' wizardPtr widgetPtr+{# fun unsafe Fl_Wizard_value as wizardValue' {id `Ptr ()'} -> `Ptr ()' id #}+instance (impl ~ (IO (Ref Widget))) => Op (GetValue ()) Wizard orig impl where+  runOp _ _ wizard =+    withRef wizard $ \wizardPtr -> wizardValue' wizardPtr >>= toRef++-- $functions+-- @+--+-- destroy :: 'Ref' 'Wizard' -> 'IO' ()+--+-- getValue :: 'Ref' 'Wizard' -> 'IO' ('Ref' 'Widget')+--+-- next :: 'Ref' 'Wizard' -> 'IO' ()+--+-- prev :: 'Ref' 'Wizard' -> 'IO' ()+--+-- setValue:: ('Parent' a 'Widget') => 'Ref' 'Wizard' -> 'Ref' a -> 'IO' ())+-- @++-- $hierarchy+-- @+-- "Graphics.UI.FLTK.LowLevel.Widget"+--  |+--  v+-- "Graphics.UI.FLTK.LowLevel.Wizard"+-- @
+ src/TestPrograms/Buttons.hs view
@@ -0,0 +1,37 @@+module Main where++import Graphics.UI.FLTK.LowLevel.FL+import Graphics.UI.FLTK.LowLevel.FLTKHS++main :: IO ()+main = do+     window <- windowNew+                (Size (Width 320) (Height 170))+                Nothing+                Nothing+     b <- buttonNew+           (Rectangle (Position (X 10) (Y 10)) (Size (Width 130) (Height 30)))+           (Just "Fl_Button")+     setTooltip b "This is a tooltip."+     _ <- repeatButtonNew+           (Rectangle (Position (X 10) (Y 50)) (Size (Width 130) (Height 30)))+           (Just "Fl_Repeat_Button")+     _ <- lightButtonNew+           (Rectangle (Position (X 10) (Y 90)) (Size (Width 130) (Height 30)))+           (Just "Fl_Light_Button")+     _ <- toggleButtonNew+           (Rectangle (Position (X 10) (Y 130)) (Size (Width 130) (Height 30)))+           (Just "Fl_Toggle_Button")+     _ <- returnButtonNew+           (Rectangle (Position (X 150) (Y 10)) (Size (Width 160) (Height 30)))+           (Just  "Fl_Return_Button")+     _ <- roundButtonNew+           (Rectangle (Position (X 150) (Y 50)) (Size (Width 160) (Height 30)))+           (Just "Fl_Round_Button")+     _ <- checkButtonNew+           (Rectangle (Position (X 150) (Y 90)) (Size (Width 160) (Height 30)))+           (Just "Fl_Check_Button")+     end window+     showWidget window+     _ <- run+     return ()
+ src/TestPrograms/TestCall.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE FlexibleContexts, ScopedTypeVariables #-}+module Main where+import Graphics.UI.FLTK.LowLevel.FLTKHS+import Graphics.UI.FLTK.LowLevel.Fl_Enumerations+import qualified Graphics.UI.FLTK.LowLevel.FL as FL++windowCallback ::  (Show a) => a -> Ref Window -> IO ()+windowCallback a _ = print a++showOverride :: Ref Window -> IO ()+showOverride wptr = do+  print "showOverride"+  showWidgetSuper wptr++drawOverride :: Ref Window -> IO ()+drawOverride wptr = do+  print "drawOverride"+  drawSuper wptr++addButton :: Int -> Int -> String -> IO (Ref Button)+addButton x_pos y_pos label = do+  button <- buttonNew+              (Rectangle (Position (X x_pos) (Y y_pos)) (Size (Width 80) (Height 30)) )+              (Just label)+  return button++addWindow :: IO (Ref Window)+addWindow = do+  window <- windowCustom+              (Size (Width 100) (Height 100))+              Nothing+              (Just "Test")+              (defaultCustomWidgetFuncs {+                  drawCustom = (Just drawOverride)+                  })+              defaultCustomWindowFuncs+  button1 <- addButton 10 30 "button 1"+  button2 <- addButton 10 70 "button 2"+  setCallback button1 (\btn -> setLabel btn "New Label")+  setCallback button2 (\_ -> FL.deleteWidget button1 >> redraw window)+  setCallback window (windowCallback "window's callback data")+  showWidget window+  return window++runAwakeHandler :: IO ()+runAwakeHandler = do+  awakeHandler <- FL.getAwakeHandler_+  awakeHandler++eventIntercept :: Event -> Ref Window -> IO Int+eventIntercept e _ =+    case e of+      NoEvent                    -> do { putStrLn "NoEvent"; return 0; }+      Push                       -> do { putStrLn "Push"; return 0; }+      Release                    -> do { putStrLn "Release"; return 0; }+      Enter                      -> do { putStrLn "Enter"; return 0; }+      Leave                      -> do { putStrLn "Leave"; return 0; }+      Drag                       -> do { putStrLn "Drag"; return 0; }+      Focus                      -> do { putStrLn "Focus"; return 0; }+      Unfocus                    -> do { putStrLn "Unfocus"; return 0; }+      Keydown                    -> do { putStrLn "Keydown"; return 0; }+      Keyup                      -> do { putStrLn "Keyup"; return 0; }+      Close                      -> do { putStrLn "Close"; return 0; }+      Move                       -> do { putStrLn "Move"; return 0; }+      Shortcut                   -> do { putStrLn "Shortcut"; return 0; }+      Deactivate                 -> do { putStrLn "Deactivate"; return 0; }+      Activate                   -> do { putStrLn "Activate"; return 0; }+      Hide                       -> do { putStrLn "Hide"; return 0; }+      Show                       -> do { putStrLn "Show"; return 0; }+      Paste                      -> do { putStrLn "Paste"; return 0; }+      Selectionclear             -> do { putStrLn "Selectionclear"; return 0; }+      Mousewheel                 -> do { putStrLn "Mousewheel"; return 0; }+      DndEnter                   -> do { putStrLn "DndEnter"; return 0; }+      DndDrag                    -> do { putStrLn "DndDrag"; return 0; }+      DndLeave                   -> do { putStrLn "DndLeave"; return 0; }+      DndRelease                 -> do { putStrLn "DndRelease"; return 0; }+      ScreenConfigurationChanged -> do { putStrLn "ScreenConfigurationChanged"; return 0; }+      Fullscreen                 -> do { putStrLn "Fullscreen"; return 0; }++globalEventHandler :: Event -> IO Int+globalEventHandler e =+    case e of+      NoEvent                    -> do { putStrLn "Global NoEvent"; return 0; }+      Push                       -> do { putStrLn "Global Push"; return 0; }+      Release                    -> do { putStrLn "Global Release"; return 0; }+      Enter                      -> do { putStrLn "Global Enter"; return 0; }+      Leave                      -> do { putStrLn "Global Leave"; return 0; }+      Drag                       -> do { putStrLn "Global Drag"; return 0; }+      Focus                      -> do { putStrLn "Global Focus"; return 0; }+      Unfocus                    -> do { putStrLn "Global Unfocus"; return 0; }+      Keydown                    -> do { putStrLn "Global Keydown"; return 0; }+      Keyup                      -> do { putStrLn "Global Keyup"; return 0; }+      Close                      -> do { putStrLn "Global Close"; return 0; }+      Move                       -> do { putStrLn "Global Move"; return 0; }+      Shortcut                   -> do { putStrLn "Global Shortcut"; return 0; }+      Deactivate                 -> do { putStrLn "Global Deactivate"; return 0; }+      Activate                   -> do { putStrLn "Global Activate"; return 0; }+      Hide                       -> do { putStrLn "Global Hide"; return 0; }+      Show                       -> do { putStrLn "Global Show"; return 0; }+      Paste                      -> do { putStrLn "Global Paste"; return 0; }+      Selectionclear             -> do { putStrLn "Global Selectionclear"; return 0; }+      Mousewheel                 -> do { putStrLn "Global Mousewheel"; return 0; }+      DndEnter                   -> do { putStrLn "Global DndEnter"; return 0; }+      DndDrag                    -> do { putStrLn "Global DndDrag"; return 0; }+      DndLeave                   -> do { putStrLn "Global DndLeave"; return 0; }+      DndRelease                 -> do { putStrLn "Global DndRelease"; return 0; }+      ScreenConfigurationChanged -> do { putStrLn "Global ScreenConfigurationChanged"; return 0; }+      Fullscreen                 -> do { putStrLn "Global Fullscreen"; return 0; }++main :: IO ()+main = do+  _ <- addWindow+  print "added Window"+  _ <- FL.addAwakeHandler (print "awake handler's callback data")+  print "added awake handler"+  _ <- runAwakeHandler+  -- _ <- FL.setEventDispatch eventIntercept+  _ <- FL.setHandler globalEventHandler+  print "ran awake handler"+  _ <- FL.run+  return ()