fxruby 1.6.20-x86-mingw32 → 1.6.22.pre2-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 (106) hide show
  1. data/.gemtest +0 -0
  2. data/README.txt +2 -1
  3. data/Rakefile +43 -35
  4. data/TODO +4 -4
  5. data/doap.rdf +2 -2
  6. data/ext/fox16/FXRbDataTarget.cpp +2 -2
  7. data/ext/fox16/FXRuby.cpp +31 -96
  8. data/ext/fox16/core_wrap.cpp +5 -1
  9. data/ext/fox16/dialogs_wrap.cpp +4 -4
  10. data/ext/fox16/extconf.rb +15 -7
  11. data/ext/fox16/frames_wrap.cpp +1 -1
  12. data/ext/fox16/fx3d_wrap.cpp +1 -1
  13. data/ext/fox16/iconlist_wrap.cpp +2 -2
  14. data/ext/fox16/include/FXRbApp.h +2 -2
  15. data/ext/fox16/include/FXRbCommon.h +2 -0
  16. data/ext/fox16/list_wrap.cpp +3 -3
  17. data/ext/fox16/markfuncs.cpp +1 -0
  18. data/ext/fox16/treelist_wrap.cpp +2 -2
  19. data/ext/fox16/ui_wrap.cpp +3 -3
  20. data/lib/1.8/fox16.so +0 -0
  21. data/lib/1.9/fox16.so +0 -0
  22. data/lib/fox16/accel_table.rb +16 -3
  23. data/lib/fox16/bitmapview.rb +7 -8
  24. data/lib/fox16/core.rb +5 -5
  25. data/lib/fox16/kwargs.rb +877 -879
  26. data/lib/fox16/scintilla.rb +1321 -45
  27. data/lib/fox16/version.rb +1 -1
  28. data/scripts/generate_kwargs_lib.rb +2 -4
  29. data/swig-interfaces/FXMemoryStream.i +9 -5
  30. data/swig-interfaces/ruby-typemaps.i +4 -4
  31. data/test/TC_FXAccelTable.rb +2 -2
  32. data/test/TC_FXApp.rb +48 -2
  33. data/test/TC_FXArc.rb +2 -2
  34. data/test/TC_FXBMPIcon.rb +2 -2
  35. data/test/TC_FXBMPImage.rb +2 -2
  36. data/test/TC_FXButton.rb +2 -2
  37. data/test/TC_FXCheckButton.rb +2 -2
  38. data/test/TC_FXComboBox.rb +2 -2
  39. data/test/TC_FXDC.rb +2 -2
  40. data/test/TC_FXDCPrint.rb +6 -5
  41. data/test/TC_FXDCWindow.rb +5 -3
  42. data/test/TC_FXDataTarget.rb +2 -2
  43. data/test/TC_FXDialogBox.rb +2 -2
  44. data/test/TC_FXDirList.rb +2 -2
  45. data/test/TC_FXExtentd.rb +2 -2
  46. data/test/TC_FXExtentf.rb +2 -2
  47. data/test/TC_FXFileAssoc.rb +2 -2
  48. data/test/TC_FXFileStream.rb +2 -2
  49. data/test/TC_FXFoldingList.rb +2 -2
  50. data/test/TC_FXFont.rb +2 -2
  51. data/test/TC_FXFontDesc.rb +2 -2
  52. data/test/TC_FXGLGroup.rb +2 -2
  53. data/test/TC_FXGLShape.rb +2 -2
  54. data/test/TC_FXGLViewer.rb +2 -2
  55. data/test/TC_FXGradientBar.rb +2 -2
  56. data/test/TC_FXHeader.rb +2 -2
  57. data/test/TC_FXHiliteStyle.rb +2 -2
  58. data/test/TC_FXIconDict.rb +2 -2
  59. data/test/TC_FXIconList.rb +2 -2
  60. data/test/TC_FXId.rb +2 -2
  61. data/test/TC_FXImage.rb +2 -2
  62. data/test/TC_FXLight.rb +2 -2
  63. data/test/TC_FXList.rb +2 -2
  64. data/test/TC_FXListBox.rb +2 -2
  65. data/test/TC_FXMainWindow.rb +2 -2
  66. data/test/TC_FXMat4f.rb +2 -2
  67. data/test/TC_FXMaterial.rb +2 -16
  68. data/test/TC_FXMemoryStream.rb +6 -6
  69. data/test/TC_FXMenuCheck.rb +2 -2
  70. data/test/TC_FXMenuCommand.rb +2 -2
  71. data/test/TC_FXMenuRadio.rb +7 -7
  72. data/test/TC_FXMessageBox.rb +2 -2
  73. data/test/TC_FXPoint.rb +2 -2
  74. data/test/TC_FXQuatf.rb +2 -2
  75. data/test/TC_FXRadioButton.rb +2 -2
  76. data/test/TC_FXRanged.rb +2 -2
  77. data/test/TC_FXRangef.rb +2 -2
  78. data/test/TC_FXRectangle.rb +2 -2
  79. data/test/TC_FXRegion.rb +2 -2
  80. data/test/TC_FXRegistry.rb +2 -2
  81. data/test/TC_FXScrollArea.rb +2 -2
  82. data/test/TC_FXScrollWindow.rb +2 -2
  83. data/test/TC_FXSegment.rb +2 -2
  84. data/test/TC_FXSettings.rb +2 -2
  85. data/test/TC_FXShell.rb +2 -2
  86. data/test/TC_FXSize.rb +2 -2
  87. data/test/TC_FXStream.rb +2 -2
  88. data/test/TC_FXTable.rb +47 -47
  89. data/test/TC_FXTableItem.rb +4 -4
  90. data/test/TC_FXText.rb +4 -4
  91. data/test/TC_FXTopWindow.rb +2 -2
  92. data/test/TC_FXTreeList.rb +2 -2
  93. data/test/TC_FXTreeListBox.rb +2 -2
  94. data/test/TC_FXUndoList.rb +3 -3
  95. data/test/TC_FXVec2d.rb +2 -2
  96. data/test/TC_FXVec2f.rb +2 -2
  97. data/test/TC_FXVec3d.rb +2 -2
  98. data/test/TC_FXVec3f.rb +2 -2
  99. data/test/TC_FXVec4f.rb +2 -2
  100. data/test/TC_FXViewport.rb +2 -2
  101. data/test/TC_FXXBMIcon.rb +2 -2
  102. data/test/TC_FXXBMImage.rb +2 -2
  103. data/test/TC_FXXPMIcon.rb +2 -2
  104. data/test/TC_FXXPMImage.rb +2 -2
  105. data/test/TC_downcast.rb +2 -2
  106. metadata +110 -75
@@ -45,7 +45,7 @@ module Fox
45
45
  sendMessage(2005, 0, 0)
46
46
  end
47
47
 
48
- # Returns the number of characters in the document.
48
+ # Returns the number of bytes in the document.
49
49
  def getLength
50
50
  sendMessage(2006, 0, 0)
51
51
  end
@@ -229,9 +229,6 @@ module Fox
229
229
  # This is the same value as CP_UTF8 in Windows
230
230
  SC_CP_UTF8 = 65001
231
231
 
232
- # The SC_CP_DBCS value can be used to indicate a DBCS mode for GTK+.
233
- SC_CP_DBCS = 1
234
-
235
232
  # Set the code page used to interpret the bytes of the document as characters.
236
233
  # The SC_CP_UTF8 value can be used to enter Unicode mode.
237
234
  def setCodePage(codePage)
@@ -270,12 +267,16 @@ module Fox
270
267
  SC_MARK_CIRCLEMINUS = 20
271
268
  SC_MARK_CIRCLEMINUSCONNECTED = 21
272
269
 
273
- # Invisible mark that only sets the line background color.
270
+ # Invisible mark that only sets the line background colour.
274
271
  SC_MARK_BACKGROUND = 22
275
272
  SC_MARK_DOTDOTDOT = 23
276
273
  SC_MARK_ARROWS = 24
277
274
  SC_MARK_PIXMAP = 25
278
275
  SC_MARK_FULLRECT = 26
276
+ SC_MARK_LEFTRECT = 27
277
+ SC_MARK_AVAILABLE = 28
278
+ SC_MARK_UNDERLINE = 29
279
+ SC_MARK_RGBAIMAGE = 30
279
280
 
280
281
  SC_MARK_CHARACTER = 10000
281
282
 
@@ -305,6 +306,16 @@ module Fox
305
306
  sendMessage(2042, markerNumber, back & 0xffffff)
306
307
  end
307
308
 
309
+ # Set the background colour used for a particular marker number when its folding block is selected.
310
+ def markerSetBackSelected(markerNumber, back)
311
+ sendMessage(2292, markerNumber, back & 0xffffff)
312
+ end
313
+
314
+ # Enable/disable highlight for current folding bloc (smallest one that contains the caret)
315
+ def markerEnableHighlight(enabled)
316
+ sendMessage(2293, enabled, 0)
317
+ end
318
+
308
319
  # Add a marker to a line, returning an ID which can be used to find or delete the marker.
309
320
  def markerAdd(line, markerNumber)
310
321
  sendMessage(2043, line, markerNumber)
@@ -325,7 +336,8 @@ module Fox
325
336
  sendMessage(2046, line, 0)
326
337
  end
327
338
 
328
- # Find the next line after lineStart that includes a marker in mask.
339
+ # Find the next line at or after lineStart that includes a marker in mask.
340
+ # Return -1 when no more lines.
329
341
  def markerNext(lineStart, markerMask)
330
342
  sendMessage(2047, lineStart, markerMask)
331
343
  end
@@ -354,6 +366,8 @@ module Fox
354
366
  SC_MARGIN_NUMBER = 1
355
367
  SC_MARGIN_BACK = 2
356
368
  SC_MARGIN_FORE = 3
369
+ SC_MARGIN_TEXT = 4
370
+ SC_MARGIN_RTEXT = 5
357
371
 
358
372
  # Set a margin to be either numeric or symbolic.
359
373
  def setMarginTypeN(margin, marginType)
@@ -395,6 +409,16 @@ module Fox
395
409
  sendMessage(2247, margin, 0) == 1 ? true : false
396
410
  end
397
411
 
412
+ # Set the cursor shown when the mouse is inside a margin.
413
+ def setMarginCursorN(margin, cursor)
414
+ sendMessage(2248, margin, cursor)
415
+ end
416
+
417
+ # Retrieve the cursor shown in a margin.
418
+ def getMarginCursorN(margin)
419
+ sendMessage(2249, margin, 0)
420
+ end
421
+
398
422
  # Styles in range 32..38 are predefined for parts of the UI and are not used as normal styles.
399
423
  # Style 39 is for future use.
400
424
  STYLE_DEFAULT = 32
@@ -405,7 +429,7 @@ module Fox
405
429
  STYLE_INDENTGUIDE = 37
406
430
  STYLE_CALLTIP = 38
407
431
  STYLE_LASTPREDEFINED = 39
408
- STYLE_MAX = 127
432
+ STYLE_MAX = 255
409
433
 
410
434
  # Character set identifiers are used in StyleSetCharacterSet.
411
435
  # The values are the same as the Windows *_CHARSET values.
@@ -484,6 +508,76 @@ module Fox
484
508
  SC_CASE_MIXED = 0
