[fpc-pascal] Interrogating external devices using USB
Good morning all, I have multiple amateur-radio transceivers which may be programmed with computer software through a USB cable connection. There already exists various software applications to perform those tasks, however, most, if not all, are either inaccessable or very difficult to use by blind amateur-radio operators. My goal is to develop software that is as easily used by blind amateur-radio operators as it is by sighted users. I am a retired software developer so I believe I can develop a suitable user interface, however, I need to overcome two major challenges which I never encountered in my professional career. I am hoping that someone out there can provide some direction as to where I can start mastering the two following challenges. 1. I have never written code to access external devices via USB connections. 2. I have no clue as to how to read/write to external devices for which no technical details are available. I need at least a starting point which I have been unable to discover through several searches on the internet. Any and all suggestions/assistance will be appreciated! Thanks for your consideration! 73 Bob AD8RJ ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Using the LCL without Lazarus
Gentlemen, I will be gllad to follow your lead to the MSE forum for future discussion, however, it will be a few days. Tragedy has struck our family and I will be destracted for at least the next several days. In the meantime, just for clarification, I am using: Windows 7, Home edition, 64-bit OS; Jaws for Windows, (JFW) ver 16; Non-Visual Desktop Access (NVDA), ver 2016.3 I'll check later for the version and source of my copy of IDEU. Bob -- From: "fredvs" <fi...@hotmail.com> Sent: Thursday, December 01, 2016 7:02 AM To: <fpc-pascal@lists.freepascal.org> Subject: Re: [fpc-pascal] Using the LCL without Lazarus Hello BobJ. Did you enable "Voice Assisted" feature of ideU ? Yes, after much trial and error or, probably more accurately, much trial and failure. Did you download the release version of ideU here : https://github.com/fredvs/ideU/releases/tag/1.3.0 ? All is included and the voice synthesizer must work out of the box, without any configuration. What system do you use (Windows, Linux, FreeBSD, ...). ? Like Martin proposed, maybe we could continue the discussion about ideU on MSE forum: https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk Fre;D - Many thanks ;-) -- View this message in context: http://free-pascal-general.1045716.n5.nabble.com/Using-the-LCL-without-Lazarus-tp5726979p5727000.html Sent from the Free Pascal - General mailing list archive at Nabble.com. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Using the LCL without Lazarus
Hello, Sent by: "fredvs"Sent: Wednesday, November 30, 2016 9:12 AM PS: MSEgui has a perfectly working assisted interface. Thanks, I will take a "look" at that, bearing in mind that sighted folks often over estimate how usable anything will be for non-sighted folks. What do you mean with "unfriendly" nature of their video displays" ? In my experience, I have come to believe that there must be more than one technique for providing an editable field or editable screen shown on the video display. In support of that belief I offer the fact that I can use the Windows NotePad text-editor to enter thousands of characters, review any of those characters or alter any of them with no difficulty and both of the screen-readers at my disposal provide flawless feedback regarding the identity of every character. On the other hand, there exists other software packages which must be providing those editable areas via some technique other than that used by the NotePad program because neither of my screen-readers can provide any bit of feedback regarding what might appear there and neither can either screen-reader enable me to enter any type of characters therein. I only know that which I have just explained, knowing nothing about the how's and why's of it. Did you enable "Voice Assisted" feature of ideU ? Yes, after much trial and error or, probably more accurately, much trial and failure. Evidently, IDEU defaults to an environment other than Windows because the default path to the folder containing the text-to-speech package contains slash characters instead of back-slashe characters. Naturally, that fact requires that the edit field provided to edit or enter the appropriate path name must be edited. Neither of my screen-readers could enable me to delete or edit characters from that field. Eventually I navigated to that desired folder, used one screen-reader to copy the path to the Windows clipboard, then, using the other screen-reader, returned to the edit field of interest and pasted the correct path name into that field. To my amazement, that worked! So, now it talks, sometimes. If there any documentation describing how to use this feature to greatest advantage, I have yet to discover it. What would you want to make ideU more friendly assisted ? I have no idea how you have accomplished what you have done thus far, however, I fear that a great deal more work would be required to make this a truely accessible project. Besides the difficulty described immediately above, there is precious little feedback provided for common operations. For example, after I launch IDEU, if I press the key combination "Alt key + The letter F," the currently selected menu option is voiced. If I failed to understand what was spoken, I have found no means by which I can have the same announcement restated. So, I thought, I'll just press the down-arrow key where I will surely hear an announcement describing the next item on the option list under the File menu. Then, I can press the up-arrow key and I will here the same announcement that I didn't quite understand just moments before. Well, the only announcements heard when pressing the down-arrow key or the up-arrow key was "down" and then "up." I'm sure that you can appreciate that it is more important to hear the name of the newly highlighted menu option than it is to hear which arrow-key has been pressed. As for the edit screen where one would expect to enter their source code, I cannot say whether that is accessable or not because I was never able to get into one, as far as I could determine. I don't mean to sound like a harsh critic, its just obvious to me that sighted folks have no true understanding of the obstacles faced by those of us who are without any usable sight. Furthermore, as I stated earlier, if there is any documentation for the proper use of the accessability features of IDEU, perhaps such documentation would enlighten me as to how to overcome the obstacles I have described herein. If such documentation exists, please advise how and where it may be acquired. I am open for any suggestions. I wish I could offer some helpful suggestions, however, I have no idea how the authors of the existing screen-reader software packages capture the display data and pass it on to the text-to-speech engines. Suffice it to say that the two screen-readers available to me have been around for years, have been constantly updated and still they have many problems providing complete access to all that is out there. Having said all that, I would have no difficulty understanding your reluctance to attemp to perfect accessability for IDEU. Please believe that I do appreciate your interest and your efforts. Bob ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Using the LCL without Lazarus
Terrific response, many thanks! I'll see what I can do... Bob -- From: "Mattias Gaertner" <nc-gaert...@netcologne.de> Sent: Wednesday, November 30, 2016 3:45 AM To: <fpc-pascal@lists.freepascal.org> Subject: Re: [fpc-pascal] Using the LCL without Lazarus On Tue, 29 Nov 2016 20:42:36 -0500 "BobJ" <rjustice...@woh.rr.com> wrote: [...] Begin web-site excerpt Using the LCL without Lazarus 1How to use the LCL without the Lazarus IDE? 1.1Requirements 1.2Introduction 1.3The installation process 1.4The settings 1.5The code 1.6Lazarus 1.2.6 2Alternatives How to use the LCL without the Lazarus IDE? Requirements Things you'll need: . Free Pascal 2.4.4 . Lazarus 0.9.30 That's very old. Current is FPC 3.0.0 and Lazarus 1.6.2. Tested on Microsoft Windows XP SP3. Introduction You are not forced to use the Lazarus IDE if you want to develop with the LCL. You can use it directly from the Free Pascal Compiler. True. [...] 1. I have FPC ver 3.0.0 and Lazarus ver 1.6 Should the instructions given in the excerpt be applicable with these versions, as well? Pretty much. Although this setup adds source paths so every program will compile the LCL, creating many copies and may result in a mess. Where did you find this? I recommend to simply install using the Lazarus installer. If you don't want to install the IDE you can do alternatively: Download and install FPC. Then download the Lazarus sources (e.g. to C:\lazarus) and build them: Make sure FPC 'bin' is in PATH environment variable, cd C:\lazarus, and execute 'make clean all'. This will build the LCL for win32, lazbuild and the IDE. Whatever you chose, next do: Add to your fpc.cfg: -FuC:\lazarus\component\lazutils\lib\i386-win32 -FuC:\lazarus\lcl\units\i386-win32 -FuC:\lazarus\lcl\units\i386-win32\win32 Do not add source or include paths - it can create a mess and strange errors. Now you can use the LCL in your programs. 2. Is it safe to assume that when they say "You are not forced to use the Lazarus IDE if you want to develop with the LCL. You can use it directly from the Free Pascal Compiler." that they mean that the source code can be submitted to FPC at the command line? Yes. Lazarus calls FPC itself. If you use some Lazarus packages, you can build them using lazbuild. Then add the directories containing the ppu files to your fpc.cfg, and *only* those directories. 3. As I stated somewhere above, the FP IDE is not accessable at a practical level so, is there some other way that I can satisfy the requirements to do the following? Start the FP IDE (included with FPC). [...] I leave this open for others. Mattias ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
[fpc-pascal] Using the LCL without Lazarus
Most of the viewers of this message are probably already aware that I am totally blind and must rely on screen-reading software to put to voice that which appears on the computer's video display. Unfortunately, there is more than one technique for "painting" a video display, some of which are very "unfriendly" to screen-reading software. Many web sites and application-software programs make use of some of those "unfriendly" techniques thereby rendering them unusable by blind users on a practical level. I have recently been very successful in completing a couple of console-based programs for my personal use by writing source code using Microsoft's NotePad and submitting that code to the FPC command-lie compiler. Now, I want to try my hand at developing software with a GUI but I have run into some obstacles as mentioned in my opening statements, above. My attempts to use the following software has proven to be unsuccessful because of the "unfriendly" nature of their video displays: Lazarus IDE,, IDEU IDE, FP IDE. So, while searching for some alternative methods that might be less "unfriendly," I discovered the following: My questions follow the excerpt) Begin web-site excerpt Using the LCL without Lazarus 1How to use the LCL without the Lazarus IDE? 1.1Requirements 1.2Introduction 1.3The installation process 1.4The settings 1.5The code 1.6Lazarus 1.2.6 2Alternatives How to use the LCL without the Lazarus IDE? Requirements Things you'll need: . Free Pascal 2.4.4 . Lazarus 0.9.30 Tested on Microsoft Windows XP SP3. Introduction You are not forced to use the Lazarus IDE if you want to develop with the LCL. You can use it directly from the Free Pascal Compiler. The installation process First download Free Pascal 2.4.4 and the Lazarus 0.9.30 and install them. Our FPC install directory will be this C:\FPC\2.4.4\ The Lazarus install directory will be this C:\Lazarus\ Then copy the lcl folder. Copy this folder: C:\Lazarus\lcl Paste it to this location: C:\FPC\2.4.4\units\i386-win32\lcl Now you can remove Lazarus from your computer. In the next section we'll inform the FPC that the LCL has been installed. The settings Start the FP IDE (included with FPC). Click on the Options menu and then the Directories menu item. Select the Units tab (default). Add these directories: C:\FPC\2.4.4\units\i386-win32\lcl C:\FPC\2.4.4\units\i386-win32\lcl\units\i386-win32 C:\FPC\2.4.4\units\i386-win32\lcl\widgetset C:\FPC\2.4.4\units\i386-win32\lcl\interfaces\win32 Then click on the Include files tab. Add this directory: C:\FPC\2.4.4\units\i386-win32\lcl\include Now, you should be able to use the LCL. However, above should be done for all Modes in Options if you plan to switch the mode in the future. It is easier to edit fp.cfg directly. In the next section we'll try out creating a form with a button on it. The code This is the base code: program lcl_base; {$mode objfpc} {$H+} uses Classes, Interfaces, Forms, StdCtrls; //Interfaces is very important type TForm1 = class(TForm) Button1: TButton; end; //Our Form class var Form1: TForm1; //Declare the Form1 begin Application.Initialize; Application.CreateForm(TForm1, Form1); Form1.Button1 := TButton.Create(Form1); With Form1.Button1 Do begin Parent := Form1; Visible := TRUE; Left := 10; Top := 10; Width := 100; Height := 100; Caption := 'PRESS ME'; end; Application.Run; //We do exactly the same as Lazarus does end. That's it. Now, you are able to use the LCL without the Lazarus IDE. Lazarus 1.2.6 In order to compile the above example you will need access to units from folder C:\lazarus\components\lazutils. The FP compiler would build the application with c like operators on. Alternatives If your aim is to compile Lazarus projects without using the Lazarus IDE, you can install Lazarus and use the command line lazbuild tool to compile projects. End web-site excerpt 1. I have FPC ver 3.0.0 and Lazarus ver 1.6 Should the instructions given in the excerpt be applicable with these versions, as well? 2. Is it safe to assume that when they say "You are not forced to use the Lazarus IDE if you want to develop with the LCL. You can use it directly from the Free Pascal Compiler." that they mean that the source code can be submitted to FPC at the command line? 3. As I stated somewhere above, the FP IDE is not accessable at a practical level so, is there some other way that I can satisfy the requirements to do the following? Start the FP IDE (included with FPC). Click on the Options menu and then the Directories menu item. Select the Units tab (default). Add these directories: C:\FPC\2.4.4\units\i386-win32\lcl C:\FPC\2.4.4\units\i386-win32\lcl\units\i386-win32 C:\FPC\2.4.4\units\i386-win32\lcl\widgetset C:\FPC\2.4.4\units\i386-win32\lcl\interfaces\win32 Then click on the Include files tab. Add this directory:
Re: [fpc-pascal] Blind Users
Graeme, You included this on your message...> -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ Is there any other location from which fpgui can be acquired? sourceforge has never been friendly to screen-reading software and, although I have made multiple attempts with each of two screen-readers, I have been unable to get a download started. BTW, what is the exact name of the downloadable file? Thanks, Bob ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Blind Users
Felipe, Thanks, I'll take a look. Bob -- From: "Felipe Monteiro de Carvalho"Sent: Thursday, October 27, 2016 2:19 AM To: "FPC-Pascal users discussions" Subject: Re: [fpc-pascal] Blind Users Some work was done in the LCL-Cocoa and LCL-Win32 to support screen readers. Since LCL-Win32 uses native controls, it should be acessible to screen readers out of the box, but it would be great if you could test how the LCL apps behave in practice. I tested a long time ago. About UI designing, I think it is best if you bypass the Form designer completely and write the UI in code instead. Here is an example of how to write LCL GUIs in code only, without using the Form Designer: http://wiki.freepascal.org/Form_Tutorial#Creating_a_new_form_dynamically Also read this page about acessibility in general and specifically about adding accessibility to custom control (non-native ones) in the LCL: http://wiki.lazarus.freepascal.org/LCL_Accessibility -- Felipe Monteiro de Carvalho ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Blind Users
Graeme, Thanks, I'll take a look. Bob -- From: "Graeme Geldenhuys" <mailingli...@geldenhuys.co.uk> Sent: Wednesday, October 26, 2016 4:23 AM To: <fpc-pascal@lists.freepascal.org> Subject: Re: [fpc-pascal] Blind Users On 2016-10-25 12:30, BobJ wrote: Any guidance will be appreciated. Fred has done some very impressive work with SAK - his Speech Assistive Kit. SAK works cross-platform too, and supports fpGUI Toolkit and MSEgui. Here is a short write-up on it with using fpGUI. http://fpgui.sourceforge.net/community.shtml The project website and source code can be found on GitHub. https://github.com/fredvs/sak Fred has also made a fully assistive fpGUI Visual Form's Designer and a fork of MSEide, called ideU, which you can use to develop Console, MSEgui or fpGUI applications. The ideU releases url: https://github.com/fredvs/ideU/releases Just looking at the SAK github page, it seems he managed to get a LCL version going to. Regards, Graeme -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ My public PGP key: http://tinyurl.com/graeme-pgp ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
[fpc-pascal] Blind Users
Have any blind programmers managed to make use of the Lazarus IDE or the FPC command line to write interactive software that will run on the Windows7, 64-bit platform? I am blind, a retired software developer now able to make use of two screen-reading software packages, neither of which I have been able to successfully access Lazarus for GUI programming or the output of executables created with the Lazarus command-line interface. Any guidance will be appreciated. Bob ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal