fxruby 1.6.28-x86-mingw32 → 1.6.29-x86-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. checksums.yaml +7 -7
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/.gitignore +1 -1
  5. data/History.txt +13 -1
  6. data/Manifest.txt +1 -1
  7. data/Rakefile +49 -39
  8. data/examples/RAA.rb +8 -2
  9. data/examples/WhatAQuietStiff.rb +2 -2
  10. data/examples/babelfish.rb +9 -2
  11. data/examples/browser.rb +1 -1
  12. data/examples/button.rb +3 -9
  13. data/examples/canvasdemo.rb +3 -3
  14. data/examples/charts.rb +9 -2
  15. data/examples/dctest.rb +4 -10
  16. data/examples/gembrowser.rb +4 -4
  17. data/examples/gltest.rb +3 -3
  18. data/examples/glviewer.rb +3 -9
  19. data/examples/groupbox.rb +3 -9
  20. data/examples/header.rb +1 -1
  21. data/examples/hello2.rb +1 -1
  22. data/examples/iRAA.rb +7 -1
  23. data/examples/iconlist.rb +3 -9
  24. data/examples/imageviewer.rb +3 -9
  25. data/examples/mditest.rb +1 -1
  26. data/examples/raabrowser.rb +8 -2
  27. data/examples/rmagick.rb +7 -1
  28. data/examples/shutter.rb +3 -9
  29. data/examples/splitter.rb +3 -9
  30. data/examples/table.rb +26 -3
  31. data/examples/textedit/textedit.rb +3 -3
  32. data/ext/fox16_c/FXRbApp.cpp +1 -1
  33. data/ext/fox16_c/FXRuby.cpp +18 -9
  34. data/ext/fox16_c/extconf.rb +252 -11
  35. data/ext/fox16_c/include/FXRbTreeList.h +3 -3
  36. data/ext/fox16_c/include/FXRuby.h +7 -6
  37. data/ext/fox16_c/markfuncs.cpp +3 -22
  38. data/ext/fox16_c/unregisterOwnedObjects.cpp +1 -2
  39. data/lib/1.8/fox16_c.so +0 -0
  40. data/lib/1.9/fox16_c.so +0 -0
  41. data/lib/2.0/fox16_c.so +0 -0
  42. data/lib/2.1/fox16_c.so +0 -0
  43. data/lib/2.2/fox16_c.so +0 -0
  44. data/lib/fox16.rb +16 -6
  45. data/lib/fox16/core.rb +14 -0
  46. data/lib/fox16/glshapes.rb +1 -0
  47. data/lib/fox16/version.rb +1 -1
  48. data/lib/x86-mingw32/libFOX-1.6-0.dll +0 -0
  49. data/lib/x86-mingw32/libfxscintilla-20.dll +0 -0
  50. data/lib/x86-mingw32/libgcc_s_sjlj-1.dll +0 -0
  51. data/lib/x86-mingw32/libjpeg-8.dll +0 -0
  52. data/lib/x86-mingw32/libpng15-15.dll +0 -0
  53. data/lib/x86-mingw32/libstdc++-6.dll +0 -0
  54. data/lib/x86-mingw32/libtiff-5.dll +0 -0
  55. data/lib/x86-mingw32/libwinpthread-1.dll +0 -0
  56. data/lib/x86-mingw32/zlib1.dll +0 -0
  57. data/rdoc-sources/FXBMPIcon.rb +1 -1
  58. data/rdoc-sources/FXImage.rb +8 -2
  59. data/swig-interfaces/FX4Splitter.i +0 -6
  60. data/swig-interfaces/FX7Segment.i +0 -8
  61. data/swig-interfaces/FXAccelTable.i +0 -7
  62. data/swig-interfaces/FXApp.i +15 -23
  63. data/swig-interfaces/FXArrowButton.i +0 -10
  64. data/swig-interfaces/FXBMPIcon.i +0 -2
  65. data/swig-interfaces/FXBMPImage.i +0 -2
  66. data/swig-interfaces/FXBitmap.i +0 -6
  67. data/swig-interfaces/FXButton.i +0 -4
  68. data/swig-interfaces/FXCURCursor.i +0 -2
  69. data/swig-interfaces/FXCanvas.i +0 -2
  70. data/swig-interfaces/FXCheckButton.i +0 -7
  71. data/swig-interfaces/FXChoiceBox.i +0 -8
  72. data/swig-interfaces/FXColorBar.i +0 -8
  73. data/swig-interfaces/FXColorDialog.i +0 -4
  74. data/swig-interfaces/FXColorList.i +0 -9
  75. data/swig-interfaces/FXColorRing.i +0 -40
  76. data/swig-interfaces/FXColorSelector.i +0 -25
  77. data/swig-interfaces/FXColorWell.i +0 -10
  78. data/swig-interfaces/FXColorWheel.i +0 -15
  79. data/swig-interfaces/FXComboBox.i +0 -7
  80. data/swig-interfaces/FXComposeContext.i +0 -5
  81. data/swig-interfaces/FXComposite.i +0 -4
  82. data/swig-interfaces/FXCursor.i +0 -9
  83. data/swig-interfaces/FXDC.i +0 -26
  84. data/swig-interfaces/FXDCPrint.i +0 -19
  85. data/swig-interfaces/FXDataTarget.i +0 -5
  86. data/swig-interfaces/FXDebugTarget.i +0 -4
  87. data/swig-interfaces/FXDelegator.i +0 -2
  88. data/swig-interfaces/FXDial.i +0 -14
  89. data/swig-interfaces/FXDialogBox.i +0 -2
  90. data/swig-interfaces/FXDict.i +0 -27
  91. data/swig-interfaces/FXDirDialog.i +0 -5
  92. data/swig-interfaces/FXDirList.i +0 -31
  93. data/swig-interfaces/FXDirSelector.i +0 -19
  94. data/swig-interfaces/FXDockBar.i +0 -8
  95. data/swig-interfaces/FXDockHandler.i +0 -10
  96. data/swig-interfaces/FXDockSite.i +0 -7
  97. data/swig-interfaces/FXDockTitle.i +0 -6
  98. data/swig-interfaces/FXDragCorner.i +0 -9
  99. data/swig-interfaces/FXDrawable.i +0 -7
  100. data/swig-interfaces/FXFileDialog.i +0 -5
  101. data/swig-interfaces/FXFileDict.i +0 -5
  102. data/swig-interfaces/FXFileList.i +0 -23
  103. data/swig-interfaces/FXFileSelector.i +0 -33
  104. data/swig-interfaces/FXFoldingList.i +6 -19
  105. data/swig-interfaces/FXFont.i +0 -20
  106. data/swig-interfaces/FXFontDialog.i +3 -7
  107. data/swig-interfaces/FXFontSelector.i +3 -29
  108. data/swig-interfaces/FXFrame.i +0 -20
  109. data/swig-interfaces/FXGIFIcon.i +0 -2
  110. data/swig-interfaces/FXGIFImage.i +0 -2
  111. data/swig-interfaces/FXGLCanvas.i +0 -4
  112. data/swig-interfaces/FXGLContext.i +0 -4
  113. data/swig-interfaces/FXGLShape.i +0 -11
  114. data/swig-interfaces/FXGLViewer.i +0 -65
  115. data/swig-interfaces/FXGradientBar.i +8 -9
  116. data/swig-interfaces/FXGroupBox.i +0 -6
  117. data/swig-interfaces/FXHeader.i +0 -24
  118. data/swig-interfaces/FXHorizontalFrame.i +0 -2
  119. data/swig-interfaces/FXICOIcon.i +0 -2
  120. data/swig-interfaces/FXICOImage.i +0 -2
  121. data/swig-interfaces/FXIcon.i +0 -7
  122. data/swig-interfaces/FXIconList.i +0 -51
  123. data/swig-interfaces/FXIconSource.i +0 -4
  124. data/swig-interfaces/FXId.i +0 -4
  125. data/swig-interfaces/FXImage.i +21 -4
  126. data/swig-interfaces/FXImageFrame.i +0 -7
  127. data/swig-interfaces/FXImageView.i +0 -6
  128. data/swig-interfaces/FXInputDialog.i +0 -8
  129. data/swig-interfaces/FXJPGIcon.i +0 -4
  130. data/swig-interfaces/FXJPGImage.i +0 -4
  131. data/swig-interfaces/FXKnob.i +0 -12
  132. data/swig-interfaces/FXLabel.i +0 -16
  133. data/swig-interfaces/FXList.i +0 -33
  134. data/swig-interfaces/FXListBox.i +0 -7
  135. data/swig-interfaces/FXMDIButton.i +0 -12
  136. data/swig-interfaces/FXMDIChild.i +0 -51
  137. data/swig-interfaces/FXMDIClient.i +0 -6
  138. data/swig-interfaces/FXMainWindow.i +0 -2
  139. data/swig-interfaces/FXMat3d.i +0 -2
  140. data/swig-interfaces/FXMat3f.i +0 -2
  141. data/swig-interfaces/FXMat4d.i +0 -2
  142. data/swig-interfaces/FXMat4f.i +0 -2
  143. data/swig-interfaces/FXMatrix.i +0 -4
  144. data/swig-interfaces/FXMemoryStream.i +0 -1
  145. data/swig-interfaces/FXMenuBar.i +0 -2
  146. data/swig-interfaces/FXMenuButton.i +0 -7
  147. data/swig-interfaces/FXMenuCaption.i +0 -15
  148. data/swig-interfaces/FXMenuCascade.i +0 -5
  149. data/swig-interfaces/FXMenuCheck.i +0 -8
  150. data/swig-interfaces/FXMenuCommand.i +0 -5
  151. data/swig-interfaces/FXMenuPane.i +0 -2
  152. data/swig-interfaces/FXMenuRadio.i +0 -8
  153. data/swig-interfaces/FXMenuSeparator.i +0 -5
  154. data/swig-interfaces/FXMenuTitle.i +0 -4
  155. data/swig-interfaces/FXMessageBox.i +13 -10
  156. data/swig-interfaces/FXOptionMenu.i +0 -7
  157. data/swig-interfaces/FXPCXIcon.i +0 -2
  158. data/swig-interfaces/FXPCXImage.i +0 -2
  159. data/swig-interfaces/FXPNGIcon.i +0 -2
  160. data/swig-interfaces/FXPNGImage.i +0 -2
  161. data/swig-interfaces/FXPPMIcon.i +0 -2
  162. data/swig-interfaces/FXPPMImage.i +0 -2
  163. data/swig-interfaces/FXPacker.i +0 -23
  164. data/swig-interfaces/FXPicker.i +0 -2
  165. data/swig-interfaces/FXPopup.i +0 -18
  166. data/swig-interfaces/FXPrintDialog.i +0 -31
  167. data/swig-interfaces/FXProgressBar.i +0 -12
  168. data/swig-interfaces/FXProgressDialog.i +0 -8
  169. data/swig-interfaces/FXRGBIcon.i +0 -2
  170. data/swig-interfaces/FXRGBImage.i +0 -2
  171. data/swig-interfaces/FXRadioButton.i +0 -7
  172. data/swig-interfaces/FXRecentFiles.i +0 -6
  173. data/swig-interfaces/FXRegion.i +0 -2
  174. data/swig-interfaces/FXRegistry.i +0 -12
  175. data/swig-interfaces/FXReplaceDialog.i +0 -15
  176. data/swig-interfaces/FXRootWindow.i +0 -6
  177. data/swig-interfaces/FXRuler.i +0 -45
  178. data/swig-interfaces/FXScrollArea.i +0 -14
  179. data/swig-interfaces/FXScrollBar.i +0 -2
  180. data/swig-interfaces/FXScrollPane.i +0 -10
  181. data/swig-interfaces/FXScrollWindow.i +0 -2
  182. data/swig-interfaces/FXSearchDialog.i +0 -2
  183. data/swig-interfaces/FXSeparator.i +0 -9
  184. data/swig-interfaces/FXSettings.i +0 -11
  185. data/swig-interfaces/FXShell.i +0 -4
  186. data/swig-interfaces/FXShutter.i +0 -14
  187. data/swig-interfaces/FXSlider.i +0 -19
  188. data/swig-interfaces/FXSpinner.i +0 -9
  189. data/swig-interfaces/FXSplashWindow.i +0 -8
  190. data/swig-interfaces/FXSplitter.i +0 -10
  191. data/swig-interfaces/FXSpring.i +0 -8
  192. data/swig-interfaces/FXStatusBar.i +0 -5
  193. data/swig-interfaces/FXStatusLine.i +0 -8
  194. data/swig-interfaces/FXStringDict.i +0 -3
  195. data/swig-interfaces/FXSwitcher.i +0 -4
  196. data/swig-interfaces/FXTGAIcon.i +0 -2
  197. data/swig-interfaces/FXTGAImage.i +0 -2
  198. data/swig-interfaces/FXTIFIcon.i +0 -4
  199. data/swig-interfaces/FXTIFImage.i +0 -4
  200. data/swig-interfaces/FXTabBar.i +0 -5
  201. data/swig-interfaces/FXTabBook.i +0 -2
  202. data/swig-interfaces/FXTabItem.i +0 -2
  203. data/swig-interfaces/FXTable.i +0 -17
  204. data/swig-interfaces/FXToggleButton.i +0 -12
  205. data/swig-interfaces/FXToolBarGrip.i +0 -4
  206. data/swig-interfaces/FXToolBarShell.i +0 -16
  207. data/swig-interfaces/FXToolBarTab.i +0 -13
  208. data/swig-interfaces/FXToolTip.i +0 -10
  209. data/swig-interfaces/FXTopWindow.i +0 -17
  210. data/swig-interfaces/FXTranslator.i +0 -2
  211. data/swig-interfaces/FXTreeList.i +18 -75
  212. data/swig-interfaces/FXTreeListBox.i +18 -38
  213. data/swig-interfaces/FXVerticalFrame.i +0 -2
  214. data/swig-interfaces/FXVisual.i +0 -38
  215. data/swig-interfaces/FXWindow.i +3 -53
  216. data/swig-interfaces/FXWizard.i +0 -17
  217. data/swig-interfaces/FXXBMIcon.i +0 -2
  218. data/swig-interfaces/FXXBMImage.i +0 -2
  219. data/swig-interfaces/FXXPMIcon.i +0 -2
  220. data/swig-interfaces/FXXPMImage.i +0 -2
  221. data/swig-interfaces/fxdefs.i +33 -35
  222. data/swig-interfaces/ruby-typemaps.i +19 -2
  223. data/test/TC_FXBMPImage.rb +13 -0
  224. data/test/TC_FXFileStream.rb +3 -3
  225. data/test/TC_FXImage.rb +40 -2
  226. data/test/TC_FXSize.rb +12 -0
  227. data/test/TC_FXWindow.rb +26 -0
  228. data/test/TC_Misc.rb +2 -0
  229. metadata +177 -161
  230. metadata.gz.sig +0 -0
  231. data/Rakefile.cross +0 -421