485
509
  SC_CASE_UPPER = 1
486
510
  SC_CASE_LOWER = 2
511
+
512
+ # Get the foreground colour of a style.
513
+ def styleGetFore(style)
514
+ sendMessage(2481, style, 0)
515
+ end
516
+
517
+ # Get the background colour of a style.
518
+ def styleGetBack(style)
519
+ sendMessage(2482, style, 0)
520
+ end
521
+
522
+ # Get is a style bold or not.
523
+ def styleGetBold(style)
524
+ sendMessage(2483, style, 0) == 1 ? true : false
525
+ end
526
+
527
+ # Get is a style italic or not.
528
+ def styleGetItalic(style)
529
+ sendMessage(2484, style, 0) == 1 ? true : false
530
+ end
531
+
532
+ # Get the size of characters of a style.
533
+ def styleGetSize(style)
534
+ sendMessage(2485, style, 0)
535
+ end
536
+
537
+ # Get the font of a style.
538
+ # Returns the length of the fontName
539
+ def styleGetFont(style)
540
+ buffer = "".ljust(style)
541
+ sendMessage(2486, style, buffer)
542
+ buffer
543
+ end
544
+
545
+ # Get is a style to have its end of line filled or not.
546
+ def styleGetEOLFilled(style)
547
+ sendMessage(2487, style, 0) == 1 ? true : false
548
+ end
549
+
550
+ # Get is a style underlined or not.
551
+ def styleGetUnderline(style)
552
+ sendMessage(2488, style, 0) == 1 ? true : false
553
+ end
554
+
555
+ # Get is a style mixed case, or to force upper or lower case.
556
+ def styleGetCase(style)
557
+ sendMessage(2489, style, 0)
558
+ end
559
+
560
+ # Get the character get of the font in a style.
561
+ def styleGetCharacterSet(style)
562
+ sendMessage(2490, style, 0)
563
+ end
564
+
565
+ # Get is a style visible or not.
566
+ def styleGetVisible(style)
567
+ sendMessage(2491, style, 0) == 1 ? true : false
568
+ end
569
+
570
+ # Get is a style changeable or not (read only).
571
+ # Experimental feature, currently buggy.
572
+ def styleGetChangeable(style)
573
+ sendMessage(2492, style, 0) == 1 ? true : false
574
+ end
575
+
576
+ # Get is a style a hotspot or not.
577
+ def styleGetHotSpot(style)
578
+ sendMessage(2493, style, 0) == 1 ? true : false
579
+ end
580
+
487
581
  # Set a style to be mixed case, or to force upper or lower case.
488
582
  def styleSetCase(style, caseForce)
489
583
  sendMessage(2060, style, caseForce)
@@ -499,12 +593,12 @@ module Fox
499
593
  sendMessage(2409, style, hotspot)
500
594
  end
501
595
 
502
- # Set the foreground colour of the selection and whether to use this setting.
596
+ # Set the foreground colour of the main and additional selections and whether to use this setting.
503
597
  def setSelFore(useSetting, fore)
504
598
  sendMessage(2067, useSetting, fore & 0xffffff)
505
599
  end
506
600
 
507
- # Set the background colour of the selection and whether to use this setting.
601
+ # Set the background colour of the main and additional selections and whether to use this setting.
508
602
  def setSelBack(useSetting, back)
509
603
  sendMessage(2068, useSetting, back & 0xffffff)
510
604
  end
@@ -519,6 +613,16 @@ module Fox
519
613
  sendMessage(2478, alpha, 0)
520
614
  end
521
615
 
616
+ # Is the selection end of line filled?
617
+ def getSelEOLFilled
618
+ sendMessage(2479, 0, 0) == 1 ? true : false
619
+ end
620
+
621
+ # Set the selection to have its end of line filled or not.
622
+ def setSelEOLFilled(filled)
623
+ sendMessage(2480, filled, 0)
624
+ end
625
+
522
626
  # Set the foreground colour of the caret.
523
627
  def setCaretFore(fore)
524
628
  sendMessage(2069, fore & 0xffffff, 0)
@@ -560,7 +664,7 @@ module Fox
560
664
  end
561
665
 
562
666
  # Set the set of characters making up words for when moving or selecting by word.
563
- # First sets deaults like SetCharsDefault.
667
+ # First sets defaults like SetCharsDefault.
564
668
  def setWordChars(characters)
565
669
  sendMessage(2077, 0, characters)
566
670
  end
@@ -576,7 +680,7 @@ module Fox
576
680
  sendMessage(2079, 0, 0)
577
681
  end
578
682
 
579
- INDIC_MAX = 7
683
+ # Indicator style enumeration and some constants
580
684
  INDIC_PLAIN = 0
581
685
  INDIC_SQUIGGLE = 1
582
686
  INDIC_TT = 2
@@ -585,6 +689,13 @@ module Fox
585
689
  INDIC_HIDDEN = 5
586
690
  INDIC_BOX = 6
587
691
  INDIC_ROUNDBOX = 7
692
+ INDIC_STRAIGHTBOX = 8
693
+ INDIC_DASH = 9
694
+ INDIC_DOTS = 10
695
+ INDIC_SQUIGGLELOW = 11
696
+ INDIC_DOTBOX = 12
697
+ INDIC_MAX = 31
698
+ INDIC_CONTAINER = 8
588
699
  INDIC0_MASK = 0x20
589
700
  INDIC1_MASK = 0x40
590
701
  INDIC2_MASK = 0x80
@@ -610,6 +721,16 @@ module Fox
610
721
  sendMessage(2083, indic, 0)
611
722
  end
612
723
 
724
+ # Set an indicator to draw under text or over(default).
725
+ def indicSetUnder(indic, under)
726
+ sendMessage(2510, indic, under)
727
+ end
728
+
729
+ # Retrieve whether indicator drawn under or over text.
730
+ def indicGetUnder(indic)
731
+ sendMessage(2511, indic, 0) == 1 ? true : false
732
+ end
733
+
613
734
  # Set the foreground colour of all whitespace and whether to use this setting.
614
735
  def setWhitespaceFore(useSetting, fore)
615
736
  sendMessage(2084, useSetting, fore & 0xffffff)
@@ -620,6 +741,16 @@ module Fox
620
741
  sendMessage(2085, useSetting, back & 0xffffff)
621
742
  end
622
743
 
744
+ # Set the size of the dots used to mark space characters.
745
+ def setWhitespaceSize(size)
746
+ sendMessage(2086, size, 0)
747
+ end
748
+
749
+ # Get the size of the dots used to mark space characters.
750
+ def getWhitespaceSize
751
+ sendMessage(2087, 0, 0)
752
+ end
753
+
623
754
  # Divide each styling byte into lexical class bits (default: 5) and indicator
624
755
  # bits (default: 3). If a lexer requires more than 32 lexical states, then this
625
756
  # is used to expand the possible states.
@@ -879,14 +1010,19 @@ module Fox
879
1010
  sendMessage(2131, 0, 0) == 1 ? true : false
880
1011
  end
881
1012
 
1013
+ SC_IV_NONE = 0
1014
+ SC_IV_REAL = 1
1015
+ SC_IV_LOOKFORWARD = 2
1016
+ SC_IV_LOOKBOTH = 3
1017
+
882
1018
  # Show or hide indentation guides.
883
- def setIndentationGuides(show)
884
- sendMessage(2132, show, 0)
1019
+ def setIndentationGuides(indentView)
1020
+ sendMessage(2132, indentView, 0)
885
1021
  end
886
1022
 
887
1023
  # Are the indentation guides visible?
888
1024
  def getIndentationGuides
889
- sendMessage(2133, 0, 0) == 1 ? true : false
1025
+ sendMessage(2133, 0, 0)
890
1026
  end
891
1027
 
892
1028
  # Set the highlighted indentation guide column.
@@ -950,6 +1086,11 @@ module Fox
950
1086
  sendMessage(2145, 0, 0)
951
1087
  end
952
1088
 
1089
+ # Set caret to a position, while removing any existing selection.
1090
+ def setEmptySelection(pos)
1091
+ sendMessage(2556, pos, 0)
1092
+ end
1093
+
953
1094
  # Sets the print magnification added to the point size of each style for printing.
954
1095
  def setPrintMagnification(magnification)
955
1096
  sendMessage(2146, magnification, 0)
@@ -1315,10 +1456,6 @@ module Fox
1315
1456
  SC_FOLDLEVELBASE = 0x400
1316
1457
  SC_FOLDLEVELWHITEFLAG = 0x1000
1317
1458
  SC_FOLDLEVELHEADERFLAG = 0x2000
1318
- SC_FOLDLEVELBOXHEADERFLAG = 0x4000
1319
- SC_FOLDLEVELBOXFOOTERFLAG = 0x8000
1320
- SC_FOLDLEVELCONTRACTED = 0x10000
1321
- SC_FOLDLEVELUNINDENT = 0x20000
1322
1459
  SC_FOLDLEVELNUMBERMASK = 0x0FFF
1323
1460
 
1324
1461
  # Set the fold level of a line.
@@ -1383,7 +1520,6 @@ module Fox
1383
1520
  SC_FOLDFLAG_LINEAFTER_EXPANDED = 0x0008
1384
1521
  SC_FOLDFLAG_LINEAFTER_CONTRACTED = 0x0010
1385
1522
  SC_FOLDFLAG_LEVELNUMBERS = 0x0040
1386
- SC_FOLDFLAG_BOX = 0x0001
1387
1523
 
1388
1524
  # Set some style options for folding.
1389
1525
  def setFoldFlags(flags)
@@ -1490,6 +1626,20 @@ module Fox
1490
1626
  sendMessage(2465, 0, 0)
1491
1627
  end
1492
1628
 
1629
+ SC_WRAPINDENT_FIXED = 0
1630
+ SC_WRAPINDENT_SAME = 1
1631
+ SC_WRAPINDENT_INDENT = 2
1632
+
1633
+ # Sets how wrapped sublines are placed. Default is fixed.
1634
+ def setWrapIndentMode(mode)
1635
+ sendMessage(2472, mode, 0)
1636
+ end
1637
+
1638
+ # Retrieve how wrapped sublines are placed. Default is fixed.
1639
+ def getWrapIndentMode
1640
+ sendMessage(2473, 0, 0)
1641
+ end
1642
+
1493
1643
  SC_CACHE_NONE = 0
1494
1644
  SC_CACHE_CARET = 1
1495
1645
  SC_CACHE_PAGE = 2
@@ -1515,6 +1665,16 @@ module Fox
1515
1665
  sendMessage(2275, 0, 0)
1516
1666
  end
1517
1667
 
1668
+ # Sets whether the maximum width line displayed is used to set scroll width.
1669
+ def setScrollWidthTracking(tracking)
1670
+ sendMessage(2516, tracking, 0)
1671
+ end
1672
+
1673
+ # Retrieve whether the scroll width tracks wide lines.
1674
+ def getScrollWidthTracking
1675
+ sendMessage(2517, 0, 0) == 1 ? true : false
1676
+ end
1677
+
1518
1678
  # Measure the pixel width of some text in a particular style.
1519
1679
  # NUL terminated text argument.
1520
1680
  # Does not handle tab or control characters.
@@ -1566,6 +1726,49 @@ module Fox
1566
1726
  sendMessage(2284, twoPhase, 0)
