Permalink
Browse files

Importing initial version

  • Loading branch information...
kmx committed Sep 15, 2010
1 parent 2d12206 commit e8cb0bb10e4ce6e7a342f65a6b933bbd90c1fb6d
Showing with 18,184 additions and 0 deletions.
  1. +15 −0 .gitignore
  2. +42 −0 Build.PL
  3. +5 −0 Changes
  4. +25 −0 MANIFEST.SKIP
  5. +73 −0 README
  6. +88 −0 TODO
  7. 0 _generators/Attribute.csv
  8. 0 _generators/Attribute_pm.tt
  9. +252 −0 _generators/Callback.csv
  10. +68 −0 _generators/Callback_pm.tt
  11. +59 −0 _generators/Callback_xs.tt
  12. +181 −0 _generators/do_callbacks.pl
  13. +309 −0 _generators/do_html2pod.pl
  14. +9 −0 doc/Button.pod
  15. +530 −0 lib/IUP.pm
  16. +16 −0 lib/IUP/Button.pm
  17. +39 −0 lib/IUP/Canvas.pm
  18. +36 −0 lib/IUP/Cbox.pm
  19. +18 −0 lib/IUP/Cells.pm
  20. +14 −0 lib/IUP/Clipboard.pm
  21. +17 −0 lib/IUP/ColorBrowser.pm
  22. +14 −0 lib/IUP/ColorDlg.pm
  23. +15 −0 lib/IUP/Colorbar.pm
  24. +71 −0 lib/IUP/Constants.pm
  25. +16 −0 lib/IUP/Dial.pm
  26. +22 −0 lib/IUP/Dialog.pm
  27. +14 −0 lib/IUP/FileDlg.pm
  28. +14 −0 lib/IUP/Fill.pm
  29. +14 −0 lib/IUP/FontDlg.pm
  30. +25 −0 lib/IUP/Frame.pm
  31. +45 −0 lib/IUP/GLCanvas.pm
  32. +36 −0 lib/IUP/Hbox.pm
  33. +43 −0 lib/IUP/Image.pm
  34. +43 −0 lib/IUP/ImageRGB.pm
  35. +43 −0 lib/IUP/ImageRGBA.pm
  36. +910 −0 lib/IUP/Internal/Attribute.pm
  37. +372 −0 lib/IUP/Internal/Callback.pm
  38. +3,903 −0 lib/IUP/Internal/Callback.xs
  39. +475 −0 lib/IUP/Internal/Element.pm
  40. +18 −0 lib/IUP/Internal/LibraryCD.pm
  41. +25 −0 lib/IUP/Internal/LibraryCD.xs
  42. +18 −0 lib/IUP/Internal/LibraryIUP.pm
  43. +2,081 −0 lib/IUP/Internal/LibraryIUP.xs
  44. +16 −0 lib/IUP/Item.pm
  45. +16 −0 lib/IUP/Label.pm
  46. +14 −0 lib/IUP/List.pm
  47. +60 −0 lib/IUP/Matrix.pm
  48. +37 −0 lib/IUP/Menu.pm
  49. +14 −0 lib/IUP/MessageDlg.pm
  50. +14 −0 lib/IUP/Multiline.pm
  51. +37 −0 lib/IUP/Normalizer.pm
  52. +19 −0 lib/IUP/OleControl.pm
  53. +74 −0 lib/IUP/PPlot.pm
  54. +14 −0 lib/IUP/ProgressBar.pm
  55. +25 −0 lib/IUP/Radio.pm
  56. +23 −0 lib/IUP/Sbox.pm
  57. +14 −0 lib/IUP/Separator.pm
  58. +14 −0 lib/IUP/Spin.pm
  59. +27 −0 lib/IUP/Spinbox.pm
  60. +22 −0 lib/IUP/Split.pm
  61. +22 −0 lib/IUP/Submenu.pm
  62. +37 −0 lib/IUP/Tabs.pm
  63. +22 −0 lib/IUP/Text.pm
  64. +14 −0 lib/IUP/Timer.pm
  65. +16 −0 lib/IUP/Toggle.pm
  66. +14 −0 lib/IUP/Tree.pm
  67. +14 −0 lib/IUP/User.pm
  68. +25 −0 lib/IUP/Val.pm
  69. +36 −0 lib/IUP/Vbox.pm
  70. +36 −0 lib/IUP/Zbox.pm
  71. +7,063 −0 src/ppport.h
  72. +10 −0 t/00-load.t
  73. +51 −0 t/01-load-submodules.t
  74. +53 −0 t/empty-new.t
  75. +75 −0 t/iup-global-funcs.t
  76. +168 −0 t/iup.t
  77. +13 −0 t/manifest.t
  78. +12 −0 t/pod.t
  79. +50 −0 typemap