@@ -129,11 +129,11 @@ protected:
129
129
  #include "FXRbObjectVirtuals.h"
130
130
  #include "FXRbTreeItemVirtuals.h"
131
131
  public:
132
- // Pointer to this tree item's owner (if any)
133
- FXWindow *owner;
132
+ // Is this tree item owned by an FXTreeList yet?
133
+ FXbool owned;
134
134
  public:
135
135
  // Constructor
136
- FXRbTreeItem(const FXString& text,FXIcon* oi=NULL,FXIcon* ci=NULL,void* ptr=NULL) : FXTreeItem(text,oi,ci,ptr),owner(0){}
136
+ FXRbTreeItem(const FXString& text,FXIcon* oi=NULL,FXIcon* ci=NULL,void* ptr=NULL) : FXTreeItem(text,oi,ci,ptr),owned(FALSE){}
137
137
 
138
138
  // Mark dependencies for the GC
139
139
  static void markfunc(FXTreeItem* self);
@@ -53,17 +53,18 @@ struct swig_type_info;
53
53
 
54
54
  // SWIG runtime functions we need
55
55
  extern "C" {
56
- const char * SWIG_Ruby_TypeName(const swig_type_info *ty);
57
- swig_type_info * SWIG_Ruby_TypeQuery(const char *);
58
- VALUE SWIG_Ruby_NewPointerObj(void *ptr, swig_type_info *type, int own);
59
- int SWIG_Ruby_ConvertPtr(VALUE obj, void **ptr, swig_type_info *ty, int flags);
56
+ static const char * SWIG_TypeName(const swig_type_info *ty);
57
+ static VALUE SWIG_Ruby_NewPointerObj(void *ptr, swig_type_info *type, int own);
58
+ #define SWIG_ConvertPtr(obj, pptr, type, flags) SWIG_Ruby_ConvertPtrAndOwn(obj, pptr, type, flags, 0)
59
+ typedef void (*ruby_owntype)(void*);
60
+ static int SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags, ruby_owntype *own);
60
61
  }