1567
1727
  end
1568
1728
 
1729
+ # Control font anti-aliasing.
1730
+
1731
+ SC_EFF_QUALITY_MASK = 0xF
1732
+ SC_EFF_QUALITY_DEFAULT = 0
1733
+ SC_EFF_QUALITY_NON_ANTIALIASED = 1
1734
+ SC_EFF_QUALITY_ANTIALIASED = 2
1735
+ SC_EFF_QUALITY_LCD_OPTIMIZED = 3
1736
+
1737
+ # Choose the quality level for text from the FontQuality enumeration.
1738
+ def setFontQuality(fontQuality)
1739
+ sendMessage(2611, fontQuality, 0)
1740
+ end
1741
+
1742
+ # Retrieve the quality level for text.
1743
+ def getFontQuality
1744
+ sendMessage(2612, 0, 0)
1745
+ end
1746
+
1747
+ # Scroll so that a display line is at the top of the display.
1748
+ def setFirstVisibleLine(lineDisplay)
1749
+ sendMessage(2613, lineDisplay, 0)
1750
+ end
1751
+
1752
+ SC_MULTIPASTE_ONCE = 0
1753
+ SC_MULTIPASTE_EACH = 1
1754
+
1755
+ # Change the effect of pasting when there are multiple selections.
1756
+ def setMultiPaste(multiPaste)
1757
+ sendMessage(2614, multiPaste, 0)
1758
+ end
1759
+
1760
+ # Retrieve the effect of pasting when there are multiple selections..
1761
+ def getMultiPaste
1762
+ sendMessage(2615, 0, 0)
1763
+ end
1764
+
1765
+ # Retrieve the value of a tag from a regular expression search.
1766
+ def getTag(tagNumber)
1767
+ buffer = "".ljust(tagNumber)
1768
+ sendMessage(2616, tagNumber, buffer)
1769
+ buffer
1770
+ end
1771
+
1569
1772
  # Make the target range start and end be the same as the selection range start and end.
1570
1773
  def targetFromSelection
1571
1774
  sendMessage(2287, 0, 0)
@@ -1778,6 +1981,11 @@ module Fox
1778
1981
  sendMessage(2336, 0, 0)
1779
1982
  end
1780
1983
 
1984
+ # Delete the word to the right of the caret, but not the trailing non-word characters.
1985
+ def delWordRightEnd
1986
+ sendMessage(2518, 0, 0)
1987
+ end
1988
+
1781
1989
  # Cut the line containing the caret.
1782
1990
  def lineCut
1783
1991
  sendMessage(2337, 0, 0)
@@ -1881,7 +2089,7 @@ module Fox
1881
2089
  sendMessage(2401, 0, 0)
1882
2090
  end
1883
2091
 
1884
- # How many characters are on a line, not including end of line characters?
2092
+ # How many characters are on a line, including end of line characters?
1885
2093
  def lineLength(line)
1886
2094
  sendMessage(2350, line, 0)
1887
2095
  end
@@ -1891,11 +2099,21 @@ module Fox
1891
2099
  sendMessage(2351, pos1, pos2)
1892
2100
  end
1893
2101
 
2102
+ # Use specified indicator to highlight matching braces instead of changing their style.
2103
+ def braceHighlightIndicator(useBraceHighlightIndicator, indicator)
2104
+ sendMessage(2498, useBraceHighlightIndicator, indicator)
2105
+ end
2106
+
1894
2107
  # Highlight the character at a position indicating there is no matching brace.
1895
2108
  def braceBadLight(pos)
1896
2109
  sendMessage(2352, pos, 0)
1897
2110
  end
1898
2111
 
2112
+ # Use specified indicator to highlight non matching brace instead of changing its style.
2113
+ def braceBadLightIndicator(useBraceBadLightIndicator, indicator)
2114
+ sendMessage(2499, useBraceBadLightIndicator, indicator)
2115
+ end
2116
+
1899
2117
  # Find the position of a matching brace or INVALID_POSITION if no match.
1900
2118
  def braceMatch(pos)
1901
2119
  sendMessage(2353, pos, 0)
@@ -2033,6 +2251,10 @@ module Fox
2033
2251
  sendMessage(2381, 0, 0) == 1 ? true : false
2034
2252
  end
2035
2253
 
2254
+ SC_STATUS_OK = 0
2255
+ SC_STATUS_FAILURE = 1
2256
+ SC_STATUS_BADALLOC = 2
2257
+
2036
2258
  # Change error status - 0 = OK.
2037
2259
  def setStatus(statusCode)
2038
2260
  sendMessage(2382, statusCode, 0)
@@ -2052,7 +2274,9 @@ module Fox
2052
2274
  end
2053
2275
 
2054
2276
  SC_CURSORNORMAL = -1
2277
+ SC_CURSORARROW = 2
2055
2278
  SC_CURSORWAIT = 4
2279
+ SC_CURSORREVERSEARROW = 7
2056
2280
  # Sets the cursor to one of the SC_CURSOR* values.
2057
2281
  def setCursor(cursorType)
2058
2282
  sendMessage(2386, cursorType, 0)
@@ -2178,21 +2402,41 @@ module Fox
2178
2402
  sendMessage(2410, useSetting, fore & 0xffffff)
2179
2403
  end
2180
2404
 
2405
+ # Get the fore colour for active hotspots.
2406
+ def getHotspotActiveFore
2407
+ sendMessage(2494, 0, 0)
2408
+ end
2409
+
2181
2410
  # Set a back colour for active hotspots.
2182
2411
  def setHotspotActiveBack(useSetting, back)
2183
2412
  sendMessage(2411, useSetting, back & 0xffffff)
2184
2413
  end
2185
2414
 
2415
+ # Get the back colour for active hotspots.
2416
+ def getHotspotActiveBack
2417
+ sendMessage(2495, 0, 0)
2418
+ end
2419
+
2186
2420
  # Enable / Disable underlining active hotspots.
2187
2421
  def setHotspotActiveUnderline(underline)
2188
2422
  sendMessage(2412, underline, 0)
2189
2423
  end
2190
2424
 
2425
+ # Get whether underlining for active hotspots.
2426
+ def getHotspotActiveUnderline
2427
+ sendMessage(2496, 0, 0) == 1 ? true : false
2428
+ end
2429
+
2191
2430
  # Limit hotspots to single line so hotspots on two lines don't merge.
2192
2431
  def setHotspotSingleLine(singleLine)
2193
2432
  sendMessage(2421, singleLine, 0)
2194
2433
  end
2195
2434
 
2435
+ # Get the HotspotSingleLine property
2436
+ def getHotspotSingleLine
2437
+ sendMessage(2497, 0, 0) == 1 ? true : false
2438
+ end
2439
+
2196
2440
  # Move caret between paragraphs (delimited by empty lines).
2197
2441
  def paraDown
2198
2442
  sendMessage(2413, 0, 0)
@@ -2232,8 +2476,9 @@ module Fox
2232
2476
  SC_SEL_STREAM = 0
2233
2477
  SC_SEL_RECTANGLE = 1
2234
2478
  SC_SEL_LINES = 2
2479
+ SC_SEL_THIN = 3
2235
2480
 
2236
- # Set the selection mode to stream (SC_SEL_STREAM) or rectangular (SC_SEL_RECTANGLE) or
2481
+ # Set the selection mode to stream (SC_SEL_STREAM) or rectangular (SC_SEL_RECTANGLE/SC_SEL_THIN) or
2237
2482
  # by lines (SC_SEL_LINES).
2238
2483
  def setSelectionMode(mode)
2239
2484
  sendMessage(2422, mode, 0)
@@ -2359,6 +2604,12 @@ module Fox
2359
2604
  sendMessage(2445, 0, 0)
2360
2605
  end
2361
2606
 
2607
+ # Get currently selected item text in the auto-completion list
2608
+ # Returns the length of the item text
2609
+ def autoCGetCurrentText
2610
+ sendMessage(2610, 0, s)
2611
+ end
2612
+
2362
2613
  # Enlarge the document to a particular size of text bytes.
2363
2614
  def allocate(bytes)
2364
2615
  sendMessage(2446, bytes, 0)
@@ -2393,7 +2644,7 @@ module Fox
2393
2644
 
2394
2645
  # Can the caret preferred x position only be changed by explicit movement commands?
2395
2646
  def getCaretSticky
2396
- sendMessage(2457, 0, 0) == 1 ? true : false
2647
+ sendMessage(2457, 0, 0)
2397
2648
  end
2398
2649
 
2399
2650
  # Stop the caret preferred x position changing when the user types.
@@ -2401,6 +2652,10 @@ module Fox
2401
2652
  sendMessage(2458, useCaretStickyBehaviour, 0)
2402
2653
  end
2403
2654
 
2655
+ SC_CARETSTICKY_OFF = 0
2656
+ SC_CARETSTICKY_ON = 1
2657
+ SC_CARETSTICKY_WHITESPACE = 2
2658
+
2404
2659
  # Switch between sticky and non-sticky: meant to be bound to a key.
2405
2660
  def toggleCaretSticky
2406
2661
  sendMessage(2459, 0, 0)
@@ -2435,6 +2690,570 @@ module Fox
2435
2690
  sendMessage(2471, 0, 0)
2436
2691
  end
2437
2692
 