View
@@ -0,0 +1,15 @@
+blib*
+Build
+Build.bat
+_build*
+pm_to_blib*
+tmp*
+*.tar.gz
+*.old
+*.bak
+*.o
+*.c
+_internal
+META.yml
+MYMETA.yml
+MANIFEST
View
@@ -0,0 +1,42 @@
+use strict;
+use warnings;
+
+use Module::Build;
+
+eval { require Alien::IUP };
+die "You need to have Alien::IUP installed\n" if $@;
+
+my $builder = Module::Build->new(
+ module_name => 'IUP',
+ license => 'mit',
+ dist_abstract => 'IUP bindings to Perl',
+ dist_author => 'KMX <kmx@cpan.org>',
+ dist_version_from => 'lib/IUP.pm',
+ requires => {
+ 'Carp' => 0,
+ 'constant' => 0,
+ },
+ build_requires => { # need to have for running: ./Build (install|test)
+ 'Module::Build' => 0,
+ 'Alien::IUP' => 0,
+ 'Test::More' => 0,
+ 'Carp' => 0,
+ 'constant' => 0,
+ },
+ configure_requires => { # need to have for running: perl Buil.PL
+ 'Module::Build' => 0,
+ 'Alien::IUP' => 0,
+ },
+ add_to_cleanup => [ 'IUP-*' ],
+ c_source => 'src', # ppport.h
+ extra_compiler_flags => Alien::IUP->config('INC'),
+ extra_linker_flags => Alien::IUP->config('LIBS'),
+ meta_merge => {
+ resources => {
+ bugtracker => 'http://rt.cpan.org/NoAuth/Bugs.html?Dist=IUP',
+ repository => 'http://github.com/kmx/perl-iup',
+ }
+ },
+);
+
+$builder->create_build_script();
View
@@ -0,0 +1,5 @@
+Revision history for IUP
+
+0.01 Date/time
+ First version, released on an unsuspecting world.
+
View
@@ -0,0 +1,25 @@
+.git
+_build
+_tmp
+stage
+blib*
+pm_to_blib*
+deps
+^Build$
+^Build.bat$
+^MYMETA.yml$
+^MANIFEST.SKIP$
+^tmp
+^build_
+^download
+^share
+^tmp
+^test
+\.c$
+\.o$
+\.old$
+\.tmp$
+\.bak$
+\.zip$
+\.gz$
+pod2htm*.tmp
View
73 README
@@ -0,0 +1,73 @@
+IUP
+
+The README is used to introduce the module and provide instructions on
+how to install the module, any machine dependencies it may have (for
+example C compilers and installed libraries) and any other information
+that should be provided before the module is installed.
+
+A README file is required for CPAN modules since CPAN extracts the README
+file from a module distribution so that people browsing the archive
+can use it to get an idea of the module's uses. It is usually a good idea
+to provide version information here so that people can decide whether
+fixes for the module are worth downloading.
+
+
+INSTALLATION
+
+To install this module, run the following commands:
+
+ perl Build.PL
+ ./Build
+ ./Build test
+ ./Build install
+
+SUPPORT AND DOCUMENTATION
+
+After installing, you can find documentation for this module with the
+perldoc command.
+
+ perldoc IUP
+
+You can also look for information at:
+
+ RT, CPAN's request tracker
+ http://rt.cpan.org/NoAuth/Bugs.html?Dist=IUP
+
+ AnnoCPAN, Annotated CPAN documentation
+ http://annocpan.org/dist/IUP
+
+ CPAN Ratings
+ http://cpanratings.perl.org/d/IUP
+
+ Search CPAN
+ http://search.cpan.org/dist/IUP/
+
+
+LICENSE AND COPYRIGHT
+
+Copyright (C) 2010 KMX
+
+This program is distributed under the MIT (X11) License:
+L<http://www.opensource.org/licenses/mit-license.php>
+
+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.
+
View
88 TODO
@@ -0,0 +1,88 @@
+GLOBAL
+- _generators
+ + attributes
+ + check against GetAttrNames
+- rewrite all examples from lua to perl
+- consider redesign
+ IUP::Internal::LibraryIUP
+ IUP::Internal::LibraryCD
+ IUP::Internal::LibraryIM
+ IUP::Internal::LibraryIMLIB
+ ...
+- move global ihandle table from IUP::Internal::Callback to IUP::Internal::LibraryIUP
+- put somewhere key related functions (see iupkey.h + iup.h) - ?IUP::Keys?
+ sub isAltXkey
+ sub isCtrlXkey
+ sub isShiftXkey
+ sub isSysXkey
+ sub isXkey
+ sub isalt
+ sub iscontrol
+ sub isdouble
+ sub isprint
+ sub isshift
+ sub issys
+ sub isxkey
+ sub isbutton1
+ sub isbutton2
+ sub isbutton3
+ sub isbutton4
+ sub isbutton5
+- update README + Changes
+
+IUP
+- maybe missing (comparing to LUA)
+ sub SetHandle ... IUP->SetHandle('xx', $d->ihandle);
+- maybe not needed (comparing to LUA)
+ sub Close
+ sub GetFocus (we have in Element)
+ sub GetHandle (we have in Element)
+- consider:
+ sub Open (probably not)
+- tests for all global functions
+
+IUP::Constants
+- K_* (see iupkey.h)
+
+IUP::Internal::Element
+- maybe missing (comparing to LUA)
+ sub GetAttributeData (see LUA implementation)
+ sub SetAttributes vs. sub StoreAttribute
+ sub GetName (we have $self->name)
+- maybe not needed (comparing to LUA)
+ sub GetCallback
+- GetAttributes
+ in scalar context = string, in list? context = hash?
+ or: GetAttributesStr vs. GetAttributesHRef
+- tests for all common functions
+
+IUP::Image*
+- move relevant methods from IUP::Internal::Element > IUP::Image
+- add missing methods
+ iup.LoadImage(file_name: string) -> (elem: ihandle) [in Lua]
+ iup.SaveImage(ih: ihandle, file_name, format: string) -> (ret: boolean) [in Lua]
+ iup.GetNativeHandleImage(handle: userdata) -> (image: imImage) [in Lua]
+ iup.GetImageNativeHandle(image: imImage) -> (handle: userdata) [in Lua]
+- base IUP::Image::* on IUP::Image
+- new( ... colors=>[ ] )
+- new( ... pixels=>pack('C*', @array) );
+- 1=>.. 2=>.. 3=>..
+
+IUP::(dialogs)
+- move relevant methods from IUP::Internal::Element > IUP::Dialog
+ IUP::Dialog->popup([x, y: number]) -> (ret: number) [in Lua]
+ IUP::Dialog->show() -> (ret: number) [in IupLua]
+ IUP::Dialog->showxy([x, y: number]) -> (ret: number) [in Lua]
+ IUP::Dialog->hide() -> (ret: number) [in Lua]
+- base IUP::(File|Message|Color|Font)Dlg on IUP::Dialog
+
+IUP::Canvas
+- implement missing methods
+
+IUP::OleControl
+- missing
+- maybe not neccesarry in the first release
+
+IUP::ImageLib
+- missing
+- check memory consumption
No changes.
No changes.
Oops, something went wrong.

0 comments on commit e8cb0bb

Please sign in to comment.