61
62
 
62
63
  // Helper for overloaded show() functions
63
64
  template <class TYPE>
64
65
  VALUE showHelper(VALUE self, int argc, VALUE *argv, TYPE *p, swig_type_info *typeinfo) {
65
66
  TYPE *win;
66
- SWIG_Ruby_ConvertPtr(self,(void**)&win,typeinfo,1);
67
+ SWIG_ConvertPtr(self,(void**)&win,typeinfo,1);
67
68
  if (argc == 0) {
68
69
  win->_show();
69
70
  }
@@ -162,7 +163,7 @@ extern VALUE FXRbMakeColorArray(const FXColor* colors,FXint w,FXint h);
162
163
  extern FXuint FXRbNumberOfFXColors(VALUE string_or_ary);
163
164
 
164
165
  // Allocate a FXColor buffer and populate with data
165
- extern FXColor *FXRbConvertToFXColors(VALUE string_or_ary);
166
+ extern FXColor *FXRbConvertToFXColors(VALUE string_or_ary, FXuint *opts);
166
167
 
167
168
  extern void* FXRbGetExpectedData(VALUE recv,FXSelector key,VALUE data);
168
169
 
@@ -18,7 +18,7 @@ static void delete_if_not_owned(BASECLASS* self,SUBCLASS*){
18
18
  if(!dynamic_cast<SUBCLASS*>(self)->owned){
19
19
  delete self; // also unregisters it
20
20
  }
21
- }
21
+ }
22
22
  }