2693
+ CARETSTYLE_INVISIBLE = 0
2694
+ CARETSTYLE_LINE = 1
2695
+ CARETSTYLE_BLOCK = 2
2696
+
2697
+ # Set the style of the caret to be drawn.
2698
+ def setCaretStyle(caretStyle)
2699
+ sendMessage(2512, caretStyle, 0)
2700
+ end
2701
+
2702
+ # Returns the current style of the caret.
2703
+ def getCaretStyle
2704
+ sendMessage(2513, 0, 0)
2705
+ end
2706
+
2707
+ # Set the indicator used for IndicatorFillRange and IndicatorClearRange
2708
+ def setIndicatorCurrent(indicator)
2709
+ sendMessage(2500, indicator, 0)
2710
+ end
2711
+
2712
+ # Get the current indicator
2713
+ def getIndicatorCurrent
2714
+ sendMessage(2501, 0, 0)
2715
+ end
2716
+
2717
+ # Set the value used for IndicatorFillRange
2718
+ def setIndicatorValue(value)
2719
+ sendMessage(2502, value, 0)
2720
+ end
2721
+
2722
+ # Get the current indicator vaue
2723
+ def getIndicatorValue
2724
+ sendMessage(2503, 0, 0)
2725
+ end
2726
+
2727
+ # Turn a indicator on over a range.
2728
+ def indicatorFillRange(position, fillLength)
2729
+ sendMessage(2504, position, fillLength)
2730
+ end
2731
+
2732
+ # Turn a indicator off over a range.
2733
+ def indicatorClearRange(position, clearLength)
2734
+ sendMessage(2505, position, clearLength)
2735
+ end
2736
+
2737
+ # Are any indicators present at position?
2738
+ def indicatorAllOnFor(position)
2739
+ sendMessage(2506, position, 0)
2740
+ end
2741
+
2742
+ # What value does a particular indicator have at at a position?
2743
+ def indicatorValueAt(indicator, position)
2744
+ sendMessage(2507, indicator, position)
2745
+ end
2746
+
2747
+ # Where does a particular indicator start?
2748
+ def indicatorStart(indicator, position)
2749
+ sendMessage(2508, indicator, position)
2750
+ end
2751
+
2752
+ # Where does a particular indicator end?
2753
+ def indicatorEnd(indicator, position)
2754
+ sendMessage(2509, indicator, position)
2755
+ end
2756
+
2757
+ # Set number of entries in position cache
2758
+ def setPositionCache(size)
2759
+ sendMessage(2514, size, 0)
2760
+ end
2761
+
2762
+ # How many entries are allocated to the position cache?
2763
+ def getPositionCache
2764
+ sendMessage(2515, 0, 0)
2765
+ end
2766
+
2767
+ # Copy the selection, if selection empty copy the line with the caret
2768
+ def copyAllowLine
2769
+ sendMessage(2519, 0, 0)
2770
+ end
2771
+
2772
+ # Compact the document buffer and return a read-only pointer to the
2773
+ # characters in the document.
2774
+ def getCharacterPointer
2775
+ sendMessage(2520, 0, 0)
2776
+ end
2777
+
2778
+ # Always interpret keyboard input as Unicode
2779
+ def setKeysUnicode(keysUnicode)
2780
+ sendMessage(2521, keysUnicode, 0)
2781
+ end
2782
+
2783
+ # Are keys always interpreted as Unicode?
2784
+ def getKeysUnicode
2785
+ sendMessage(2522, 0, 0) == 1 ? true : false
2786
+ end
2787
+
2788
+ # Set the alpha fill colour of the given indicator.
2789
+ def indicSetAlpha(indicator, alpha)
2790
+ sendMessage(2523, indicator, alpha)
2791
+ end
2792
+
2793
+ # Get the alpha fill colour of the given indicator.
2794
+ def indicGetAlpha(indicator)
2795
+ sendMessage(2524, indicator, 0)
2796
+ end
2797
+
2798
+ # Set the alpha outline colour of the given indicator.
2799
+ def indicSetOutlineAlpha(indicator, alpha)
2800
+ sendMessage(2558, indicator, alpha)
2801
+ end
2802
+
2803
+ # Get the alpha outline colour of the given indicator.
2804
+ def indicGetOutlineAlpha(indicator)
2805
+ sendMessage(2559, indicator, 0)
2806
+ end
2807
+
2808
+ # Set extra ascent for each line
2809
+ def setExtraAscent(extraAscent)
2810
+ sendMessage(2525, extraAscent, 0)
2811
+ end
2812
+
2813
+ # Get extra ascent for each line
2814
+ def getExtraAscent
2815
+ sendMessage(2526, 0, 0)
2816
+ end
2817
+
2818
+ # Set extra descent for each line
2819
+ def setExtraDescent(extraDescent)
2820
+ sendMessage(2527, extraDescent, 0)
2821
+ end
2822
+
2823
+ # Get extra descent for each line
2824
+ def getExtraDescent
2825
+ sendMessage(2528, 0, 0)
2826
+ end
2827
+
2828
+ # Which symbol was defined for markerNumber with MarkerDefine
2829
+ def markerSymbolDefined(markerNumber)
2830
+ sendMessage(2529, markerNumber, 0)
2831
+ end
2832
+
2833
+ # Set the text in the text margin for a line
2834
+ def marginSetText(line, text)
2835
+ sendMessage(2530, line, text)
2836
+ end
2837
+
2838
+ # Get the text in the text margin for a line
2839
+ def marginGetText(line)
2840
+ buffer = "".ljust(line)
2841
+ sendMessage(2531, line, buffer)
2842
+ buffer
2843
+ end
2844
+
2845
+ # Set the style number for the text margin for a line
2846
+ def marginSetStyle(line, style)
2847
+ sendMessage(2532, line, style)
2848
+ end
2849
+
2850
+ # Get the style number for the text margin for a line
2851
+ def marginGetStyle(line)
2852
+ sendMessage(2533, line, 0)
2853
+ end
2854
+
2855
+ # Set the style in the text margin for a line
2856
+ def marginSetStyles(line, styles)
2857
+ sendMessage(2534, line, styles)
2858
+ end
2859
+
2860
+ # Get the styles in the text margin for a line
2861
+ def marginGetStyles(line)
2862
+ buffer = "".ljust(line)
2863
+ sendMessage(2535, line, buffer)
2864
+ buffer
2865
+ end
2866
+
2867
+ # Clear the margin text on all lines
2868
+ def marginTextClearAll
2869
+ sendMessage(2536, 0, 0)
2870
+ end
2871
+
2872
+ # Get the start of the range of style numbers used for margin text
2873
+ def marginSetStyleOffset(style)
2874
+ sendMessage(2537, style, 0)
2875
+ end
2876
+
2877
+ # Get the start of the range of style numbers used for margin text
2878
+ def marginGetStyleOffset
2879
+ sendMessage(2538, 0, 0)
2880
+ end
2881
+
2882
+ SC_MARGINOPTION_NONE = 0
2883
+ SC_MARGINOPTION_SUBLINESELECT = 1
2884
+
2885
+ # Set the margin options.
2886
+ def setMarginOptions(marginOptions)
2887
+ sendMessage(2539, marginOptions, 0)
2888
+ end
2889
+
2890
+ # Get the margin options.
2891
+ def getMarginOptions
2892
+ sendMessage(2557, 0, 0)
2893
+ end
2894
+
2895
+ # Set the annotation text for a line
2896
+ def annotationSetText(line, text)
2897
+ sendMessage(2540, line, text)
2898
+ end
2899
+
2900
+ # Get the annotation text for a line
2901
+ def annotationGetText(line)
2902
+ buffer = "".ljust(line)
2903
+ sendMessage(2541, line, buffer)
2904
+ buffer
2905
+ end
2906
+
2907
+ # Set the style number for the annotations for a line
2908
+ def annotationSetStyle(line, style)
2909
+ sendMessage(2542, line, style)
2910
+ end
2911
+
2912
+ # Get the style number for the annotations for a line
2913
+ def annotationGetStyle(line)
2914
+ sendMessage(2543, line, 0)
2915
+ end
2916
+
2917
+ # Set the annotation styles for a line
2918
+ def annotationSetStyles(line, styles)
2919
+ sendMessage(2544, line, styles)
2920
+ end
2921
+
2922
+ # Get the annotation styles for a line
2923
+ def annotationGetStyles(line)
2924
+ buffer = "".ljust(line)
2925
+ sendMessage(2545, line, buffer)
2926
+ buffer
2927
+ end
2928
+
2929
+ # Get the number of annotation lines for a line
2930
+ def annotationGetLines(line)
2931
+ sendMessage(2546, line, 0)
2932
+ end
2933
+
2934
+ # Clear the annotations from all lines
2935
+ def annotationClearAll
2936
+ sendMessage(2547, 0, 0)
2937
+ end
2938
+
2939
+ ANNOTATION_HIDDEN = 0
2940
+ ANNOTATION_STANDARD = 1
2941
+ ANNOTATION_BOXED = 2
2942
+
2943
+ # Set the visibility for the annotations for a view
2944
+ def annotationSetVisible(visible)
2945
+ sendMessage(2548, visible, 0)
2946
+ end
2947
+
2948
+ # Get the visibility for the annotations for a view
2949
+ def annotationGetVisible
2950
+ sendMessage(2549, 0, 0)
2951
+ end
2952
+
2953
+ # Get the start of the range of style numbers used for annotations
2954
+ def annotationSetStyleOffset(style)
2955
+ sendMessage(2550, style, 0)
2956
+ end
2957
+
2958
+ # Get the start of the range of style numbers used for annotations
2959
+ def annotationGetStyleOffset
2960
+ sendMessage(2551, 0, 0)
2961
+ end
2962
+
2963
+ UNDO_MAY_COALESCE = 1
2964
+
2965
+ # Add a container action to the undo stack
2966
+ def addUndoAction(token, flags)
2967
+ sendMessage(2560, token, flags)
2968
+ end
2969
+
2970
+ # Find the position of a character from a point within the window.
2971
+ def charPositionFromPoint(x, y)
2972
+ sendMessage(2561, x, y)
2973
+ end
2974
+
2975
+ # Find the position of a character from a point within the window.
2976
+ # Return INVALID_POSITION if not close to text.
2977
+ def charPositionFromPointClose(x, y)
2978
+ sendMessage(2562, x, y)
2979
+ end
2980
+
2981
+ # Set whether multiple selections can be made
2982
+ def setMultipleSelection(multipleSelection)
2983
+ sendMessage(2563, multipleSelection, 0)
2984
+ end
2985
+
2986
+ # Whether multiple selections can be made
2987
+ def getMultipleSelection
2988
+ sendMessage(2564, 0, 0) == 1 ? true : false
2989
+ end
2990
+
2991
+ # Set whether typing can be performed into multiple selections
2992
+ def setAdditionalSelectionTyping(additionalSelectionTyping)
2993
+ sendMessage(2565, additionalSelectionTyping, 0)
2994
+ end
2995
+
2996
+ # Whether typing can be performed into multiple selections
2997
+ def getAdditionalSelectionTyping
2998
+ sendMessage(2566, 0, 0) == 1 ? true : false
2999
+ end
3000
+
3001
+ # Set whether additional carets will blink
3002
+ def setAdditionalCaretsBlink(additionalCaretsBlink)
3003
+ sendMessage(2567, additionalCaretsBlink, 0)
3004
+ end
3005
+
3006
+ # Whether additional carets will blink
3007
+ def getAdditionalCaretsBlink
3008
+ sendMessage(2568, 0, 0) == 1 ? true : false
3009
+ end
3010
+
3011
+ # Set whether additional carets are visible
3012
+ def setAdditionalCaretsVisible(additionalCaretsBlink)
3013
+ sendMessage(2608, additionalCaretsBlink, 0)
3014
+ end
3015
+
3016
+ # Whether additional carets are visible
3017
+ def getAdditionalCaretsVisible
3018
+ sendMessage(2609, 0, 0) == 1 ? true : false
3019
+ end
3020
+
3021
+ # How many selections are there?
3022
+ def getSelections
3023
+ sendMessage(2570, 0, 0)
3024
+ end
3025
+
3026
+ # Clear selections to a single empty stream selection
3027
+ def clearSelections
3028
+ sendMessage(2571, 0, 0)
3029
+ end
3030
+
3031
+ # Set a simple selection
3032
+ def setSelection(caret, anchor)
3033
+ sendMessage(2572, caret, anchor)
3034
+ end
3035
+
3036
+ # Add a selection
3037
+ def addSelection(caret, anchor)
3038
+ sendMessage(2573, caret, anchor)
3039
+ end
3040
+
3041
+ # Set the main selection
3042
+ def setMainSelection(selection)
3043
+ sendMessage(2574, selection, 0)
3044
+ end
3045
+
3046
+ # Which selection is the main selection
3047
+ def getMainSelection
3048
+ sendMessage(2575, 0, 0)
3049
+ end
3050
+
3051
+ def setSelectionNCaret(selection, pos)
3052
+ sendMessage(2576, selection, pos)
3053
+ end
3054
+ def getSelectionNCaret(selection)
3055
+ sendMessage(2577, selection, 0)
3056
+ end
3057
+ def setSelectionNAnchor(selection, posAnchor)
3058
+ sendMessage(2578, selection, posAnchor)
3059
+ end
3060
+ def getSelectionNAnchor(selection)
3061
+ sendMessage(2579, selection, 0)
3062
+ end
3063
+ def setSelectionNCaretVirtualSpace(selection, space)
3064
+ sendMessage(2580, selection, space)
3065
+ end
3066
+ def getSelectionNCaretVirtualSpace(selection)
3067
+ sendMessage(2581, selection, 0)
3068
+ end
3069
+ def setSelectionNAnchorVirtualSpace(selection, space)
3070
+ sendMessage(2582, selection, space)
3071
+ end
3072
+ def getSelectionNAnchorVirtualSpace(selection)
3073
+ sendMessage(2583, selection, 0)
3074
+ end
3075
+
3076
+ # Sets the position that starts the selection - this becomes the anchor.
3077
+ def setSelectionNStart(selection, pos)
3078
+ sendMessage(2584, selection, pos)
3079
+ end
3080
+
3081
+ # Returns the position at the start of the selection.
3082
+ def getSelectionNStart(selection)
3083
+ sendMessage(2585, selection, 0)
3084
+ end
3085
+
3086
+ # Sets the position that ends the selection - this becomes the currentPosition.
3087
+ def setSelectionNEnd(selection, pos)
3088
+ sendMessage(2586, selection, pos, 0)
3089
+ end
3090
+
3091
+ # Returns the position at the end of the selection.
3092
+ def getSelectionNEnd(selection)
3093
+ sendMessage(2587, selection, 0)
3094
+ end
3095
+
3096
+ def setRectangularSelectionCaret(pos)
3097
+ sendMessage(2588, pos, 0)
3098
+ end
3099
+ def getRectangularSelectionCaret
3100
+ sendMessage(2589, 0, 0)
3101
+ end
3102
+ def setRectangularSelectionAnchor(posAnchor)
3103
+ sendMessage(2590, posAnchor, 0)
3104
+ end
3105
+ def getRectangularSelectionAnchor
3106
+ sendMessage(2591, 0, 0)
3107
+ end
3108
+ def setRectangularSelectionCaretVirtualSpace(space)
3109
+ sendMessage(2592, space, 0)
3110
+ end
3111
+ def getRectangularSelectionCaretVirtualSpace
3112
+ sendMessage(2593, 0, 0)
3113
+ end
3114
+ def setRectangularSelectionAnchorVirtualSpace(space)
3115
+ sendMessage(2594, space, 0)
3116
+ end
3117
+ def getRectangularSelectionAnchorVirtualSpace
3118
+ sendMessage(2595, 0, 0)
3119
+ end
3120
+
3121
+ SCVS_NONE = 0
3122
+ SCVS_RECTANGULARSELECTION = 1
3123
+ SCVS_USERACCESSIBLE = 2
3124
+
3125
+ def setVirtualSpaceOptions(virtualSpaceOptions)
3126
+ sendMessage(2596, virtualSpaceOptions, 0)
3127
+ end
3128
+ def getVirtualSpaceOptions
3129
+ sendMessage(2597, 0, 0)
3130
+ end
3131
+
3132
+ # On GTK+, allow selecting the modifier key to use for mouse-based
3133
+ # rectangular selection. Often the window manager requires Alt+Mouse Drag
3134
+ # for moving windows.
3135
+ # Valid values are SCMOD_CTRL(default), SCMOD_ALT, or SCMOD_SUPER.
3136
+
3137
+ def setRectangularSelectionModifier(modifier)
3138
+ sendMessage(2598, modifier, 0)
3139
+ end
3140
+
3141
+ # Get the modifier key used for rectangular selection.
3142
+ def getRectangularSelectionModifier
3143
+ sendMessage(2599, 0, 0)
3144
+ end
3145
+
3146
+ # Set the foreground colour of additional selections.
3147
+ # Must have previously called SetSelFore with non-zero first argument for this to have an effect.
3148
+ def setAdditionalSelFore(fore)
3149
+ sendMessage(2600, fore & 0xffffff, 0)
3150
+ end
3151
+
3152
+ # Set the background colour of additional selections.
3153
+ # Must have previously called SetSelBack with non-zero first argument for this to have an effect.
3154
+ def setAdditionalSelBack(back)
3155
+ sendMessage(2601, back & 0xffffff, 0)
3156
+ end
3157
+
3158
+ # Set the alpha of the selection.
3159
+ def setAdditionalSelAlpha(alpha)
3160
+ sendMessage(2602, alpha, 0)
3161
+ end
3162
+
3163
+ # Get the alpha of the selection.
3164
+ def getAdditionalSelAlpha
3165
+ sendMessage(2603, 0, 0)
3166
+ end
3167
+
3168
+ # Set the foreground colour of additional carets.
3169
+ def setAdditionalCaretFore(fore)
3170
+ sendMessage(2604, fore & 0xffffff, 0)
3171
+ end
3172
+
3173
+ # Get the foreground colour of additional carets.
3174
+ def getAdditionalCaretFore
3175
+ sendMessage(2605, 0, 0)
3176
+ end
3177
+
3178
+ # Set the main selection to the next selection.
3179
+ def rotateSelection
3180
+ sendMessage(2606, 0, 0)
3181
+ end
3182
+
3183
+ # Swap that caret and anchor of the main selection.
3184
+ def swapMainAnchorCaret
3185
+ sendMessage(2607, 0, 0)
3186
+ end
3187
+
3188
+ # Indicate that the internal state of a lexer has changed over a range and therefore
3189
+ # there may be a need to redraw.
3190
+ def changeLexerState(start, last)
3191
+ sendMessage(2617, start, last)
3192
+ end
3193
+
3194
+ # Find the next line at or after lineStart that is a contracted fold header line.
3195
+ # Return -1 when no more lines.
3196
+ def contractedFoldNext(lineStart)
3197
+ sendMessage(2618, lineStart, 0)
3198
+ end
3199
+
3200
+ # Centre current line in window.
3201
+ def verticalCentreCaret
3202
+ sendMessage(2619, 0, 0)
3203
+ end
3204
+
3205
+ # Move the selected lines up one line, shifting the line above after the selection
3206
+ def moveSelectedLinesUp
3207
+ sendMessage(2620, 0, 0)
3208
+ end
3209
+
3210
+ # Move the selected lines down one line, shifting the line below before the selection
3211
+ def moveSelectedLinesDown
3212
+ sendMessage(2621, 0, 0)
3213
+ end
3214
+
3215
+ # Set the identifier reported as idFrom in notification messages.
3216
+ def setIdentifier(identifier)
3217
+ sendMessage(2622, identifier, 0)
3218
+ end
3219
+
3220
+ # Get the identifier.
3221
+ def getIdentifier
3222
+ sendMessage(2623, 0, 0)
3223
+ end
3224
+
3225
+ # Set the width for future RGBA image data.
3226
+ def rGBAImageSetWidth(width)
3227
+ sendMessage(2624, width, 0)
3228
+ end
3229
+
3230
+ # Set the height for future RGBA image data.
3231
+ def rGBAImageSetHeight(height)
3232
+ sendMessage(2625, height, 0)
3233
+ end
3234
+
3235
+ # Define a marker from RGBA data.
3236
+ # It has the width and height from RGBAImageSetWidth/Height
3237
+ def markerDefineRGBAImage(markerNumber, pixels)
3238
+ sendMessage(2626, markerNumber, pixels)
3239
+ end
3240
+
3241
+ # Register an RGBA image for use in autocompletion lists.
3242
+ # It has the width and height from RGBAImageSetWidth/Height
3243
+ def registerRGBAImage(type, pixels)
3244
+ sendMessage(2627, type, pixels)
3245
+ end
3246
+
3247
+ # Scroll to start of document.
3248
+ def scrollToStart
3249
+ sendMessage(2628, 0, 0)
3250
+ end
3251
+
3252
+ # Scroll to end of document.
3253
+ def scrollToEnd
3254
+ sendMessage(2629, 0, 0)
3255
+ end
3256
+
2438
3257
  # Start notifying the container of all key presses and commands.
