Forum Replies Created
-
AuthorPosts
-
HamiltonParticipant
Hi,
Fast reports are supported. I haven't used them myself but other people are.
This thread describes how to add support for them. I believe the issue described in this thread was fixed.
Another issue, also solved I believe but demonstrating fairly in depth support of fast reports:
There are several other threads in Russian about Fast Reports if you speak that language (use the advanced search to find them, the default one doesn't pick them up).
I'd suggest either install the trial, add a skin provider and skin manager to your project (or alternatively add a fast report to the demo if you aren't familiar yet with adding AC to a project), follow the instructions in the first thread I linked to add support for Fast Reports, and see for yourself. Best of luck 🙂
Regards,
Hamilton
HamiltonParticipantHi Serge,
This remains the one standard VCL control I use regularly that is not skinned; if you're looking for something to do in your spare time this would be a good project!
I won't bump this thread again.. just couldn't resist doing it once, hope you don't mind too much.
Regards,
Hamilton
HamiltonParticipantIt appears the attachment is a 7-zip (7z) file rather than a zip but has the wrong extension. If you google 7-zip you'll find the free program that will allow you to extract the project.
HamiltonParticipantFixed in v7.62.
* Fixed error in the TsPageControl when captions are not visible without skins
HamiltonParticipantHi Kurt,
I tried to repro this and cannot. I put two buttons on a new form, made sButton1 quite large and sButton2 has the OnClick even which says sButton1.Enabled := not sButton1.Enabled. For me, the caption stays in the centre and the disabled button looks as I'd expect. In my testing the only way I could get the button caption to move was to make it a CommandLink. Anyway I've attached a screen grab that shows how the disabled button appears in my test app. I wonder if you get the same results with a simple test app; if you can then perhaps you can break your program down into smaller chunks to identify what is failing. Good luck.
Regards,
Hamilton
HamiltonParticipantHi Serge,
I fixed this in my main projects by reloading all of the skins so this issue is no longer a showstopper for me.
The bug does still exist however. I could send you a demo app but I believe you should be able to repro this just by:
1. Create a new VCL forms app
2. Put a TsPageControl down
3. Add a tab to the page and notice that the caption does not display in the IDE or at runtime.
I've attached a screen shot that shows this. Do you get the same result?
After further testing I can add a step 4 above:
4. Add a SkinManager and SkinProvider to the project and the captions appear
In my existing projects the tab captions did appear at runtime but did not appear at design time until I reloaded the skins. For my sample app the captions did not appear at either design time or runtime until I added a skin.
PS I'm not using TnT but I am using DevExp v6.
Regards,
Hamilton
HamiltonParticipantBump for a reply..
HamiltonParticipantHi Serge, I can confirm that the version that shipped with 7.58 corrects the check state drawn. Cheers.
HamiltonParticipantHi Serge,
I've re-downloaded the skin from the link in your earlier post in this thread and the problem still occurs.
Regards,
Hamilton
HamiltonParticipantPerhaps the link is wrong? I re-downloaded the file, deleted the old skin from my program and readded it (copy/pasting the path to ensure it is correct) and then ran it – same results. The other confirmation that I've loaded the new skin is that the case on the name has changed (previously DeepPurple, now deeppurple on this new one).
HamiltonParticipantSorry to say, the problem still occurs.
HamiltonParticipantThe problem with the reimport messing up the indexes still occurs, any chance of a fix pls? The messed up indexing doesn't occur all the time but its often enough to negate the usefulness of this handy feature.
If you cannot repro, one thing you might try is to rename one of the skins and then try again. I don't know when this first occurred but at some point DeepPurple became deeppurple and I've had to rename that skin in the skin manager for compatibility with the rest of the program (as unfortunately the skin name appears to be case sensitive). So what might have happened this last time is that it failed to load DeepPurple because the file was called deeppurple and then that in turn may have messed up other skins also? Just guessing..
HamiltonParticipantFor your second question, I've also asked for this control to be supported and been told it may be in future. In the meantime you can manually skin the control, there is some code for how I'm doing this in the forum thread here.
HamiltonParticipantUse one of the following:
Code:sPageControl1.Pages[1].TabVisible := False;
sTabSheet2.TabVisible := False;Regards,
Hamilton
HamiltonParticipantNot that I'm aware, though Serge would give you the definite answer. In my experience, Delphi toolbars are really lacking in important features and if you want to have anything other than a standard left aligned toolbar then you're better off doing something custom – for instance, in almost all my apps I use TsBitBtns on a TsPanel, that way I have full control over the buttons. The only caveat I'd add to that is that for my apps I make sure that TsBitBtns use the TOOLBUTTON skin section (SkinData.SkinSection := 'TOOLBUTTON';). Best of luck.
Regards,
Hamilton
HamiltonParticipantHey how are you converting the controls? I've updated several apps to AC and haven't had any problems like you describe. I don't know if there is a better way but this is how I'd do it:
1. Add a TsCheckbox, TsComboBox, TsEdit and any common controls you'll want to use to one form and save it so it builds the include list.
2. View the form DFM as text and replace TEdit with TsEdit in the DFM (to view the form as text just show the form normally then press Alt-F12).
3. Press Alt-F12 to switch back to the form then F12 to view the code.
4. Replace TEdit with TsEdit in the code.
5. Repeat steps 2 to 4 with each control you're updating (eg Replace TCheckBox with TsCheckBox next, then TsComboBox, etc).
6. Copy the “uses” from this updated form onto the next form you're going to work on, then repeat steps 2 to 5.
The important things here are:
1. Make sure you're including the AC units (ie by putting them in the “uses” section) for the controls you want BEFORE changing the controls over.
2. Update the DFM BEFORE you update the code. If you change the control in code first then Delphi will raise and error about a type mismatch and won't update control like you might expect (if you're not careful it will remove it).
3. Update one type of control at a time until you're comfortable with the process and certain that you're not losing data. If you're certain that all of your forms have the same controls then you could update the uses clause in all of them (maybe with a bulk search/replace) and then do a bulk search/replace to update the control types. If you don't know what I mean by this then continue to update the controls one at a time.
4. Compile after updating each form and save each form after you've finished editing it.
Good luck.
HamiltonParticipantThe updated code has been released in v7.54; it looks good so I'll close this issue.
HamiltonParticipantThat fixes it thank you, hope to see this updated skin in 7.55 🙂
HamiltonParticipantI *think* you're saying that you had a tray icon control but when you used it to show your application the skin was not displayed properly? If that is the case you might be able to fix it by trying the following one step at a time until the problem goes away:
1. Add a TsSkinProvider to your app main form if you haven't already.
2. Comment out everything in your form Create/Destroy/Show/Close/Activate/Deactivate events and see if the problem persists.
3. Change the events on the TrayIcon control to Hide/Show your form rather than performing some animation event.
4. In your FormShow event, reinitialize the skin manager. Try just setting the skin eg SkinManager.Skin := 'WEB (internal)'.
5. Download the Jedi VCL library and use their tray icon.
Good luck.
HamiltonParticipantHi Serge that is fantastic! The “Update All” action replaces 10 skins so fast there is hardly even a flicker, it's 1000 times faster than I can do it and it completely removes the human error element.
Having said that, I did find that 3 of the 11 skins in one app were updated with the wrong skin. For example, a skin called DeepPurple (internal) loaded WMP. I manually deleted/re-added the skins that had problems and from then on everything worked perfectly, including multiple repeats of using 'update all'. I didn't notice that anything had changed about the skins with the reimport (they definitely had the same name and other properties that are visible in the skin manager) so I think it may have been an indexing issue. I haven't tested this fully but I think what happened is that the skin called DeepPurple loaded WMP, WMP loaded Golden, Golden loaded DeepPurple. I can get the old SkinManager that exhibited this behaviour out of the repository if you need something to test this with.
TLDR: If anyone finds that “Update All” loads the wrong skin then they can probably solve it by reimporting the skin manually once, from then on it should work.
Regards,
Hamilton
-
AuthorPosts