Jump to content

MJBComp

Members
  • Content Count

    19
  • Joined

  • Last visited

Community Reputation

2 Neutral

Technical Information

  • Delphi-Version
    Delphi 10.4 Sydney
  1. Done: RSP-38884
  2. When i close Delphi i get a list of 30 or more error screens regarding GExperts. Here is a screenshot of just one of the screens. Notice it says 'expert 1'. As i click OK the next error will be 'expert 2', then 'expert 3', etc... up through 40 or so error screens. Each of the Error Screens always displays the same 'Read of address xxxxxxxxx'. I can uninstall, and reinstall GExperts and it will work a time or two and then start giving these errors. I always have to end-task on Delphi. Its worth noting that i don't have GExperts Toolbar in my IDE along the top of the Editor Window. It is a default installation where i get to the GExpert features from its own Menu in Delphi. I installed GXRS10.4_1.3.21_experimental-twm_2022-04-09.exe then downloaded the code to bring the build up to 3853 fix the case-sensitivity issue. Perhaps there is a different/newer combination i could use that might solve the problem. Any thoughts on what it could be?
  3. Ok i did more testing and i can now reproduce the error with ANY delphi PAS file. Can someone test this to see if it its reproducible on your Delphi as well. It all stems from right clicking any open .PAS file and selecting 'New Edit Window'. Once you have the source file open in a second edit window, Compile your App and let run, then close your app and return to the IDE. Now leave the second edit window open and close your project, close delphi, and restart delphi. Once you are back in Delphi, open your project, then from the open tabs, close your PAS file that is open in the second edit window. Now if you try and double click that PAS file in the Project window it won't open the file any more. (BUG) How you can gain the functionality back is to open your Project.dsk file and in the [Modules] section, find the line that has your stuck pas file and delete that line. Reopen delphi and you can now open your PAS file again. So there is a problem with the IDE and having a new edit window open. Its like the PAS file thats associated with the new edit window gets stuck. So when you try and open it Delphi thinks its already open but you never get the interface.
  4. MJBComp

    Line Break after i type 'if'

    I've tried that. It doesn't work.
  5. MJBComp

    Line Break after i type 'if'

    corneliusdavid, Ok you solved one question and one remains. I do prefer to press Ctrl + J to invoke the Live Templates so your solution worked. I was under the impression that unchecking that option also turned off code completion for functions/procedures as well but glad to see it does exactly what i want. The unsolved question is i use cnPack (3rd party) add-in for my 'code templates' and have for years. Can you explain why when i open the Delphi Template Manager and try and delete the "if" template it won't actually remove. It will show as deleted. But if i close the Template Manager, close and re open Delphi the "if" template is back. I don't mind using some of the default Delphi templates but i have others in cnPack i want to use instead. I mean, the feature is built into Delphi to be able to delete templates but i can't find a way to do this. Even if i create my own template with the behavior i want and place it in C:\Users\<your username>\Documents\Embarcadero\Studio\code_templates\Delphi. it won't run if its named the same as one of the Default Templates which i'd simply like to just delete or rename so it won't run.
  6. MJBComp

    Line Break after i type 'if'

    Ok i figured out why its happening. View | Tool Windows | Templates Its the "if" Delphi template causing it. But when i delete that template the behavior still remains. If i close Delphi and restart the template is restored back. If i try and modify the "if" template and try and save it i get this error: "Unable to create backup folder 'c:\program files(x86}\embarcadero\21.0\ObjRepos\EN\code_templates\Delphi\_history\' So next i went directly to that folder and renamed the if.xml file to if.xm_ but Delphi still loads the "if" template. So its obviously being stored elsewhere. Any ideas?
  7. if i type 'if' in a procedure Delphi automatically buts an empty line below the if statement: when i type "if" and hit the space bar Delphi put the word "True then" and adds a blank line below it. I Do Not want this behavior. When i type "if" i want nothing to happen. I don't want Delphi to finish my statement or put any line breaks or keywords after. I have looked at Tools | Options | Language | Formatter | Delphi | Line breaks but haven't found changing any of those modifies this 'built in behavior'. Any ideas? (Delphi 10.4.2 Sidney) (64 bit Windows VCL App) begin if True then end;
  8. the file was originally called light_theme.pas. I renamed it to lighttheme.pas and its working again. I have more than 50 files in this project and this was the only file that had an 'underscore' character in the name. Delphi still shouldn't have problems opening a file with an underscore. But its working fine now.
  9. The file is only 29KB. I can open in Notepad++ fine. I can launch Delphi and do File | Open and it opens fine. I don't see anything unusual. The problem is when i open my Project file and then click on it to open/edit the file it won't open. And it does me no good to open it in Delphi by itself because as soon as i open my Project File it closes that individual file. Its a Catch / 22. LOL
  10. I have a Delphi 10.4.2 project that has issues when clicking the file [lighttheme.pas] in the Projects window on the right. It won't open the file. I loads information into the Object Inspector but the file doesn't create a tab at the top. This file does not an associated .DFM. Its a unit file that holds procedures. The only way i can get it to open where i can edit it is to close my project then choose File | Open...and open the file that way. I have also tried to remove it and re-add it to my project with no change. Something is stuck somewhere. Any ideas?
  11. MJBComp

    TTask.Run Finish Order???

    Fr0st.Brutal, thank you for your post. It pointed me in the right direction. Remy Lebeau, thank you for your post. Being able to visually see two different approaches really helped understand where to place the 'TransferEventThreadTerminated' procedure. I had previously tried this very idea inside a Try...Finally...End loop but when i put the procedure inside the Finally section i didn't Queue the procedure i just put the procedure there and noticed that it fired before the thread was finished processing. I will try this approach wrapping it into the Queue to see if it fires AFTER the thread process has completed.
  12. MJBComp

    TTask.Run Finish Order???

    I have a Task that starts and processes in the background. When the task is finished i want it to display a Dialog letting the user know the results. Whats happening is the Task is "prematurely" displaying the Dialog before the Task has finished running. Below is my pseudo-code showing how things are lined up. What is actually happening is as soon as the 'TransferEvents' procedure starts and the For Loop begins it immediately shows the dialog in the 'ShowDialogAfterTaskFinishes' before the loop is completed. So i need a way to WAIT UNTIL the iteration of the FOR loop is finished and the Task is complete before processing the ShowDialogAfterTaskFinishes procedure. I have even modified the code and tried doing tasks: Array of ITask, and starting it that way and doing a WaitForAll but it still does the same thing. procedure TfQBDailyInvoices.TransferEvent; begin TTask.Run(procedure var x: Integer; begin for x := 0 to qInvoice.RecordCount - 1 do begin case ProcessInvoice of True: DidWorkorderTransfer := TRUE; False: DidWorkorderTransfer := FALSE; end; TThread.Synchronize(nil, procedure begin { Update User Interface } UpdateMainWindow; end); qInvoice.Next; end; end); { Event i want to fire AFTER the task is complete } ShowDialogAfterTaskFinishes; end;
  13. MJBComp

    GExperts Toolbar Dark Mode

    I appreciate your response. All i want to do is make the background panel Dark. I do not want to manipulate the icons. I'm not sure if those are SpeedButtons and if they are on a TPanel. I"m trying to find in the code where to set the Canvas.Brush color or perhaps change the Transparency value from False to True. The more i dig into this i think the default TColor might be set in the GxOtaGetIdeBaseRegistryKey Registry key. I'm still digging.
  14. MJBComp

    GExperts Toolbar Dark Mode

    Can you tell me what the name of the GX_<filename>.pas that contains the toolbar icons? I'm trying to modify the code to give me a Dark Mode look in Sidney 10.4?
  15. UPDATE: i solved the problem myself. I realized that the non-visual form objects respect the Font of the parent form. But when i changed the Font.Color of the Parent Form it wasn't changing the text until i clicked 'SAVE'. So it wasn't immediately apparent it had done anything.
×