2439
3258
  def startRecord
2440
3259
  sendMessage(3001, 0, 0)
@@ -2509,6 +3328,43 @@ module Fox
2509
3328
  sendMessage(4011, 0, 0)
2510
3329
  end
2511
3330
 
3331
+ # Retrieve the name of the lexer.
3332
+ # Return the length of the text.
3333
+ def getLexerLanguage
3334
+ sendMessage(4012, 0, text)
3335
+ end
3336
+
3337
+ # For private communication between an application and a known lexer.
3338
+ def privateLexerCall(operation, pointer)
3339
+ sendMessage(4013, operation, pointer)
3340
+ end
3341
+
3342
+ # Retrieve a '\n' separated list of properties understood by the current lexer.
3343
+ def propertyNames
3344
+ sendMessage(4014, 0, names)
3345
+ end
3346
+
3347
+ SC_TYPE_BOOLEAN = 0
3348
+ SC_TYPE_INTEGER = 1
3349
+ SC_TYPE_STRING = 2
3350
+
3351
+ # Retrieve the type of a property.
3352
+ def propertyType(name)
3353
+ sendMessage(4015, name, 0)
3354
+ end
3355
+
3356
+ # Describe a property.
3357
+ def describeProperty(name)
3358
+ buffer = "".ljust(name)
3359
+ sendMessage(4016, name, buffer)
3360
+ buffer
3361
+ end
3362
+
3363
+ # Retrieve a '\n' separated list of descriptions of the keyword sets understood by the current lexer.
3364
+ def describeKeyWordSets
3365
+ sendMessage(4017, 0, descriptions)
3366
+ end
3367
+
2512
3368
  # Notifications
2513
3369
  # Type of modification and the action which caused the modification.
2514
3370
  # These are defined as a bit mask to make it easy to specify which notifications are wanted.
@@ -2526,7 +3382,19 @@ module Fox
2526
3382
  SC_MOD_BEFOREINSERT = 0x400
2527
3383
  SC_MOD_BEFOREDELETE = 0x800
2528
3384
  SC_MULTILINEUNDOREDO = 0x1000
2529
- SC_MODEVENTMASKALL = 0x1FFF
3385
+ SC_STARTACTION = 0x2000
3386
+ SC_MOD_CHANGEINDICATOR = 0x4000
3387
+ SC_MOD_CHANGELINESTATE = 0x8000
3388
+ SC_MOD_CHANGEMARGIN = 0x10000
3389
+ SC_MOD_CHANGEANNOTATION = 0x20000
3390
+ SC_MOD_CONTAINER = 0x40000
3391
+ SC_MOD_LEXERSTATE = 0x80000
3392
+ SC_MODEVENTMASKALL = 0xFFFFF
3393
+
3394
+ SC_UPDATE_CONTENT = 0x1
3395
+ SC_UPDATE_SELECTION = 0x2
3396
+ SC_UPDATE_V_SCROLL = 0x4
3397
+ SC_UPDATE_H_SCROLL = 0x8
2530
3398
 
2531
3399
  # For compatibility, these go through the COMMAND notification rather than NOTIFY
2532
3400
  # and should have had exactly the same values as the EN_* constants.
@@ -2557,11 +3425,16 @@ module Fox
2557
3425
  SCK_ADD = 310
2558
3426
  SCK_SUBTRACT = 311