23
23
  FXRbUnregisterRubyObj(self);
24
24
  }
@@ -33,7 +33,7 @@ static void delete_if_not_owned_by_app(BASECLASS* self,SUBCLASS*){
33
33
  if(!dynamic_cast<SUBCLASS*>(self)->ownedByApp){
34
34
  delete self; // also unregisters it
35
35
  }
36
- }
36
+ }
37
37
  }
38
38
  FXRbUnregisterRubyObj(self);
39
39
  }
@@ -419,26 +419,7 @@ void FXRbTreeItem::markfunc(FXTreeItem* self){
419
419
 
420
420
 
421
421
  void FXRbTreeItem::freefunc(FXTreeItem* self){
422
- if(self!=0){
423
- if(!FXRbIsBorrowed(self)){
424
- if(self->isMemberOf(FXMETACLASS(FXRbTreeItem))){
425
- FXRbTreeItem* treeItem=dynamic_cast<FXRbTreeItem*>(self);
426
- FXASSERT(treeItem);
427
- FXTreeList* treeList=dynamic_cast<FXTreeList*>(treeItem->owner);
428
- if(treeList){
429
- FXRbUnregisterRubyObj(self); // MAYBE
430
- treeList->removeItem(self,TRUE);
431
- }
432
- else{
433
- FXTreeListBox* treeListBox=dynamic_cast<FXTreeListBox*>(treeItem->owner);
434
- if(treeListBox){
435
- treeListBox->removeItem(self);
436
- }
437
- }
438
- }
439
- }
440
- FXRbUnregisterRubyObj(self);
441
- }
422
+ delete_if_not_owned(self,reinterpret_cast<FXRbTreeItem*>(0));
442
423
  }
443
424
 
444
425
 
@@ -96,7 +96,7 @@ void FXRbTable::unregisterOwnedObjects(FXTable *self)
96
96
  FXRbUnregisterRubyObj(self->getColumnHeader());
97
97
  for(r=0; r<self->getNumRows(); r++){
98
98
  for(c=0; c<self->getNumColumns(); c++){
99
- FXRbUnregisterRubyObj(self->getItem(r,c));
99
+ FXRbUnregisterRubyObj(self->getItem(r,c));
100
100
  }
101
101
  }
102
102
  }
