Leaderboard
Popular Content
Showing content with the highest reputation on 03/04/20 in all areas
-
Uses Clause Manager - Showing the filepath of the selected unit in the StatusBar
PeterPanettone posted a topic in GExperts
I've added a very useful feature to UCM: Showing the full file path of the selected unit in the StatusBar (this works in all tabs): Double-Clicking on the StatusBar copies the full file path displayed on the StatusBar to the clipboard! Here are the sources: GX_UsesExpert.zip Here is the link to the filed request: https://sourceforge.net/p/gexperts/feature-requests/82/ -
Unified Memory Management - Coming with 10.4 Beta
David Heffernan replied to a topic in Tips / Blogs / Tutorials / Videos
Unification is good. Going to cause headaches for anybody with ARC only code. Don't think that's going to be an easy migration path. Such a shame that this happened at all, but good for Emba for having the strength to change direction. -
Anything sensible for source code documentation?
Anders Melander replied to A.M. Hoornweg's topic in General Help
Try Documentation Insight. It supports both XMLDOC (which I agree makes the source unreadable) and external documentation files: I've been using it to generate library help files (in CHM-format) but it can also display the help as tooltips in the Delphi editor. -
Devart, a recognized vendor of connectivity solutions for various databases and cloud services, announced the release of ODBC driver for NexusDB. The driver can be used to access data in NexusDB databases from various analytics, database management and reporting tools, IDEs and programming languages on Windows (32/64 bit). The solution provides full support for the standard ODBC API functions and data types and can connect to the NexusDB server directly via TCP/IP. It also supports multilingual NexusDB databases: Latin, Cyrillic, or Chinese. However, due to the specifics of NexusDB, some third-party tools can connect to the DBMS only in Remote mode. See the third-party tools page in the vendor’s documentation for the complete list of such tools. As an extra benefit comes cost-effective deployment: the driver is a standalone installation file that does not require the user to install or update any dependencies, while large organizations with hundreds of machines can use the silent install method with an OEM license. About Devart Devart is one of the leading developers of database tools and administration software, ALM solutions, data providers for various database servers, data integration and backup solutions. The company also implements Web and Mobile development projects. For additional information about Devart, visit https://www.devart.com/
-
Devart SecureBridge Now Supports Android 64-bit
Jordan Sanders replied to Jordan Sanders's topic in Delphi Third-Party
Yes, it's possible. To solve your task, you can try using the TScSSHShell component. The TScSSHShell component is designed to execute a command on the server: https://devart.com/sbridge/docs/index.html?tscsshshell.htm SecureBridge does not include a terminal for displaying information. So, you can use any third-party terminal to work with TScSSHShell. Our policy is to avoid recommending particular third-party components, however, you may want to read reviews on specialized forums. TScSSHShell executes a command line on the server and receives the results of its execution. You should execute commands on the server using the TScSSHShell.WriteString method and read the result using the TScSSHShell.ReadString method. The result of the command should be passed to the terminal, and the user input should be passed from the terminal to the server via TScSSHShell.WriteString. Our SSHClientApp demo project demonstrating the use of the TScSSHShell component. You can find the SSHClientApp project in the % SecureBridgeDemos%\SSHClientApp directory. %SecureBridgeDemos% is the directory where SecureBridge Demo projects are installed on your computer. -
Array size increase with generics
Uwe Raabe replied to Mike Torrettinni's topic in Algorithms, Data Structures and Class Design
I even found a simpler solution and am going to publish a blog post about that soon. -
10.4 10.4 Beta with Update Subscription
Markus Kinzler replied to ŁukaszDe's topic in Delphi IDE and APIs
But again belated. Start of beta in april for a product being addressed for release "early 2020" -
More than visualizers I wish some stable, reliable debug evaluation in the first place, under all platforms .
-
Uses Clause Manager - Showing the filepath of the selected unit in the StatusBar
dummzeuch replied to PeterPanettone's topic in GExperts
The full source filenames are now cached and added whenever they are available (e.g. when the identifier parser finishes or when the project units parser does not use the map file but the dpr), so they rarely need to be searched for again. This speeds up updating the status bar quite a lot and prevents the annoying lags when scrolling through the lists which was previously caused by the search. I haven't tried it on a slow computer yet, but I am confident that this change makes quite a difference there too. -
The Windows imaging Component contains a wealth of useful features for manipulating images in different formats. Delphi partially encapsulates this functionality into the TWICImage class of Vcl.Graphics which is a TGraphics descendent. The following code resizes pf32bit bitmaps with transparency using TWICImage, at a much better quality than can be achieved with StretchDraw for example or anything else I have tried.. Uses Winapi.Wincodec, Vcl.Graphics; procedure ResizeBitmap(Bitmap: TBitmap; const NewWidth, NewHeight: integer); var Factory: IWICImagingFactory; Scaler: IWICBitmapScaler; Source : TWICImage; begin Bitmap.AlphaFormat := afDefined; Source := TWICImage.Create; try Factory := TWICImage.ImagingFactory; Source.Assign(Bitmap); Factory.CreateBitmapScaler(Scaler); Scaler.Initialize(Source.Handle, NewWidth, NewHeight, WICBitmapInterpolationModeHighQualityCubic); Source.Handle := IWICBitmap(Scaler); Bitmap.Assign(Source); Scaler := nil; Factory := nil; finally Source.Free; end; end; Some key points: Setting the AlphaFormat to alDefined is crucial for maintaining the transparency. If you do not release the ImageFactory before you destroy the TWICImage you will get access violations next time you call this procedure. (Have a look at TWICImage .Destroy).
-
In the project file (the DPR file) I do this before the first form is created: if (CheckWin32Version(6, 0)) then begin // Application.DefaultFont is the font used when TForm.ParentFont=True. // It is Tahoma by default but should be Segoe UI on Vista and later (according to MS UI guide lines). // See InitDefFontData() in graphics.pas Application.DefaultFont.Assign(Screen.MessageFont); // DefFontData.Name specifies the default font for everything that doesn't specify a specific font. // For now we leave it as is (Tahoma). At some point it should follow the system default like above: // DefFontData.Name := Screen.MessageFont.Name; end; And then I just make sure to set all forms ParentFont=True at design time.
-
Uses Clause Manager - Showing the filepath of the selected unit in the StatusBar
dummzeuch replied to PeterPanettone's topic in GExperts
Since it is the same functionality as in Windows, when you right click on a shortcut, I think it's fine to call it the same: "Open file location" -
Uses Clause Manager - Showing the filepath of the selected unit in the StatusBar
toms replied to PeterPanettone's topic in GExperts
Does that also apply for my other remark? WindowsExplorer is written like this: Windows Explorer and has been renamed in Windows 10: https://support.microsoft.com/en-ie/help/4026617/windows-10-windows-explorer-has-a-new-name -
Uses Clause Manager - Showing the filepath of the selected unit in the StatusBar
PeterPanettone replied to PeterPanettone's topic in GExperts
You are right. I will add an explaining hint to the StatusBar, so anybody capable of moving the mouse pointer over the StatusBar can see this explanation. If anybody wishes it I could even add a clickable INFO or DROPDOWN icon to the StatusBar. -
Uses Clause Manager - Showing the filepath of the selected unit in the StatusBar
toms replied to PeterPanettone's topic in GExperts
What's the difference between "Copy this TEXT" and "Copy this FILE" ? Personally I would name these items differently as they look a bit odd (probably a matter of taste): Like "Copy File to Clipboard" (or "Copy Path to Clipboard" ?) and "Copy Text to Clipboard" but I'm not quite sure what the function behind is doing. I would also rename "Show this File in WindowsExplorer" to "Open File Location" (Same terminology as Windows) or at least write "Windows Explorer" instead of "WindowsExplorer" -
Uses Clause Manager - Showing the filepath of the selected unit in the StatusBar
dummzeuch replied to PeterPanettone's topic in GExperts
Thanks, committed. Please use the current sources if you want to improve this further. I'll keep my hands off this code for now in order to not create any conflicts. I made Copy text to clipboard the default for the status bar context menu. The other changes, in particular to the dfm file are due to incompatibilities to Delphi 6. -
Uses Clause Manager - Showing the filepath of the selected unit in the StatusBar
PeterPanettone replied to PeterPanettone's topic in GExperts
• Fixed a bug: The context popup menu of the Units List was not available in the Identifiers tab.: • Improved the context popup menu of the Units List: • Added new menu item Copy this Identifier to the Clipboard only to the Units-List context menu of the Identifiers tab • Added new icons to the Units-List context menu Please download this newest version: GX_UsesExpert5.zip -
Those are the defaults that are established by the Vcl.Graphics.pas unit (see the InitDefFontData() function) during unit initialization, and then applied to the global DefFontData variable, which is used to initialize every TFont object at runtime. Not in the IDE, no. However, the DefFontData variable is publicly accessible, so you can modify it at runtime before creating any of your TForm objects.
-
Uses Clause Manager - Added missing DoubleClick functionality to Identifiers tab
PeterPanettone posted a topic in GExperts
In Uses Clause Manager, double-clicking a unit item in the units list of any tab (except Identifiers) adds the double-clicked unit to the implementation uses clause. This functionality is still missing in the Identifiers tab in r2832, so I added it by adding the lbxAvailDblClick event handler to sg_Identifiers: Thomas, can you please commit this. Thank you! Here is the link to to the feature request: https://sourceforge.net/p/gexperts/feature-requests/81/