2559
3427
  SCK_DIVIDE = 312
3428
+ SCK_WIN = 313
3429
+ SCK_RWIN = 314
3430
+ SCK_MENU = 315
2560
3431
 
2561
3432
  SCMOD_NORM = 0
2562
3433
  SCMOD_SHIFT = 1
2563
3434
  SCMOD_CTRL = 2
2564
3435
  SCMOD_ALT = 4
3436
+ SCMOD_SUPER = 8
3437
+ SCMOD_META = 16
2565
3438
 
2566
3439
  # For SciLexer.h
2567
3440
  SCLEX_CONTAINER = 0
@@ -2641,6 +3514,29 @@ module Fox
2641
3514
  SCLEX_INNOSETUP = 76
2642
3515
  SCLEX_OPAL = 77
2643
3516
  SCLEX_SPICE = 78
3517
+ SCLEX_D = 79
3518
+ SCLEX_CMAKE = 80
3519
+ SCLEX_GAP = 81
3520
+ SCLEX_PLM = 82
3521
+ SCLEX_PROGRESS = 83
3522
+ SCLEX_ABAQUS = 84
3523
+ SCLEX_ASYMPTOTE = 85
3524
+ SCLEX_R = 86
3525
+ SCLEX_MAGIK = 87
3526
+ SCLEX_POWERSHELL = 88
3527
+ SCLEX_MYSQL = 89
3528
+ SCLEX_PO = 90
3529
+ SCLEX_TAL = 91
3530
+ SCLEX_COBOL = 92
3531
+ SCLEX_TACL = 93
3532
+ SCLEX_SORCUS = 94
3533
+ SCLEX_POWERPRO = 95
3534
+ SCLEX_NIMROD = 96
3535
+ SCLEX_SML = 97
3536
+ SCLEX_MARKDOWN = 98
3537
+ SCLEX_TXT2TAGS = 99
3538
+ SCLEX_A68K = 100
3539
+ SCLEX_MODULA = 101
2644
3540
 
2645
3541
  # When a lexer specifies its language as SCLEX_AUTOMATIC it receives a
2646
3542
  # value assigned in sequence from SCLEX_AUTOMATIC+1.
@@ -2683,6 +3579,32 @@ module Fox
2683
3579
  SCE_C_COMMENTDOCKEYWORD = 17
2684
3580
  SCE_C_COMMENTDOCKEYWORDERROR = 18
2685
3581
  SCE_C_GLOBALCLASS = 19
3582
+ SCE_C_STRINGRAW = 20
3583
+ SCE_C_TRIPLEVERBATIM = 21
3584
+ # Lexical states for SCLEX_D
3585
+ SCE_D_DEFAULT = 0
3586
+ SCE_D_COMMENT = 1
3587
+ SCE_D_COMMENTLINE = 2
3588
+ SCE_D_COMMENTDOC = 3
3589
+ SCE_D_COMMENTNESTED = 4
3590
+ SCE_D_NUMBER = 5
3591
+ SCE_D_WORD = 6
3592
+ SCE_D_WORD2 = 7
3593
+ SCE_D_WORD3 = 8
3594
+ SCE_D_TYPEDEF = 9
3595
+ SCE_D_STRING = 10
3596
+ SCE_D_STRINGEOL = 11
3597
+ SCE_D_CHARACTER = 12
3598
+ SCE_D_OPERATOR = 13
3599
+ SCE_D_IDENTIFIER = 14
3600
+ SCE_D_COMMENTLINEDOC = 15
3601
+ SCE_D_COMMENTDOCKEYWORD = 16
3602
+ SCE_D_COMMENTDOCKEYWORDERROR = 17
3603
+ SCE_D_STRINGB = 18
3604
+ SCE_D_STRINGR = 19
3605
+ SCE_D_WORD5 = 20
3606
+ SCE_D_WORD6 = 21
3607
+ SCE_D_WORD7 = 22
2686
3608
  # Lexical states for SCLEX_TCL
2687
3609
  SCE_TCL_DEFAULT = 0
2688
3610
  SCE_TCL_COMMENT = 1
@@ -2863,6 +3785,9 @@ module Fox
2863
3785
  SCE_PL_STRING_QR = 29
2864
3786
  SCE_PL_STRING_QW = 30
2865
3787
  SCE_PL_POD_VERB = 31
3788
+ SCE_PL_SUB_PROTOTYPE = 40
3789
+ SCE_PL_FORMAT_IDENT = 41
3790
+ SCE_PL_FORMAT = 42
2866
3791
  # Lexical states for SCLEX_RUBY
2867
3792
  SCE_RB_DEFAULT = 0
2868
3793
  SCE_RB_ERROR = 1
@@ -2974,6 +3899,7 @@ module Fox
2974
3899
  SCE_ERR_ABSF = 18
2975
3900
  SCE_ERR_TIDY = 19
2976
3901
  SCE_ERR_JAVA_STACK = 20
3902
+ SCE_ERR_VALUE = 21
2977
3903
  # Lexical states for SCLEX_BATCH
2978
3904
  SCE_BAT_DEFAULT = 0
2979
3905
  SCE_BAT_COMMENT = 1
@@ -2999,6 +3925,7 @@ module Fox
2999
3925
  SCE_DIFF_POSITION = 4
3000
3926
  SCE_DIFF_DELETED = 5
3001
3927
  SCE_DIFF_ADDED = 6
3928
+ SCE_DIFF_CHANGED = 7
3002
3929
  # Lexical states for SCLEX_CONF (Apache Configuration Files Lexer)
3003
3930
  SCE_CONF_DEFAULT = 0
3004
3931
  SCE_CONF_COMMENT = 1
@@ -3143,6 +4070,7 @@ module Fox
3143
4070
  SCE_ASM_CHARACTER = 12
3144
4071
  SCE_ASM_STRINGEOL = 13
3145
4072
  SCE_ASM_EXTINSTRUCTION = 14
4073
+ SCE_ASM_COMMENTDIRECTIVE = 15
3146
4074
  # Lexical states for SCLEX_FORTRAN
3147
4075
  SCE_F_DEFAULT = 0
3148
4076
  SCE_F_COMMENT = 1
@@ -3177,6 +4105,12 @@ module Fox
3177
4105
  SCE_CSS_SINGLESTRING = 14
3178
4106
  SCE_CSS_IDENTIFIER2 = 15
3179
4107
  SCE_CSS_ATTRIBUTE = 16
4108
+ SCE_CSS_IDENTIFIER3 = 17
4109
+ SCE_CSS_PSEUDOELEMENT = 18
4110
+ SCE_CSS_EXTENDED_IDENTIFIER = 19
4111
+ SCE_CSS_EXTENDED_PSEUDOCLASS = 20
4112
+ SCE_CSS_EXTENDED_PSEUDOELEMENT = 21
4113
+ SCE_CSS_MEDIA = 22
3180
4114
  # Lexical states for SCLEX_POV
3181
4115
  SCE_POV_DEFAULT = 0
3182
4116
  SCE_POV_COMMENT = 1
@@ -3312,6 +4246,7 @@ module Fox
3312
4246
  SCE_YAML_DOCUMENT = 6
3313
4247
  SCE_YAML_TEXT = 7
3314
4248
  SCE_YAML_ERROR = 8
4249
+ SCE_YAML_OPERATOR = 9
3315
4250
  # Lexical states for SCLEX_TEX
3316
4251
  SCE_TEX_DEFAULT = 0
3317
4252
  SCE_TEX_SPECIAL = 1
@@ -3339,8 +4274,19 @@ module Fox
3339
4274
  SCE_ERLANG_CHARACTER = 9
3340
4275
  SCE_ERLANG_MACRO = 10
3341
4276
  SCE_ERLANG_RECORD = 11
3342
- SCE_ERLANG_SEPARATOR = 12
4277
+ SCE_ERLANG_PREPROC = 12
3343
4278
  SCE_ERLANG_NODE_NAME = 13
4279
+ SCE_ERLANG_COMMENT_FUNCTION = 14
4280
+ SCE_ERLANG_COMMENT_MODULE = 15
4281
+ SCE_ERLANG_COMMENT_DOC = 16
4282
+ SCE_ERLANG_COMMENT_DOC_MACRO = 17
4283
+ SCE_ERLANG_ATOM_QUOTED = 18
4284
+ SCE_ERLANG_MACRO_QUOTED = 19
4285
+ SCE_ERLANG_RECORD_QUOTED = 20
4286
+ SCE_ERLANG_NODE_NAME_QUOTED = 21
4287
+ SCE_ERLANG_BIFS = 22
4288
+ SCE_ERLANG_MODULES = 23
4289
+ SCE_ERLANG_MODULES_ATT = 24
3344
4290
  SCE_ERLANG_UNKNOWN = 31
3345
4291
  # Lexical states for SCLEX_OCTAVE are identical to MatLab
3346
4292
  # Lexical states for SCLEX_MSSQL
@@ -3501,6 +4447,7 @@ module Fox
3501
4447
  SCE_CAML_OPERATOR = 7
3502
4448
  SCE_CAML_NUMBER = 8
3503
4449
  SCE_CAML_CHAR = 9
4450
+ SCE_CAML_WHITE = 10
3504
4451
  SCE_CAML_STRING = 11
3505
4452
  SCE_CAML_COMMENT = 12
3506
4453
  SCE_CAML_COMMENT1 = 13
@@ -3545,6 +4492,7 @@ module Fox
3545
4492
  SCE_T3_USER1 = 17
3546
4493
  SCE_T3_USER2 = 18
3547
4494
  SCE_T3_USER3 = 19
4495
+ SCE_T3_BRACE = 20
3548
4496
  # Lexical states for SCLEX_REBOL
3549
4497
  SCE_REBOL_DEFAULT = 0
3550
4498
  SCE_REBOL_COMMENTLINE = 1
@@ -3636,11 +4584,19 @@ module Fox
3636
4584
  SCE_FS_DATE = 16
3637
4585
  SCE_FS_STRINGEOL = 17
3638
4586
  SCE_FS_CONSTANT = 18
3639
- SCE_FS_ASM = 19
3640
- SCE_FS_LABEL = 20
3641
- SCE_FS_ERROR = 21
3642
- SCE_FS_HEXNUMBER = 22
3643
- SCE_FS_BINNUMBER = 23
4587
+ SCE_FS_WORDOPERATOR = 19
4588
+ SCE_FS_DISABLEDCODE = 20
4589
+ SCE_FS_DEFAULT_C = 21
4590
+ SCE_FS_COMMENTDOC_C = 22
4591
+ SCE_FS_COMMENTLINEDOC_C = 23
4592
+ SCE_FS_KEYWORD_C = 24
4593
+ SCE_FS_KEYWORD2_C = 25
4594
+ SCE_FS_NUMBER_C = 26
4595
+ SCE_FS_STRING_C = 27
4596
+ SCE_FS_PREPROCESSOR_C = 28
4597
+ SCE_FS_OPERATOR_C = 29
4598
+ SCE_FS_IDENTIFIER_C = 30
4599
+ SCE_FS_STRINGEOL_C = 31
3644
4600
  # Lexical states for SCLEX_CSOUND
3645
4601
  SCE_CSOUND_DEFAULT = 0
3646
4602
  SCE_CSOUND_COMMENT = 1