@@ -117,4 +117,3 @@ void FXRbTreeList::unregisterOwnedObjects(FXTreeList *self)
117
117
  // Now zero-out pointers held by still-alive Ruby objects
118
118
  for (FXint i = 0; i < items.no(); i++) FXRbUnregisterRubyObj(items[i]);
119
119
  }
120
-
data/lib/1.8/fox16_c.so CHANGED
Binary file
data/lib/1.9/fox16_c.so CHANGED
Binary file
data/lib/2.0/fox16_c.so CHANGED
Binary file
Binary file
Binary file
data/lib/fox16.rb CHANGED
@@ -1,9 +1,19 @@
1
- if RUBY_PLATFORM =~ /(mswin|mingw)/i
2
- require "#{RUBY_VERSION.sub(/\.\d+$/, '')}/fox16_c.so"
3
- elsif RUBY_PLATFORM =~ /darwin/
4
- require "fox16_c.bundle"
5
- else
6
- require "fox16_c.so"
1
+ begin
2
+ require 'fox16_c'
3
+ rescue LoadError
4
+ # If it's a Windows binary gem, try the <major>.<minor> subdirectory
5
+ if RUBY_PLATFORM =~/(mswin|mingw)/i
6
+ major_minor = RUBY_VERSION[ /^(\d+\.\d+)/ ] or
7
+ raise "Oops, can't extract the major/minor version from #{RUBY_VERSION.dump}"
8
+
9
+ # Set the PATH environment variable, so that libpq.dll can be found.
10
+ old_path = ENV['PATH']
11
+ ENV['PATH'] = "#{File.expand_path("../#{RUBY_PLATFORM.gsub("i386", "x86")}", __FILE__)};#{old_path}"
12
+ require "#{major_minor}/fox16_c"
13
+ ENV['PATH'] = old_path
14
+ else
15
+ raise
16
+ end
7
17
  end
