I downloaded a bunch of styles from the GetIt Manager in RAD Studio and was wondering where I could possibly find them now?
They can be found within the CatalogRepository folder. You can find that folder at C:\Users\YourNameOrWhatever\Documents\Embarcadero\Studio\22.0\CatalogRepository.
Using the styles in VCL:
Go to the appearance item under Project Settings. From there you can choose a custom style for your app. All the GetIt downloaded styles will appear there.
Using the styles in FMX:
Add a TStylebook component onto the form and then import the style you want into the component. After that, go to your form's properties and set the Stylebook property equal to your Stylebook component.
Related
I work with VCL and FMX on this application, we are updating pack by pack of the software to FMX.
Something I did on the code, changed the STYLE of the application.
On the design view, it is the DEFAULT style, without any style edition.
However, when the application is compiled the STYLE for all FMX forms are changed, and the screen become a mess, the buttons disappears, etc...
I don't know what has been done to achieve it, but I could not find a manner to set all project to DEFAULT LAYOUT.
I tried to use
TStyleManager.SetStyleFromFile('light.style')
using the samples from delphi folder.
However, noon of the .STYLE are the DEFAULT.
Is there any DEFAULT.STYLE?
Or any manner to set DEFAULT.STYLE on RUNTIME?
Recently I've installed the new Embarcadero Delphi 10.3 Rio, and noticed that some components on the Standard toolbar page are being doubled. Particularly, the doubled components are TMainMenu, TActionList and others. These components live in Embarcadero's Standard package.
I've looked through the list of installed packages and found some Embarcadero FMX packages with these components. Unchecking those packages (need to uncheck two FMX packages) didn't give a result.
Any idea how to fix this?
This is an IDE bug that affects only components in Standard VCL or FMX package.
Standard VCL controls are displayed twice on the Component toolbar https://quality.embarcadero.com/browse/RSP-19518
It is harmless, so you don't have to do anything about it.
Which standard package controls will be duplicated (or not at all) depends on the context.
If you don't have any application or package open, you will see both VCL and FMX controls on the toolbar (no duplicates). When you hover with the mouse over the component icon hint will tell you to which package control belongs.
If you have VCL based application or package open, you will have duplicate VCL standard controls. On the other hand if you have FMX based application or package open you will see duplicates from FMX standard controls package.
However, above behavior is not carved in stone. It is just what you can observe most of the time. Component toolbar behavior can be rather unpredictable at times.
Delphi XE-6 Firemonkey
I am trying to custom style the checkbox in a TGrid's TCheckColumn
I want to first understand how the default style is created. What all the elements are that make up its style.
Anyone know how to get the default style sheet for a default Firemonkey desktop application in Delphi XE-6?
If I drop a TGrid on a Firemonkey desktop application, and add a TCheckColumn to the grid, where is this default style of the grid, TCheckColumn / CheckCellStyle coming from?
I am trying to obtain its file (*.style), name. or the text.
If I add a TStyleBook, and then double click it and choose save, it only saves the StyleContainer, none of the styles for any control - especially the grid. Its just empty
object TStyleContainer
end
I have also tried to see if there was a default name in the StyleManager
for s in TStyleManager.StyleNames do
ShowMessage(S);
Anyone know how to get the default style sheet for a default firemonkey desktop application in Delphi XE-6?
Right click on the component (eg. Grid) and choose "Edit Style..." or "Edit Default Style" (can't remember which menu was in XE6). This will reveal the style elements of the component. Then you can save them to a .style file.
I am in the process of moving a number components I have written from XE2 to XE7. All these components have individual icons. The icons are contained in a .dcr file in each component project file along with the pascal source file(s), the source of the .bpl file references the .dcr file. All the component icons show correctly in the relevant XE2 component palette folder.
When I install one of these components into XE7, the component icon does not appear in the component palette. If I close XE7 and re-open it, the component ICON now appears in the component palette.
If I then install another of these components into XE7, once again the new component icon does not appear in the palette.
If I restart XE7, the new component icon will probably appear in the component palette, but the previous icon will now be missing (this behaviour varies from time to time).
So, as I install further components, some the components icons sometimes appear correctly, but most are missing.
The components work fine, it is just that the component icon is missing.
Any ideas why this may be happening?
Thanks in anticipation - Jim
2 things are my problem
1) a have a TMyframe=class(TFrame) defined in a package, but this frame is not listed in the frame palette.
So I registered my class from a designtime package using several methods none of which appeared to do what I want. (RegisterCOmponent, RegisterClass and RegisterCustomModule)
2) The biggest problem since Delphi does not 'know' my frame, it is handled as a regular component, and when using it inline, the (sub) objects defined in it appear in the form resource as 'object' rather than 'inherited' causing 'object blahblah already exists' when the form is created later on.
The same behaviour happens in the IDE's form designer.
When I move this frame unit from my runtime components package to the main module (my "kernel" bpl) then object/inherited problem is gone, and everything appears to work normally. Probably because knows how to resolve "TMyCustomFrame".
So... How can I define frames in one package and use them in forms (in other packages or exe) during designtime without delphi messing up my form resource.
Using XE5, Update1, VCL
(I will have come up with some simple example, meanwhile I already wanted the question out there)
TIA
From the documentation, it appears that this is not possible (emphasis added):
Adding frames to the Tool Palette
Frames are added to the Tool Palette as component templates. To add a frame to the Tool Palette, open the frame in the Form Designer (you cannot use a frame embedded in another component for this purpose), right-click the frame, and choose Add to Palette. When the Component Template Information dialog box opens, select a name, a palette page, and an icon for the new template.
It appears to be confirmed here:
Sharing Frames
You can share a frame with other developers in two ways:
Add the frame to the Object Repository.
Distribute the frame's unit (.pas) and form (.dfm or .fmx) files.
To add a frame to the Object Repository, open any project that includes the frame, right-click the Form Designer, and choose Add to Repository. For more information, see Using the Object Repository.
If you send a frame's unit and form files to other developers, they can open the files and add the frames and forms to the Tool Palette. If the frame has other frames embedded in it, it can only be opened as part of a project.