@@ -3665,7 +4621,7 @@ module Fox
3665
4621
  SCE_INNO_PARAMETER = 3
3666
4622
  SCE_INNO_SECTION = 4
3667
4623
  SCE_INNO_PREPROC = 5
3668
- SCE_INNO_PREPROC_INLINE = 6
4624
+ SCE_INNO_INLINE_EXPANSION = 6
3669
4625
  SCE_INNO_COMMENT_PASCAL = 7
3670
4626
  SCE_INNO_KEYWORD_PASCAL = 8
3671
4627
  SCE_INNO_KEYWORD_USER = 9
@@ -3693,6 +4649,333 @@ module Fox
3693
4649
  SCE_SPICE_DELIMITER = 6
3694
4650
  SCE_SPICE_VALUE = 7
3695
4651
  SCE_SPICE_COMMENTLINE = 8
4652
+ # Lexical states for SCLEX_CMAKE
4653
+ SCE_CMAKE_DEFAULT = 0
4654
+ SCE_CMAKE_COMMENT = 1
4655
+ SCE_CMAKE_STRINGDQ = 2
4656
+ SCE_CMAKE_STRINGLQ = 3
4657
+ SCE_CMAKE_STRINGRQ = 4
4658
+ SCE_CMAKE_COMMANDS = 5
4659
+ SCE_CMAKE_PARAMETERS = 6
4660
+ SCE_CMAKE_VARIABLE = 7
4661
+ SCE_CMAKE_USERDEFINED = 8
4662
+ SCE_CMAKE_WHILEDEF = 9
4663
+ SCE_CMAKE_FOREACHDEF = 10
4664
+ SCE_CMAKE_IFDEFINEDEF = 11
4665
+ SCE_CMAKE_MACRODEF = 12
4666
+ SCE_CMAKE_STRINGVAR = 13
4667
+ SCE_CMAKE_NUMBER = 14
4668
+ # Lexical states for SCLEX_GAP
4669
+ SCE_GAP_DEFAULT = 0
4670
+ SCE_GAP_IDENTIFIER = 1
4671
+ SCE_GAP_KEYWORD = 2
4672
+ SCE_GAP_KEYWORD2 = 3
4673
+ SCE_GAP_KEYWORD3 = 4
4674
+ SCE_GAP_KEYWORD4 = 5
4675
+ SCE_GAP_STRING = 6
4676
+ SCE_GAP_CHAR = 7
4677
+ SCE_GAP_OPERATOR = 8
4678
+ SCE_GAP_COMMENT = 9
4679
+ SCE_GAP_NUMBER = 10
4680
+ SCE_GAP_STRINGEOL = 11
4681
+ # Lexical state for SCLEX_PLM
4682
+ SCE_PLM_DEFAULT = 0
4683
+ SCE_PLM_COMMENT = 1
4684
+ SCE_PLM_STRING = 2
4685
+ SCE_PLM_NUMBER = 3
4686
+ SCE_PLM_IDENTIFIER = 4
4687
+ SCE_PLM_OPERATOR = 5
4688
+ SCE_PLM_CONTROL = 6
4689
+ SCE_PLM_KEYWORD = 7
4690
+ # Lexical state for SCLEX_PROGRESS
4691
+ SCE_4GL_DEFAULT = 0
4692
+ SCE_4GL_NUMBER = 1
4693
+ SCE_4GL_WORD = 2
4694
+ SCE_4GL_STRING = 3
4695
+ SCE_4GL_CHARACTER = 4
4696
+ SCE_4GL_PREPROCESSOR = 5
4697
+ SCE_4GL_OPERATOR = 6
4698
+ SCE_4GL_IDENTIFIER = 7
4699
+ SCE_4GL_BLOCK = 8
4700
+ SCE_4GL_END = 9
4701
+ SCE_4GL_COMMENT1 = 10
4702
+ SCE_4GL_COMMENT2 = 11
4703
+ SCE_4GL_COMMENT3 = 12
4704
+ SCE_4GL_COMMENT4 = 13
4705
+ SCE_4GL_COMMENT5 = 14
4706
+ SCE_4GL_COMMENT6 = 15
4707
+ SCE_4GL_DEFAULT_ = 16
4708
+ SCE_4GL_NUMBER_ = 17
4709
+ SCE_4GL_WORD_ = 18
4710
+ SCE_4GL_STRING_ = 19
4711
+ SCE_4GL_CHARACTER_ = 20
4712
+ SCE_4GL_PREPROCESSOR_ = 21
4713
+ SCE_4GL_OPERATOR_ = 22
4714
+ SCE_4GL_IDENTIFIER_ = 23
4715
+ SCE_4GL_BLOCK_ = 24
4716
+ SCE_4GL_END_ = 25
4717
+ SCE_4GL_COMMENT1_ = 26
4718
+ SCE_4GL_COMMENT2_ = 27
4719
+ SCE_4GL_COMMENT3_ = 28
4720
+ SCE_4GL_COMMENT4_ = 29
4721
+ SCE_4GL_COMMENT5_ = 30
4722
+ SCE_4GL_COMMENT6_ = 31
4723
+ # Lexical states for SCLEX_ABAQUS
4724
+ SCE_ABAQUS_DEFAULT = 0
4725
+ SCE_ABAQUS_COMMENT = 1
4726
+ SCE_ABAQUS_COMMENTBLOCK = 2
4727
+ SCE_ABAQUS_NUMBER = 3
4728
+ SCE_ABAQUS_STRING = 4
4729
+ SCE_ABAQUS_OPERATOR = 5
4730
+ SCE_ABAQUS_WORD = 6
4731
+ SCE_ABAQUS_PROCESSOR = 7
4732
+ SCE_ABAQUS_COMMAND = 8
4733
+ SCE_ABAQUS_SLASHCOMMAND = 9
4734
+ SCE_ABAQUS_STARCOMMAND = 10
4735
+ SCE_ABAQUS_ARGUMENT = 11
4736
+ SCE_ABAQUS_FUNCTION = 12
4737
+ # Lexical states for SCLEX_ASYMPTOTE
4738
+ SCE_ASY_DEFAULT = 0
4739
+ SCE_ASY_COMMENT = 1
4740
+ SCE_ASY_COMMENTLINE = 2
4741
+ SCE_ASY_NUMBER = 3
4742
+ SCE_ASY_WORD = 4
4743
+ SCE_ASY_STRING = 5
4744
+ SCE_ASY_CHARACTER = 6
4745
+ SCE_ASY_OPERATOR = 7
4746
+ SCE_ASY_IDENTIFIER = 8
4747
+ SCE_ASY_STRINGEOL = 9
4748
+ SCE_ASY_COMMENTLINEDOC = 10
4749
+ SCE_ASY_WORD2 = 11
4750
+ # Lexical states for SCLEX_R
4751
+ SCE_R_DEFAULT = 0
4752
+ SCE_R_COMMENT = 1
4753
+ SCE_R_KWORD = 2
4754
+ SCE_R_BASEKWORD = 3
4755
+ SCE_R_OTHERKWORD = 4
4756
+ SCE_R_NUMBER = 5
4757
+ SCE_R_STRING = 6
4758
+ SCE_R_STRING2 = 7
4759
+ SCE_R_OPERATOR = 8
4760
+ SCE_R_IDENTIFIER = 9
4761
+ SCE_R_INFIX = 10
4762
+ SCE_R_INFIXEOL = 11
4763
+ # Lexical state for SCLEX_MAGIKSF
4764
+ SCE_MAGIK_DEFAULT = 0
4765
+ SCE_MAGIK_COMMENT = 1
4766
+ SCE_MAGIK_HYPER_COMMENT = 16
4767
+ SCE_MAGIK_STRING = 2
4768
+ SCE_MAGIK_CHARACTER = 3
4769
+ SCE_MAGIK_NUMBER = 4
4770
+ SCE_MAGIK_IDENTIFIER = 5
4771
+ SCE_MAGIK_OPERATOR = 6
4772
+ SCE_MAGIK_FLOW = 7
4773
+ SCE_MAGIK_CONTAINER = 8
4774
+ SCE_MAGIK_BRACKET_BLOCK = 9
4775
+ SCE_MAGIK_BRACE_BLOCK = 10
4776
+ SCE_MAGIK_SQBRACKET_BLOCK = 11
4777
+ SCE_MAGIK_UNKNOWN_KEYWORD = 12
4778
+ SCE_MAGIK_KEYWORD = 13
4779
+ SCE_MAGIK_PRAGMA = 14
4780
+ SCE_MAGIK_SYMBOL = 15
4781
+ # Lexical state for SCLEX_POWERSHELL
4782
+ SCE_POWERSHELL_DEFAULT = 0
4783
+ SCE_POWERSHELL_COMMENT = 1
4784
+ SCE_POWERSHELL_STRING = 2
4785
+ SCE_POWERSHELL_CHARACTER = 3
4786
+ SCE_POWERSHELL_NUMBER = 4
4787
+ SCE_POWERSHELL_VARIABLE = 5
4788
+ SCE_POWERSHELL_OPERATOR = 6
4789
+ SCE_POWERSHELL_IDENTIFIER = 7
4790
+ SCE_POWERSHELL_KEYWORD = 8
4791
+ SCE_POWERSHELL_CMDLET = 9
4792
+ SCE_POWERSHELL_ALIAS = 10
4793
+ SCE_POWERSHELL_FUNCTION = 11
4794
+ SCE_POWERSHELL_USER1 = 12
4795
+ SCE_POWERSHELL_COMMENTSTREAM = 13
4796
+ # Lexical state for SCLEX_MYSQL
4797
+ SCE_MYSQL_DEFAULT = 0
4798
+ SCE_MYSQL_COMMENT = 1
4799
+ SCE_MYSQL_COMMENTLINE = 2
4800
+ SCE_MYSQL_VARIABLE = 3
4801
+ SCE_MYSQL_SYSTEMVARIABLE = 4
4802
+ SCE_MYSQL_KNOWNSYSTEMVARIABLE = 5
4803
+ SCE_MYSQL_NUMBER = 6
4804
+ SCE_MYSQL_MAJORKEYWORD = 7
4805
+ SCE_MYSQL_KEYWORD = 8
4806
+ SCE_MYSQL_DATABASEOBJECT = 9
4807
+ SCE_MYSQL_PROCEDUREKEYWORD = 10
4808
+ SCE_MYSQL_STRING = 11
4809
+ SCE_MYSQL_SQSTRING = 12
4810
+ SCE_MYSQL_DQSTRING = 13
4811
+ SCE_MYSQL_OPERATOR = 14
4812
+ SCE_MYSQL_FUNCTION = 15
4813
+ SCE_MYSQL_IDENTIFIER = 16
4814
+ SCE_MYSQL_QUOTEDIDENTIFIER = 17
4815
+ SCE_MYSQL_USER1 = 18
4816
+ SCE_MYSQL_USER2 = 19
4817
+ SCE_MYSQL_USER3 = 20
4818
+ SCE_MYSQL_HIDDENCOMMAND = 21
4819
+ # Lexical state for SCLEX_PO
4820
+ SCE_PO_DEFAULT = 0
4821
+ SCE_PO_COMMENT = 1
4822
+ SCE_PO_MSGID = 2
4823
+ SCE_PO_MSGID_TEXT = 3
4824
+ SCE_PO_MSGSTR = 4
4825
+ SCE_PO_MSGSTR_TEXT = 5
4826
+ SCE_PO_MSGCTXT = 6
4827
+ SCE_PO_MSGCTXT_TEXT = 7
4828
+ SCE_PO_FUZZY = 8
4829
+ # Lexical states for SCLEX_PASCAL
4830
+ SCE_PAS_DEFAULT = 0
4831
+ SCE_PAS_IDENTIFIER = 1
4832
+ SCE_PAS_COMMENT = 2
4833
+ SCE_PAS_COMMENT2 = 3
4834
+ SCE_PAS_COMMENTLINE = 4
4835
+ SCE_PAS_PREPROCESSOR = 5
4836
+ SCE_PAS_PREPROCESSOR2 = 6
4837
+ SCE_PAS_NUMBER = 7
4838
+ SCE_PAS_HEXNUMBER = 8
4839
+ SCE_PAS_WORD = 9
4840
+ SCE_PAS_STRING = 10
4841
+ SCE_PAS_STRINGEOL = 11
4842
+ SCE_PAS_CHARACTER = 12
4843
+ SCE_PAS_OPERATOR = 13
4844
+ SCE_PAS_ASM = 14
4845
+ # Lexical state for SCLEX_SORCUS
4846
+ SCE_SORCUS_DEFAULT = 0
4847
+ SCE_SORCUS_COMMAND = 1
4848
+ SCE_SORCUS_PARAMETER = 2
4849
+ SCE_SORCUS_COMMENTLINE = 3
4850
+ SCE_SORCUS_STRING = 4
4851
+ SCE_SORCUS_STRINGEOL = 5
4852
+ SCE_SORCUS_IDENTIFIER = 6
4853
+ SCE_SORCUS_OPERATOR = 7
4854
+ SCE_SORCUS_NUMBER = 8
4855
+ SCE_SORCUS_CONSTANT = 9
4856
+ # Lexical state for SCLEX_POWERPRO
4857
+ SCE_POWERPRO_DEFAULT = 0
4858
+ SCE_POWERPRO_COMMENTBLOCK = 1
4859
+ SCE_POWERPRO_COMMENTLINE = 2
4860
+ SCE_POWERPRO_NUMBER = 3
4861
+ SCE_POWERPRO_WORD = 4
4862
+ SCE_POWERPRO_WORD2 = 5
4863
+ SCE_POWERPRO_WORD3 = 6
4864
+ SCE_POWERPRO_WORD4 = 7
4865
+ SCE_POWERPRO_DOUBLEQUOTEDSTRING = 8
4866
+ SCE_POWERPRO_SINGLEQUOTEDSTRING = 9
4867
+ SCE_POWERPRO_LINECONTINUE = 10
4868
+ SCE_POWERPRO_OPERATOR = 11
4869
+ SCE_POWERPRO_IDENTIFIER = 12
4870
+ SCE_POWERPRO_STRINGEOL = 13
4871
+ SCE_POWERPRO_VERBATIM = 14
4872
+ SCE_POWERPRO_ALTQUOTE = 15
4873
+ SCE_POWERPRO_FUNCTION = 16
4874
+ # Lexical states for SCLEX_SML
4875
+ SCE_SML_DEFAULT = 0
4876
+ SCE_SML_IDENTIFIER = 1
4877
+ SCE_SML_TAGNAME = 2
4878
+ SCE_SML_KEYWORD = 3
4879
+ SCE_SML_KEYWORD2 = 4
4880
+ SCE_SML_KEYWORD3 = 5
4881
+ SCE_SML_LINENUM = 6
4882
+ SCE_SML_OPERATOR = 7
4883
+ SCE_SML_NUMBER = 8
4884
+ SCE_SML_CHAR = 9
4885
+ SCE_SML_STRING = 11
4886
+ SCE_SML_COMMENT = 12
4887
+ SCE_SML_COMMENT1 = 13
4888
+ SCE_SML_COMMENT2 = 14
4889
+ SCE_SML_COMMENT3 = 15
4890
+ # Lexical state for SCLEX_MARKDOWN
4891
+ SCE_MARKDOWN_DEFAULT = 0
4892
+ SCE_MARKDOWN_LINE_BEGIN = 1
4893
+ SCE_MARKDOWN_STRONG1 = 2
4894
+ SCE_MARKDOWN_STRONG2 = 3
4895
+ SCE_MARKDOWN_EM1 = 4
4896
+ SCE_MARKDOWN_EM2 = 5
4897
+ SCE_MARKDOWN_HEADER1 = 6
4898
+ SCE_MARKDOWN_HEADER2 = 7
4899
+ SCE_MARKDOWN_HEADER3 = 8
4900
+ SCE_MARKDOWN_HEADER4 = 9
4901
+ SCE_MARKDOWN_HEADER5 = 10
4902
+ SCE_MARKDOWN_HEADER6 = 11
4903
+ SCE_MARKDOWN_PRECHAR = 12
4904
+ SCE_MARKDOWN_ULIST_ITEM = 13
4905
+ SCE_MARKDOWN_OLIST_ITEM = 14
4906
+ SCE_MARKDOWN_BLOCKQUOTE = 15
4907
+ SCE_MARKDOWN_STRIKEOUT = 16
4908
+ SCE_MARKDOWN_HRULE = 17
4909
+ SCE_MARKDOWN_LINK = 18
4910
+ SCE_MARKDOWN_CODE = 19
4911
+ SCE_MARKDOWN_CODE2 = 20
4912
+ SCE_MARKDOWN_CODEBK = 21
4913
+ # Lexical state for SCLEX_TXT2TAGS
4914
+ SCE_TXT2TAGS_DEFAULT = 0
4915
+ SCE_TXT2TAGS_LINE_BEGIN = 1
4916
+ SCE_TXT2TAGS_STRONG1 = 2
4917
+ SCE_TXT2TAGS_STRONG2 = 3
4918
+ SCE_TXT2TAGS_EM1 = 4
4919
+ SCE_TXT2TAGS_EM2 = 5
4920
+ SCE_TXT2TAGS_HEADER1 = 6
4921
+ SCE_TXT2TAGS_HEADER2 = 7
4922
+ SCE_TXT2TAGS_HEADER3 = 8
4923
+ SCE_TXT2TAGS_HEADER4 = 9
4924
+ SCE_TXT2TAGS_HEADER5 = 10
4925
+ SCE_TXT2TAGS_HEADER6 = 11
4926
+ SCE_TXT2TAGS_PRECHAR = 12
4927
+ SCE_TXT2TAGS_ULIST_ITEM = 13
4928
+ SCE_TXT2TAGS_OLIST_ITEM = 14
4929
+ SCE_TXT2TAGS_BLOCKQUOTE = 15
4930
+ SCE_TXT2TAGS_STRIKEOUT = 16
4931
+ SCE_TXT2TAGS_HRULE = 17
4932
+ SCE_TXT2TAGS_LINK = 18
4933
+ SCE_TXT2TAGS_CODE = 19
4934
+ SCE_TXT2TAGS_CODE2 = 20
4935
+ SCE_TXT2TAGS_CODEBK = 21
4936
+ SCE_TXT2TAGS_COMMENT = 22
4937
+ SCE_TXT2TAGS_OPTION = 23
4938
+ SCE_TXT2TAGS_PREPROC = 24
4939
+ SCE_TXT2TAGS_POSTPROC = 25
4940
+ # Lexical states for SCLEX_A68K
4941
+ SCE_A68K_DEFAULT = 0
4942
+ SCE_A68K_COMMENT = 1
4943
+ SCE_A68K_NUMBER_DEC = 2
4944
+ SCE_A68K_NUMBER_BIN = 3
4945
+ SCE_A68K_NUMBER_HEX = 4
4946
+ SCE_A68K_STRING1 = 5
4947
+ SCE_A68K_OPERATOR = 6
4948
+ SCE_A68K_CPUINSTRUCTION = 7
4949
+ SCE_A68K_EXTINSTRUCTION = 8
4950
+ SCE_A68K_REGISTER = 9
4951
+ SCE_A68K_DIRECTIVE = 10
4952
+ SCE_A68K_MACRO_ARG = 11
4953
+ SCE_A68K_LABEL = 12
4954
+ SCE_A68K_STRING2 = 13
4955
+ SCE_A68K_IDENTIFIER = 14
4956
+ SCE_A68K_MACRO_DECLARATION = 15
4957
+ SCE_A68K_COMMENT_WORD = 16
4958
+ SCE_A68K_COMMENT_SPECIAL = 17
4959
+ SCE_A68K_COMMENT_DOXYGEN = 18
4960
+ # Lexical states for SCLEX_MODULA
4961
+ SCE_MODULA_DEFAULT = 0
4962
+ SCE_MODULA_COMMENT = 1
4963
+ SCE_MODULA_DOXYCOMM = 2
4964
+ SCE_MODULA_DOXYKEY = 3
4965
+ SCE_MODULA_KEYWORD = 4
4966
+ SCE_MODULA_RESERVED = 5
4967
+ SCE_MODULA_NUMBER = 6
4968
+ SCE_MODULA_BASENUM = 7
4969
+ SCE_MODULA_FLOAT = 8
4970
+ SCE_MODULA_STRING = 9
4971
+ SCE_MODULA_STRSPEC = 10
4972
+ SCE_MODULA_CHAR = 11
4973
+ SCE_MODULA_CHARSPEC = 12
4974
+ SCE_MODULA_PROC = 13
4975
+ SCE_MODULA_PRAGMA = 14
4976
+ SCE_MODULA_PRGKEY = 15
4977
+ SCE_MODULA_OPERATOR = 16
4978
+ SCE_MODULA_BADSTR = 17
3696
4979
 