8
18
 
9
19
  require "fox16/core"
data/lib/fox16/core.rb CHANGED
@@ -696,5 +696,19 @@ module Fox
696
696
  =end
697
697
 
698
698
  end
699
+
700
+ class FXImage
701
+ alias initialize_without_data_string initialize
702
+ def initialize(a, pix, *args)
703
+ initialize_without_data_string(a, pix, *args)
704
+ @data_string = (options & IMAGE_OWNED) != 0 ? nil : pix
705
+ end
706
+
707
+ alias setPixels_without_data_string setPixels
708
+ def setPixels(pix, *args)
709
+ setPixels_without_data_string(pix, *args)
710
+ @data_string = (options & IMAGE_OWNED) != 0 ? nil : pix
711
+ end
712
+ end
699
713
  end
700
714
 
@@ -1,4 +1,5 @@
1
1
  require 'opengl'
2
+ require 'glu'
2
3
 
3
4
  module Fox
4
5
 
data/lib/fox16/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Fox
2
2
  def Fox.fxrubyversion
3
- "1.6.28"
3
+ "1.6.29"
4
4
  end
5
5
  end
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -30,7 +30,7 @@ module Fox
30
30
  # +width+:: width [Integer]
31
31
  # +height+:: height [Integer]
32
32
  #
33
- def initialize(a, pix=nil, clr=FXRGB(192,192,192), opts=0, width=1, height=1) # :yields: theBMPIcon
33
+ def initialize(a, pix=nil, clr=Fox.FXRGB(192,192,192), opts=0, width=1, height=1) # :yields: theBMPIcon
34
34
  end
35
35
  end
36
36
 
@@ -17,7 +17,11 @@ module Fox
17
17
  # if you intend to do repeated re-rendering of the image after it has been
18
18
  # created.
19
19
  # +IMAGE_OWNED+::
20
- # Does nothing - for backward compatibility only.
20
+ # If +IMAGE_OWNED+ is set, the image pixel data is copied into the image.
21
+ # If +IMAGE_OWNED+ is not set, a image pixel string is directly used as
22
+ # memory buffer of the image, without copying the data.
23
+ # If pixel data is given as an Array instead of a string, data is copied in
24
+ # any case.
21
25
  # +IMAGE_DITHER+::
22
26
  # Dither image to look better
23
27
  # +IMAGE_NEAREST+::
@@ -91,7 +95,9 @@ module Fox
91
95
  #
92
96
  # Image pixels are stored bytewise as [RGBA] values.
93
97
  #
94
- def pixel_string ; end
98
+ # Optional offset and size can be used to retrieve a part of
99
+ # the image data. Both are counted in bytes.
100
+ def pixel_string(offset=nil, size=nil) ; end
95
101
 
96
102
  #
97
103
  # Return the color of the pixel at (_x_, _y_).
