Description: Free Vision
This file as text.
(active) Revisions in this set:
5c6d6b030d0ef310f3b83470474c25c2f9332d3c,0b850d9883e8d956a749585a212f6c0473126159,75db39f06434280c32980480d52def9c188a2c66
44213e33895210b0b1ece2353414355ea364dbd8,28cc421b13ded883a6c2e6c39a7d2e3ee63271f6,3d4a242974f5290302e7afc1f18cb462ce6942a7
c5541e9376af14246897f7013d1a72a62da7032f,1f3e903c107ef366b8c1ed2d57e4e1efdad13d02,b564e400fc76fa5f429922849a96580d6494bfac
4b0edb61153aa71dea42c1f6e270daf72753384e,0d76565e50239b58176c9d8a298677c2093ac3a1,8a7ba17e12daa3e03c89e4794daa07e852105f57
3297a453ea0717b1c4858015adc494c4dd467239,ae339ed8fb7d5678db9d5f9db3df4002a21074c7,7fd8562d4a19c3d271ca9d8ea912d006d1b8012c
6fa787674f53b7e01dfb9f2de12e92367c44ba0c,98132ce24e7eab0793065dea5d91d14ae8a4e075,c9cc530d948d4270e528b63ba2bb13493366d907
6198d4a0a1eabe00f5ba947f24747f5c1bab9f94,bb06c623c3100372c1cf7a769da0d7bf1eb94ce0,766162a3481880e0c0533c0309aeb9fd19a0e545
e8a0abf075a6ac777b3928f5623f6f3e67a0050a,763124567d20c79d6bdd9ca550899588367bad2a,2b0cdc0c15d6012f580a1e2e578ab1de291c5bd4
c540ef3bf85d0bb8298d57025400e8fa1af4323a,86f36c66c048f4ed692d829fcbd4a28e2f9b7a7b,8b0747f5529cafaf0823adcb7d9c1184f09a2f04
346cf6a32ff9d360f363715b940d081d713a475c,17b748ef9ae87cdff765ff1aedfdf23f643f7367,08c5d9b00773c9f1bbf7d703109ba9cab2b89654
eb6d1dc73f9b2694fe6baf692936a65939c026b3,4ff66758ee71ffdc5a99b86c3b824a0ab5f81b66,ad35f14017ab89059ee8c608c77a34d93f902cd9
c92235f4fd4c9430e3468e3b17868a68ccbd459a,3f0d1aca089fbc674fbd8a1e82674e4726d03c0d,0172420df7dd4f317c050084d39ee271a6eba17a
d373397f30324be8f0e7f1085ed5322e17bd22a3,0fe68e7c9edc24226fdfe9fe93d6ceef9fce4824,d659c731d8277b7beca49e25df704dc51259eaa4
92334d86dfafcacc31c0c2b5c184c029e8ad2cdb,e1da44c21913bcfb21cd404276d37dd726ee11ff,78862011b2dc79757a001c92b0e7bfa975ce5723
29dfb6131e6e1819591bf69a009387c6c8dfd07d,90b422b2d44eb1b54cd9c98d9bed8e6f97686296,cb6a66fed0ddde682706434bf638b8158b616396
1ffb6c6fdf22c24e7740462c04d025df8b2d84ec,047b435131103d0c4018745899b2cf2bb6a9e2ad,88e960cd00ee0f4efc259fce11e6c0eec287c0a9
f5005e46469f038ac3debcba16407bdb9f5c4e84,a9a0dfeae387f49a9108263f5498f78cbe024ca2,79aac426fd35f18a52a986656abd7de8cdf84c95
ddde3628ba2c1da90fd28622221996cb341ba59f,5dae243ffd4b2820b7e0bb54eeeefdb4e3bb2a30,2cfab10cb1f9f6f6e44d438576db61d56f5aac99
297e9881c6f6fda8865e50267e033cc68224724d,5e9ba29d89a34e1cc14f95f6ce47b7b87e6e683e,ddd262168846fbf2ba5372114ada135af71225cd
4d7538a0da03e8c177c4367d1e7080bc73fd04f2,5b5f6b71581e282d9e7b68f953eb682269f9c79e,0d844aaa4150d4884ebd1ad411c791fe779e41db
7cf1d227fb2435978788ec6f283a7410d5e544e8,f0adf5d6120953274e901e055edbb29b42b7f616,25cf57b085ad8043e1a7a82ac4ea5f1335a8b537
d5ef64fb91cddc665f25bf57c93d1d442604843a,6e845e397fd1d96c6be0ad0caac80bde3c34b27e,1d0ec1b96671437913c86e35deffd2f28a1ac153
5013e7039a3dc30df510941eac1cd365a50fe10a,1a643e250a070d873a2c7b4253767bf457a85643,f64bd5c07974559809148d0872f786122b881b1f
d41d6de6ec40a38ef495924e4cb77fb2cd5f3d15,829404a9570e15839ef15b845b43c009afe2055b,be726fdd09e05de3695f7eb75e8b95c17d02e8f0
55337def9ab243847853ef9b1dd58c0b564fcabc,057b786fbde4ec4963a9d67dc57fe6daa0791642,8a0a97576a5e762d6e6be33b82ea40acc06e8009
b8baf3bb85be26c3e10dfcb44ab61d3d98bd7738,7da5856dbd930ff246d76ec588438b7cceb87b49,1c9c84d01eb06bc3550d67836db2926f54eebde2
af4d301af9beb51331fdd864bceda75e1710f2f6,6cbf84eca626981e19a379371614a77b1838a6fb,5d3d64b3409efd9a109aa87f6bf2008a8da4b85c
c466caa0c8b439e563c41259d98a872abb77b0d2,98f42567130bbd6e47b357b93137f516b7ee8d1a,2ac661f63e21363d0715a4d213f8a1710ac8f660
5843d66a38276a1752766f5dfb853f44bdb08d16,d96b84cf1f81413e6ff8f8978b7712e34cbe2e88,9c4d842a6f6c80a1972d5ad8aaf47e66a3b7890a
b240b78c9fcb5daef7388e60f6287e7f93ec308a,b8a2c613e31d808436a13ba2f747801f27632e42,c0482743af23100033e1af8490abc856ed70a580
6c0491f7c2faf4f9c6ef7ad68e9ce5315fed1291,8dc55d82942d36a5723b2b97f4ec5699563edb14,a7e63b66ae0197943a89d4be7431acf61d302407
e583ba6cfaff78c2b890a32fbf00fd96bbc71237,545dd0353bfc15751c6d317370fb790d304647c8,89c7ae42afc2511a8cb40000db251f8fbfec4c9a
8ed768d48613b3f49621fe839f1be290def49abf,f04d87bc3da1959e635b1645c4f8bfb36ef7f5f6,1b27a955fa60036ea77d34629d963f104a3bdc10
0d171d91ae78ee7513370574128c5ca22789f613,c271a7106018c7acc056a2ef6bc01b0836923f1a,fb7fdfaae438b1497c6041755bfb15dada8cffc0
1bc06ec2767faca0764880bf70605a1fcacdd2af,83e492235e99c1ae079c87995be30b5d624370c9,9b419b800a2ab0a588615efd4b98f6190201c007
60a7eac72b9292decc314749d9f5a12f4d48ac20,febcfc8d20d5a57544fe394a8b4754731e68943c,91167f41a6f53a6db27085ab0ed9e930ede13ea9
700b30851e8b1294a78c9a50d4619e26f011c3ca,1bedcef063aa9e1753f6905afa4d1a65cc378a04,8751e983397d0712e92c7d19bd2c8f7a8d02a41c
59a60856dc0dff4041ff1f4cb33629a6aa04fbd6,17f7cb0e45ac10f19dcb7e883365c2c365d1c16d,e539696f29a48912a4e2cd92b9f8b0210a5e0535
75e42870ae10ee5d446ab6d4d8335aa7eb02269e,b6d2c6ccb721bc8707fc992c407cb695a5c5eef7,646ddb82173c7a55d7b4fa34c7b2cc75e9fa7c87
2ecca003dd15e8f7c082eeb3c2ff6ea141487017,d4be82e87988cfe921c8843cbe6856176a1209d1,f9cfc0aeb4de2e6ecb347b011ad2ab2ff2cac007
46586902f4c11be78d26048061e7203da14ae9e9,ea0213810b5f08a5c8df9ec16c160547101b0151,6bef792f3303eba2da048ad8a9950cac2c2a787b
028c06219290b7f1aa35c581e27b7a7dcfdc2ed8,de770cf1bea6238680853db72816a29f55098760,fe7324a04ca69b5d3f76fded91041f21111c671c
1c9fb8ec7dc83230dd264147ddc167eb5f323804,3dfefc25efa6ebced10e2e2dbde187130bbab2cc,fe312ab99ff41531686afed3ce0f7446d928a765
ddd87e09ff91b16d0926a857787e753eda4baff0,00beafae5be8d267469128964c6e901a6817e0c3,1b1facf87991774ff536acd4bddbd00faac243bc
0c2a1ffba8bb86294b226db30e4f744eb2b1da9c,78c3b698b183c690592e3f63fa8b2e6c12618607,4b6eea19189dce34125eb0e3de74b07de5cf8e43
40870af6a7dc39322622f7c4646b974c0d0800be,6ca821950d7dcd8579bd1e87ca22049aaf9e8b8d,41a51e8e4a6220935ff65f6e313c80380c71c1e9
52a29e0ba7e6dbf5cdc6dc0ba9b60c88e2307856,0b7d4801b077856035a56c7a67806210306df21d,3149506d7f82ed315a809a0c76c10daf9c4ce3f1
c1dca28cc5759a9190089849e83d6dd3c72a77e2,a57bda94defdebc54a9ea26cbda85d7fe6ab377e,6aacb9696184f25755a7a0c51041eb953c60808c
088a52a1cec23092d2c918cb121b44bd9391ee74,12fb58325a6a24663582762f7296fc903cef3420,063133f2f5726e0f71d74149c2f522ecd37a882e
62f8899c1b13c58ab3d318c55c607ccefab9b811,2208b55f767117cfc5a32df3f81c44e8001e7624,9f22623459866915d8769bd2e6cd9c8a75357c6e
d309b77b59612157a5a729170791cd9153599be5,4cfd9fa16e27a6c1dc3a6f4e2581313362105664,935467ae2320ef36021d6428752ea6b26cfdae74
359d23e595e164d4e895f90425ab57d1829696d3,9c3a66930c7be316b97b9e932140a56cc0b35394,a67c85cb89a556194d53dbf3e23c09750e4a16a2
818e3ae6e508788f628a7edc55782cef1da96d77,e1cb1881572cc0f36cc92b518b3f57ae9e20691f,538670c5a23a14ca36ed47e3c6d46f51164b861e
9d283cd983406aa6a6017c0faba2ad4509385dda,4c4388f830b5c8f02caf246248f0387eaec13204,1b4c2b055124e6ab99c3a1464f8d7ae0baa2c5a3
fb872569da337454566eee04a45f55c09e26aa02,87cfd7dcaed01a183d42256822af192ebfc10790,204575594555ca74e78387772bf993852bf7b7ca
7e593750e8c57286c6a01977b6834401bb8f6391,4e96751cb7ad933e3cdaf3b6418f75b71403f039,aebc7458e1aba59154cb6a6b5c581bafad061e14
c893233359603fe5e4db38afcee458a56922c357,1fae85a1c61d4943e768f280eea380d85d3b89ff,300d4f26177342d908d8fb859ced9e21f2ab12e9
4b271d8e0eadb801ccd5047bf2ac433c2cbd9f08,0ce984580945702cb50f17cc7a4cfeeb99ce109f,ef2c9ecc1c8c9e857a74ac62b6a7da4207bf37c5
b3591aecc2c68aba17a4e01b53e9b9a94fadf72d,d5ada197b8a33ac922ab4758c5db3c3e5914d803,17d5d47c91fceeeaf2ac1881e6dc27133cc4ac00
486824c4ddc0e710bbfcb46b6ef44b639a6544aa,b8ba852e946554655cac0897164b9b04ac4f0e95,bb62a9d8f0c702ea1e15f2c64d72b84ee6588e6a
ab64ccf73a9e59be412767839da148c0fa60cce4,225fc12164a760946394ecfa634e6abe4b137295,2d27ffa4275a879e31b3b2d126edcf2375099a25
1ebf3c1615db971e4ce8d3ce38a0060efa34d26a,ce3da8d36014a3b2c91730ca9cc66fd05f693eee,a8e34cfbc9e8e362f50f64297c622601410ce0df
18c009fd98d509c109791eba325c2d30e6461dd0,889db707e452802aef66a0920e2a329b9b96f12f,cc57bb2146626257f6d07f0a05c47e1ba6b09bb8
515735eedb89d7621ce7ce7ca9f5df0a1bac272e,c8f8d3a1d31c1e90e24347ce71a079984a388ec0,f7e0de1b11d423d8b64f05352d10a106da895999
539f014c48cd3736726bf84d426ef2db0737dbcb,cb41a0b2aaa79b0bac20915887cdad6e1a4cf33c,e1091bce943124f553fe1dd6ae3e34d039b4ddce
7cd4cccbacc58646cad732c167f3ccb53c0eae54,bdf2a6087c406c4b64ad98197bcf6709dcadd3d5,ae3e45d2717955d28c3864bab73934679fa85055
5fc7c81b0bf5ea5f7e8598ab53335590ad1f1cc9,c573f54fb969ae8c1b7dedcca2026dcde37945fd,523c2c206a00416e4f6ce04b0076e21438fe24e5
aeff4f55f4a7c707169a32c5bcd5dace6608e8e8,5554e6d31376fb4d889bba4b3241575051fc2b1d,49ffc6f6c8df33f4fc74904f7e3bd86a79d3fcf3
ea548eaa56b1383b4bbf3c6fdae919f84442041a,d9a66255ee68332828a826f875467a8c40442127,5a77e17a24449841a283d20f47a2fd5fb813f2b4
202a069031fefbd8e16b85c467600988e02dfc3d,613e964e3cbe603eedee9993bf05872829990749,51fe99c7527f40e142cf617594e684d9adc0a44a
19e38139eaa104de3fa6ae4565756f444696b12e,b2e897d622fc6a91e11c800ce07ae1545caaa233,1a97db3a9f3904e3a2fadf939f0fae57e0706249
294ac1deb663d478c2a51404a9ef855ff447396e,5b3b5579d47281f8b015187cb2604270abd5efc1,121b9c04a17d4087375da4ae101f9bda2e731472
f5b41fb1f378a947cc208ca096262bcee4d73e3d,b6fddd6bc97c2fce59d6e89c64c49a0c3fe268d6,d8b05a6a3b9227d12c2031de013602bdbdf28390
77f1872b811de1d052e24de9176ce7f6f1d8515a,1e2637f0e295dea980ff2434592dfeb4337a1657,66942ac20e353a9fff227993a0bfe60f96d46156
adc3932c1b5c603832035c99bdd2da1ded7af5a4,ef7f9ec13a0e15b716cc446ae508307b0843c764,907cc2586227ebf449058340537f715b0514251f
c43da06c8de04d2391571a74bbc4565cd96df63a,604769dd86e5655bbb0db2c16463b5bdb470db92,9726b4443b076a3c7002eaa8feeb7469d4182a11
2da236b7f507468b6394ae77f41015ef4a059314,2dddcab5de057c67b006693e3a3edd7b31b2508e,e17ee248c31ce412ea08d1ba59efd453aefbb37f
58e81ecb1f3cb6b26db3ee46c3e44b24748ef624,690463852bbef1c0531814bf128c7f104f5fec36,b584df777456a75cd490096402f77e2d6351cbe3
fe74647e2c13aedbb059c1eb084d74b3f6cc440e,93477bee4e60e0359c6e7d4cfce222a5c35c71f1,561ecb8a6d37fea131a3784f9de4fdda349b381f
611679b9661506400dcf1850734eacc8d7053975,63622b01007eacc47a10974adc01b7e4491c938a,3ecc888bd4cf377d9ff0ce62281fe1ede999e981
36d94705af226ecc2534c8f4388126a8399a0714,6d893bcccb01e905f61e9ea6d90672d655ed6911,56e3168120cab8eae00ce6b1f4dfbd8ff30b0d1d
afe5e085e47b57eb7410c418e2ca62f618983dbd,29ab0f0bfc00bdb4439819f0a1a62a42515c1e99,8499765e32c676bfa8e5aa33a60e8f18417fef10
af86347690cc0155ed495adcb425f7d3bbee59cd,c26e75a3c4eef379f5c9f9ace8045be9ecdc9cfa,642c2d047d2e941a329a383771bd21800d8ecc90
e8bb0cfcc89dd3bd6866c66478964c454742d170,98cc553dad5663e54614a83bebb6d2bf46b079af,0aa7c3895b1aeeb35a7986ed97e30eb526fee959
b9c00b2abb1cf5e74d25fc94b4b98479c8cada4e,2026af6d86873585198c476311c75859c021f746,b92030cfc4bc1a972a70fb5c4de763b61ad0cd5d
f1d570bf5f5f81fa0274bdd2eb06495957fa8e59,da278f4e10b02b0bc868736ef6a4cc64923235ab,390e449d1d6aa2e1cda014dc59d886827b45a1fc
786c2ec2c707fe905e44f5c432ac9902c10de643,64a07db475e3ea59a343ef5e475d165099f6f6a0,9f50771a5328753e5cf1423649e8ccb15966ce6c
660a8efc171846ca6661fc67ba4fa283bb9e162f,897ec4d9815ccf4aa30d50a8502e6ca55c456d38
Clicking a revision will expand files
* switch to using enhanced key events in the drivers unit
+ add TEvent.UnicodeChar to the drivers unit
* all integers replaced with smallint, in order to be able to introduce objfpc mode
* drivers.pas moved to drivers.inc
+ added drivers.pas that includes drivers.inc
+ introduced unit udrivers, which calls InitEnhancedVideo instead of InitVideo (i.e. enables unicode mode in the video unit)
* views.pas renamed views.inc
+ added views.pas that includes views.inc
+ introduced unit uviews, which is going to be the unicode enabled version of the views unit
* switched the fv units to objfpc mode
* partial unicode conversion of the views unit
+ unicode version of MoveCStr
+ unicode version of MoveStr
+ unicode version of CStrLen
+ unicode version of MoveChar
+ unicode version of MoveBuf
* unicode fixes in TFrame.Draw
* TTitleStr redefined as UnicodeString in the unicode version of the views unit
* unicode conversion of TScrollBar.Init
* unicode version of TListViewer.GetText
* unicode fixes in TListViewer.Draw
* unicode version of SpecialChars
* unicode versions of TView.TextWidth and CTextWidth
- removed the posidx, because it seems to be unused
* TWindow.Title changed to UnicodeString
* outline.pas renamed outline.inc
+ added outline.pas that includes outline.inc
+ unicode version of unit outline
* menus.pas renamed menus.inc
+ added menus.pas that includes menus.inc
+ unicode version of the menus unit
* histlist.pas renamed histlist.inc
+ added histlist.pas that include histlist.inc
+ unicode version of the histlist unit
* app, dialogs, msgbox and validate unites renamed .inc
+ added .pas files that include their respective .inc files for the units app, dialogs, msgbox and validate
+ added unicode versions of the app, dialogs, msgbox and validate units (unicode conversion not completed yet)
* updated the uses clauses of the unicode versions of the app, dialogs, msgbox
and validate units to use only unicode units in their uses clause
+ introduced the FVString type
* use FVString in the interface part of the validate unit
* fvcommon.pas renamed fvcommon.inc
+ fvcommon.pas that includes fvcommon.inc
* fvstring replaced with sw_string in the drivers/udrivers unit
* use ufvcommon in unit uvalidate
* replaced fvstring with sw_string in validate.inc
* use ufvcommon in uviews
* use ufvcommon in uhistlist
* use ufvcommon in unit uapp
* use ufvcommon in udialogs
- reduced number of ifdefs by using sw_string in unit views/uviews
+ use Sw_String in unit menus/umenus to reduce the number of ifdefs
+ use Sw_String in unit histlist/uhistlist to reduce the number of ifdefs
* some interface unit compilation fixes in the udialogs unit
+ introduced type Sw_PString
* more dialogs unit unicode conversion
* umsgbox unit interface unicode conversion
+ use unit (u)fvcommon in (u)msgbox
+ introduced Sw_ExtendedGraphemeCluster
* unicode fixes in the implementation of the TBackGround object
* unicode fixes in the implementation part of the uapp unit
* unicode conversion of the msgbox unit implementation, as well as the FormatStr function
* unicode fix in TDialog.ChangeTitle
* unicode fix in TDialog.NewLabel
* unicode fix in TInputLine.Init
* more unicode fixes in the udialogs unit
* unicode fixes in TInputLine.DataSize
* unicode fixes in TInputLine.Valid
+ more unicode fixes in the dialogs unit
* use a TUnicodeStringCollection in TCluster
+ unicode fixes in TCluster.DrawMultiBox
+ more unicode fixes; the unicode units uapp, udialogs, umsgbox and uvalidate now compile
+ unicode fix in TDesktop.InitBackground
+ implemented StrWidth and CStrLen, using the new extended grapheme cluster string enumerator
+ use the enhanced grapheme cluster enumerator in UDrivers.MoveCStr and MoveStr
+ some fv unicode fixes for supporting complex (multi-char) enhanced grapheme clusters
- disable optimizations to ease debugging
* fixed reference count bug in the unicode version of TView.do_writeViewRec1
* updated unicode example string
- reduced the number of ifdefs in TStatusLine.DrawSelect
- removed ifdefs from TStatusLine.HandleEvent
- removed an ifdef from DisposeMenu
* use SW_PString in TMenuItem to avoid an ifdef
* use Sw_PString in TStatusItem to avoid an ifdef
- removed one ifdef from TMenuView.Load
- cleanup ifdefs from TMenuView.Execute
- removed ifdefs from TMenuView.GetHelpCtx
- more ifdefs removed by the use of Sw_NewStr
+ use Video.StringDisplayWidth in UDrivers.StrWidth
+ use Video.ExtendedGraphemeClusterDisplayWidth in UDriver.CStrLen in order to support wide characters
- removed no longer used local variable
+ use Video.ExtendedGraphemeClusterDisplayWidth to support double width characters in MoveStr and MoveCStr
+ implement TView.TextWidth and TView.CTextWidth via StrWidth and CStrLen
+ unicode fixes in TMenuBox.Draw
+ Unicode aware implementation of TStaticText.Draw
+ unicode fixes for the window title
+ added scrollbar and listbox to the unicode example
+ use different languages in the list box
+ unicode fixes in TCluster.DrawMultiBox
+ added horizontal scrollbar to the demo
+ enable PInputLine in the unicode demo
+ TInputLine unicode keyboard text input fixed
+ wide and combining character support when determining the cursor position in TInputLine
+ unicode combining and wide character support in TInputLine.Draw
+ wide and combining character support in TInputLine.HandleEvent.MousePos. This
means cursor positioning and text selection with the mouse now works properly
with these special unicode characters
* fixed double width character at the end of TInputLine covering the right
scroll arrow
+ introduced UDrivers.EgcWidth
+ optimization: use EgcWidth instead of StrWidth wherever possible
+ added lpi file for compiling testuapp for windows
* timeddlg.pas renamed timeddlg.inc
+ added timeddlg.pas that includes timeddlg.inc
+ added unicode version of the timeddlg unit
* inplong.pas renamed inplong.inc
+ added inplong.pas that includes inplong.inc
+ added unit uinplong - unicode version of inplong
* tabs.pas renamed tabs.inc
+ added tabs.pas that includes tabs.inc
+ added utabs - unicode version of the tabs unit
* unicode conversion of the non-ASCII characters in statuses.pas
* replaced non-ascii characters to #XXX equivalents
* converted non-ascii characters in stddlg.pas to unicode and #XXX equivalents in the non-unicode version
* converted some non-ascii characters to unicode
* converted non-ascii characters to #XXX equivalents
* replaced high ascii characters with #XXX equivalents and provided unicode equivalents
* hide the (currently broken, to be fixed) unix internal/external code page
stuff to the implementation part of the unit
Amiga: Fix for unable to type in FV applications for Amiga-systems
* Dotted filenames for package fv
Properly mirror InitEnhancedVideo with DoneEnhancedVideo in FV.
Message box have to draw some blank lines.
FV Drivers: change name for mouse scroll up/down
FV TScroller and TEditor respond to mouse scroll
FV In ListBox mouse scroll function as Key Up or Key Down
Unit ColorSel reimplemented (partially)
Namespaces in ColorSel unit
Bracketed paste and OSC 52 in FV
* Correct names, needed for fpmake to work
fvclip unit file name fixes
Screen width more than 255 chars (for Unixes at least)
Detach List scrollbar value change of focused item change
FV add mouse triple click
Fix TGroup.IndexOf. Report Last as last not as 1.
Complete ColorSel units load and store procedures.
Implemented dedicated mouse wheel event in FV.
* Example from Margers from merge request !953
Add widestring manager in uses.
Mouse wheel buttons fix when other button holding down.
Fix paste unicode string problem.
UTF8 friendly source code.
Window width, fix left arrow draw, use Lenght not access S[0].
FormatStr deal with UnicodeString.
Remove explicit unit specify.
Use Length function instead of S[0].
Adapt Free Vision App to screen resize.
Register TClockView and THeapView.
Wide end of line character.
Select by mouse scroll in TEditor.
Editors use id constants for ObjType.
Treat `#10` as line break in TStaticText.
Mouse wheel do not affect AutoTicks.
Add "Cluster disabled" entry in ColorSel.
Fixes for FV TInputLine's GetData, SetData and DataSize functions
Popup menu on click select correct item.
Ensure that empty line is empty.
Initialize string variable.
TFilterValidator.IsValidInput fix.
Move Free Vision units to include files.
Add Unicode Free Vision units.
Update fpmake, add doted units for Unicode Free Vision.
Add Free Vision examples.
Avoid compilation failure for some i8086 memory models
Editor fix memory access out of bounds.
Find, replace work with unicode strings.
Replace dialog title string.
Change dialog title from "Ascii table" to "ASCII Table".
Correct DataSize of Input line.
* Improve file selection dialog, patch by unxed. Fixes issue
gitlab 0041404
Consecutive mouse wheel events will be "double" events.
Allow to navigate between buttons not only with Tab/Shift+Tab, but also using arrow keys as it is common UI/UX pattern now.
Added support for Copy/Cut to system clipboard to TInputLine
Ctrl+Arrows now work in TInputLine
Support non-latin menu hotkes
Support non-latin menu hotkes
More robust hotkey matchting logic
Fixed inner menu hotkeys (w/o Alt)
minor: backpace key now correctly deletes selected test in input lines
minor: navigation with the Ctrl+arrow_keys should consider not only spaces but also punctuation marks as word separators
Do not insert any text in input line if Ctrl is pressed
- unicode support in freevision testapp
- enable unicode build on unix by default
Sync editor to recent TInputLine improvements:
- Ctrl+arrows should use punctuation as word separators also
- OSC52 copy to clipboard support
- Ctrl+letters should not type letters
Also, added Ctrl+A as "select all" hotkey
Align Ctrl+Right behavior with Ctrl+Left
The word navigation logic for Ctrl+Right incorrectly included trailing
delimiters (spaces, punctuation) after the word. This created an
asymmetric and unintuitive experience compared to Ctrl+Left.
This commit adjusts the logic in both TInputLine and TEditor.NextWord
to first skip delimiters and then skip the word itself, ensuring the
cursor stops precisely at the word boundary.
Fixed remaining keyboard problems. At lease, some of them :)
The word-wise navigation using Ctrl+Arrow keys in TInputLine and TEditor was inconsistent with the behavior found in most modern text editors.
When the cursor was positioned at the first or last significant (non-whitespace) character, it would not proceed to the absolute start or end of the line on a subsequent keypress. This made it cumbersome to select an entire line easily.
This commit updates the logic to align with modern UI standards:
- In TInputLine, when the cursor is at the first significant character, the next Ctrl+Left press now moves it to the absolute beginning of the line. Similarly, Ctrl+Right from the last significant character moves it to the absolute end.
- In TEditor, the PrevWord and NextWord methods have been updated with the same logic, ensuring consistent behavior for Ctrl+Arrow navigation.
This enhancement provides a more intuitive and efficient user experience for text navigation and selection.
Fix Video unit doted name in uses for Amiga.
Mouse start position in upper left corner.
TEditor handle file with utf BOM.
Reposition any dialog window along with terminal resize.
Color dialog more flexible and suited for extending.
Adapt Keytest example for non Unicode FreeVision.
Views in an inactive Tab page calculate new bounds on Tab view resize.
Rework OSC 52 clipboard paste integration logic with FreeVision.
Global OS clipboard in FreeVision with fallback to local clipboard if first one is absent or fails.
Update example demoedit to changed clipboard integration.
Cosmetics for platform.inc.
Add unit pmode to FreeVision.
Copy and integrate content of WinClip to unit fvclip.
Fix some doted unit names.
Fix compilation of fvclip unit for win16 OS
Clipbaord for msdos target.
Remove code that broke Alt+key in Free Vision.
Up to 1024 columns on screen (Windows).
Enable mouse input in Windows console for Free Vision by default.
Let Video driver manage Windows console size.
Focused directory color in inactive List.
Give to directory its own color.
Change TWindow ZoomRect along with terminal resize.
Str[0] to Length(Str). Modified patch by Joe care. Fix issue
gitlab 0037777.
Ctrl-\ does not generate SIGQUIT. Fix issue
gitlab 0026107.
Ctrl-C does not generate "Signal error: 295"
Fix compilation failure for small data models
Replace all ifdef windows by ifdef OS_WINDOWS, as the correponding code is not valid for i8086-win16 target
Less unnecessary screen updates.
Fix segmentation fault on Window frame width less than 5 characters.
Recall (with F5 - zoom) in off screen stuck Window.
(inactive) Revisions in this set f3eb7f8608597109a29b4ca566ec426d5da1ca5c,86486f9c463ef9c377e294f3ab897bb5e71b0306,97b79b3d4e67126d1db9745e5d3d5be33fc3add9,8d7a6cc778f939ab48006fd2ffa2c71b13ffee22,ae495ab8883eccd23f5b1c74023ee109ba26c447,b9688ae266c76019d18238230ef163f83584696b,d13c73744c809dcff6a38444e8d6c4e398ea3b29,0099cab2debdf7df3e80976f2f9318c66a5b96c1,4f9950e92e775ad7f874e998ddc318dcfe945c30,396432f734f41e37833055f67b3a0fdc5d11fac3
Restored array of Sw_Word to array of Word as those are ment to be video buffer cells.
Contra intuitive: TEditor.SetBufSize should not change BufSize at all
Larger Change Directory dialog for larger console/terminal dimensions
Larger File Open dialog for larger console/terminal dimensions
Editor load files in read only mode
Screen width more than 255 fix for Statuses unit.
Accept all possible line endings.
Do not allow resize Ascii Table window.
Adjust max line length as you type in TEditor.
Revisions in bigsets in this set 8a208b6b1f1db1ebc3fe1b0e24d1243c06bfcd97