3697
4980
  # Events
3698
4981
 
@@ -3719,23 +5002,16 @@ module Fox
3719
5002
  SCN_HOTSPOTDOUBLECLICK = 2020
3720
5003
  SCN_CALLTIPCLICK = 2021
3721
5004
  SCN_AUTOCSELECTION = 2022
5005
+ SCN_INDICATORCLICK = 2023
5006
+ SCN_INDICATORRELEASE = 2024
5007
+ SCN_AUTOCCANCELLED = 2025
5008
+ SCN_AUTOCCHARDELETED = 2026
5009
+ SCN_HOTSPOTRELEASECLICK = 2027
3722
5010
 
3723
5011
  # Deprecated
3724
5012
 
3725
- # CARET_POLICY changed in 1.47
3726
- def setCaretPolicy(caretPolicy, caretSlop)
3727
- sendMessage(2369, caretPolicy, caretSlop)
3728
- end
3729
- CARET_CENTER = 0x02
3730
- CARET_XEVEN = 0x08
3731
- CARET_XJUMPS = 0x10
3732
-
3733
- # The old name for SCN_UPDATEUI
3734
- SCN_CHECKBRACE = 2007
3735
- SCN_POSCHANGED = 2012
3736
-
3737
- # SCLEX_HTML should be used in preference to these.
3738
- SCLEX_ASP = 29
3739
- SCLEX_PHP = 30
5013
+ # Deprecated in 2.21
5014
+ # The SC_CP_DBCS value can be used to indicate a DBCS mode for GTK+.
5015
+ SC_CP_DBCS = 1
3740
5016
  end
3741
5017
  end