@@ -39,12 +39,6 @@ enum {
39
39
  * proportionally resized, maintaining the same split-percentage.
40
40
  */
41
41
  class FX4Splitter : public FXComposite {
42
- protected:
43
- FX4Splitter();
44
- FXuchar getMode(FXint x,FXint y);
45
- void moveSplit(FXint x,FXint y);
46
- void drawSplit(FXint x,FXint y);
47
- void adjustLayout();
48
42
  public:
49
43
  long onLeftBtnPress(FXObject*,FXSelector,void* PTR_EVENT);
50
44
  long onLeftBtnRelease(FXObject*,FXSelector,void* PTR_EVENT);
@@ -50,14 +50,6 @@ enum {
50
50
  * display widget can also display some letters and punctuations.
51
51
  */
52
52
  class FX7Segment : public FXFrame {
53
- protected:
54
- FXString label; // Text being shown
55
- FXColor textColor; // Text color
56
- FXint thickness; // Segment thickness
57
- FXint cellwidth; // Width of cell
58
- FXint cellheight; // height of cell
59
- protected:
60
- FX7Segment();
61
53
  public:
62
54
  long onPaint(FXObject*,FXSelector,void* PTR_EVENT);
63
55
  long onCmdSetValue(FXObject*,FXSelector,void*); // FIXME
@@ -27,13 +27,6 @@
27
27
  */
28
28
 
29
29
  class FXAccelTable : public FXObject {
30
- protected:
31
- struct FXAccelKey {
32
- FXObject *target; // Target object of message
33
- FXSelector messagedn; // Message being sent
34
- FXSelector messageup; // Message being sent
35
- FXHotKey code; // Keysym and modifier mask to match
36
- };
37
30
  public:
38
31
  long onKeyPress(FXObject*,FXSelector,void* PTR_EVENT);
39
32
  long onKeyRelease(FXObject*,FXSelector,void* PTR_EVENT);
@@ -133,14 +133,6 @@ struct FXTimer {
133
133
 
134
134
  /// Application Object
135
135
  class FXApp : public FXObject {
136
- protected:
137
-
138
- /// Return TRUE when new raw event is available
139
- virtual bool getNextEvent(FXRawEvent& ev,FXbool blocking=TRUE);
140
-
141
- /// Dispatch raw event
142
- virtual bool dispatchEvent(FXRawEvent& ev);
143
-
144
136
  public:
145
137
  long onCmdQuit(FXObject*,FXSelector,void* PTR_IGNORE);
146
138
  long onCmdDump(FXObject*,FXSelector,void* PTR_IGNORE);
@@ -178,7 +170,7 @@ public:
178
170
  return 0;
179
171
  }
180
172
  else{
181
- return FXRbApp::constructAndInit(name,vendor);
173
+ return FXRbApp::constructAndInit(name,vendor);
182
174
  }
183
175
  }
184
176
  }
@@ -368,15 +360,15 @@ public:
368
360
  FXuint m;
369
361
  if(mode&INPUT_READ){
370
362
  m=INPUT_READ;
371
- if(mode&INPUT_EXCEPT) m|=INPUT_EXCEPT;
363
+ if(mode&INPUT_EXCEPT) m|=INPUT_EXCEPT;
372
364
  fd=FXRbGetReadFileHandle(obj);
373
- self->addInput(fd,m,tgt,sel);
365
+ self->addInput(fd,m,tgt,sel);
374
366
  }
375
367
  if(mode&INPUT_WRITE){
376
368
  m=INPUT_WRITE;
377
- if(mode&INPUT_EXCEPT) m|=INPUT_EXCEPT;
369
+ if(mode&INPUT_EXCEPT) m|=INPUT_EXCEPT;
378
370
  fd=FXRbGetWriteFileHandle(obj);
379
- self->addInput(fd,m,tgt,sel);
371
+ self->addInput(fd,m,tgt,sel);
380
372
  }
381
373
  return true;
382
374
  }
@@ -390,15 +382,15 @@ public:
390
382
  FXuint m;
391
383
  if(mode&INPUT_READ){
392
384
  m=INPUT_READ;
393
- if(mode&INPUT_EXCEPT) m|=INPUT_EXCEPT;
385
+ if(mode&INPUT_EXCEPT) m|=INPUT_EXCEPT;
394
386
  fd=FXRbGetReadFileHandle(obj);
395
- self->removeInput(fd,m);
387
+ self->removeInput(fd,m);
396
388
  }
397
389
  if(mode&INPUT_WRITE){
398
390
  m=INPUT_WRITE;
399
- if(mode&INPUT_EXCEPT) m|=INPUT_EXCEPT;
391
+ if(mode&INPUT_EXCEPT) m|=INPUT_EXCEPT;
400
392
  fd=FXRbGetWriteFileHandle(obj);
401
- self->removeInput(fd,m);
393
+ self->removeInput(fd,m);
402
394
  }
403
395
  return true;
404
396
  }
@@ -557,13 +549,13 @@ public:
557
549
  FXASSERT(cur);
558
550
  if(cur->isMemberOf(FXMETACLASS(FXRbCursor))){
559
551
  dynamic_cast<FXRbCursor*>(cur)->ownedByApp=TRUE;
560
- }
552
+ }
561
553
  else if(cur->isMemberOf(FXMETACLASS(FXRbCURCursor))){
562
554
  dynamic_cast<FXRbCURCursor*>(cur)->ownedByApp=TRUE;
563
- }
555
+ }
564
556
  else if(cur->isMemberOf(FXMETACLASS(FXRbGIFCursor))){
565
557
  dynamic_cast<FXRbGIFCursor*>(cur)->ownedByApp=TRUE;
566
- }
558
+ }
567
559
  self->setWaitCursor(cur);
568
560
  }
569
561
  }
@@ -580,13 +572,13 @@ public:
580
572
  FXASSERT(cur);
581
573
  if(cur->isMemberOf(FXMETACLASS(FXRbCursor))){
582
574
  dynamic_cast<FXRbCursor*>(cur)->ownedByApp=TRUE;
583
- }
575
+ }
584
576
  else if(cur->isMemberOf(FXMETACLASS(FXRbCURCursor))){
585
577
  dynamic_cast<FXRbCURCursor*>(cur)->ownedByApp=TRUE;
586
- }
578
+ }
587
579
  else if(cur->isMemberOf(FXMETACLASS(FXRbGIFCursor))){
588
580
  dynamic_cast<FXRbGIFCursor*>(cur)->ownedByApp=TRUE;
589
- }
581
+ }
590
582
  self->setDefaultCursor(which,cur);
591
583
  }
592
584
  }
@@ -38,16 +38,6 @@ enum {
38
38
 
39
39
  /// Button with an arrow
40
40
  class FXArrowButton : public FXFrame {
41
- protected:
42
- FXColor arrowColor; // Arrow color
43
- FXint arrowSize; // Arrow size
44
- FXTimer *repeater; // Timer for auto-repeat
45
- FXString tip; // Tooltip value
46
- FXString help; // Help value
47
- FXbool state; // State of button
48
- FXbool fired; // Timer has fired
49
- protected:
50
- FXArrowButton();
51
41
  public:
52
42
  long onPaint(FXObject*,FXSelector,void* PTR_EVENT);
53
43
  long onUpdate(FXObject*,FXSelector,void* PTR_NULL);
@@ -23,8 +23,6 @@
23
23
 
24
24
  /// Microsoft Bitmap icon
25
25
  class FXBMPIcon : public FXIcon {
26
- protected:
27
- FXBMPIcon(){}
28
26
  public:
29
27
  %extend {
30
28
  static VALUE fileExt() {
@@ -23,8 +23,6 @@
23
23
 
24
24
  /// Microsoft Bitmap image
25
25
  class FXBMPImage : public FXImage {
26
- protected:
27
- FXBMPImage(){}
28
26
  public:
29
27
  %extend {
30
28
  static VALUE fileExt() {
@@ -41,12 +41,6 @@ enum {
41
41
  * words 8 pixels packed into a single byte, starting at bit 0 on the left.
42
42
  */
43
43
  class FXBitmap : public FXDrawable {
44
- protected:
45
- FXuchar *data; // Pixel data
46
- FXint bytewidth; // Number of bytes across
47
- FXuint options; // Options
48
- protected:
49
- FXBitmap();
50
44
  public:
51
45
  %extend {
52
46
  /**
@@ -41,10 +41,6 @@ enum {
41
41
 
42
42
  /// FXButton provides a push button. Buttons can have icons and/or labels.
43
43
  class FXButton : public FXLabel {
44
- protected:
45
- FXuchar state;
46
- protected:
47
- FXButton();
48
44
  public:
49
45
  long onPaint(FXObject*,FXSelector,void* PTR_EVENT);
50
46
  long onUpdate(FXObject*,FXSelector,void* PTR_NULL);