Print Page | Close Window

Codejock ToolkitPro and SuitePro v24.0.0

Printed From: Codejock Forums
Category: Codejock Products
Forum Name: Toolkit Pro
Forum Description: Topics Related to Codejock Toolkit Pro
URL: http://forum.codejock.com/forum_posts.asp?TID=24475
Printed Date: 21 December 2024 at 11:23am
Software Version: Web Wiz Forums 12.04 - http://www.webwizforums.com


Topic: Codejock ToolkitPro and SuitePro v24.0.0
Posted By: astoyan
Subject: Codejock ToolkitPro and SuitePro v24.0.0
Date Posted: 06 May 2024 at 7:51am
Codejock ToolkitPro and SuitePro v24.0.0 released!

 It's been a long-awaited update, and finally, it's here with a host of exciting new features and long-requested fixes! This release is particularly special as it introduces two outstanding features that the Codejock community has been anticipating for many years: complete SVG support and the new Gauge control! Alongside these two fantastic additions are numerous other enhancements and improvements.

Full SVG support


 Complete SVG support has finally been added to both Toolkit Pro and Suite Pro. Yes, that means our users can now enjoy scalable and easy-to-manage SVG icons in CommandBars, Ribbon, and other controls. Additionally, SVG images can be previewed in the Preview control, used in Markup, image managers, and loaded and drawn using a dedicated CXTPSvgImage class (Toolkit Pro only).

The new Gauge control


We're opening a new chapter in Codejock's history by introducing a framework for creating and using professional gauges to express complex measurements in simple, attractive, and highly customizable forms. Built entirely in Markup and JavaScript, the Gauge control allows for the creation and extension of multi-dimensional gauges where almost every visual element can be configured or animated to meet the most demanding business needs. The initial implementation allows for analogue meter gauges of up to five dimensions, a digital screen of up to five dimensions, and a state-reflecting gauge for an unlimited number of states. You can find the main FAQ article on it here:  http://https//codejock.com/support/articles/mfc/gauge/gc_intro.asp" rel="nofollow - Link to the FAQ

Windows 11 theme


Make your application look modern and consistent on all supported OS versions using the new Windows 11 theme, available in Light and Dark color schemes.

Title menu bar

A window’s menu can now be placed straight onto the title bar to have a more compact UI and thus leave more precious screen space for the workspace!

And More... 

 Many other smaller yet important additions and fixes are included:

  • Significant improvements to time-consuming data and image processing algorithms by enabling parallel computations driven by either PPL or OpenMP

  • Extended COM/OLE initialization for MFC apps

  • New WebView2 initialization properties for the WebBrowser control
    markup support for ComboBox

  • A large number of Markup fixes and improvements, especially those related to Markup stability, performance, and scripting

  • SVG primitives that replace dependency on Codejock.ttf

  • SkinFramework suspension for preventing skinning of selected modal windows

  • A new symbol reference generated by Doxygen

  • A number of reworked samples

  • … and much more.

We'd love to hear your feedback about this release, and we're grateful in advance for you sharing your thoughts with us.

Please refer to our release notes for this version on our website  http://codejock.com/products/releasenotes/release_notes.asp" rel="nofollow - https://codejock.com/products/releasenotes/release_notes.asp  




Replies:
Posted By: Fredrik
Date Posted: 10 May 2024 at 4:50am
Cool, thanks. 

1) I can't seem to be able to run any samples in 64 bit configuration though, it complains that the manifest is incorrect (I only build x64+Unicode).

I see that "...\Samples\Common\res\app.manifest" processorArchitecture is set to x86:

<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="x86" publicKeyToken="6595b64144ccf1df" language="*"></assemblyIdentity>

Changing processorArchitecture="x86" to processorArchitecture="*" seems to do the trick.


2) Regarding the Guage, I could not make the sample run, it crashes immediately at startup loading the gauge. It crashes on line 800 in XTGaugeBaseType: vtInput and vtShutdown is empty for me.


if (NULL != vtInput.pdispVal)
{
m_pDispInput = vtInput.pdispVal;
m_pDispInput->AddRef();
}

if (NULL != vtShutdown.pdispVal)
{
m_pDispShutdown = vtShutdown.pdispVal;
m_pDispShutdown->AddRef();
}

3) Found the link to gauge here - the one in the post was broken: 
https://codejock.com/support/articles/common/gauge/gc_intro.asp" rel="nofollow - Gauge Control (codejock.com)





-------------
Windows 10, Visual Studio 20157, Toolkit Pro 18.3.0


Posted By: DavidH
Date Posted: 10 May 2024 at 7:05am
XAML with MatrixTransform still doesn't work. Look here for a fix I applied on an earlier release:
https://forum.codejock.com/making-xaml-icons-with-matrixtransform-work_topic24367.html?KW=matrixtransform" rel="nofollow - https://forum.codejock.com/making-xaml-icons-with-matrixtransform-work_topic24367.html?KW=matrixtransform


Posted By: itsmg
Date Posted: 13 May 2024 at 3:50am
FlatEdit (Appearance = NativeWindows11) in Windows 11 environment still does not have the same theme as the TextBox native control




-------------
Product: Xtreme SuitePro (ActiveX) version 20.1.0 (unicode)

Platform: Windows 11 (64bit)

Language: Visual Basic 6.0


Posted By: Fredrik
Date Posted: 14 May 2024 at 1:56am
Another comment:

I have a grid control with markup enabled with custom group captions. Moving the mouse over the group caption now gives an assert, complaining that pElement is NULL. 


BOOL AFX_CDECL XTPMarkupRelayMessage(CXTPMarkupUIElement* pElement, UINT message, WPARAM wParam,
LPARAM lParam, LRESULT* pResult)
{
_ASSERTE(NULL != pElement);

I add items like this to avoid the text "Group :" being prepended to the group name:

const std::vector<std::wstring> strGroups = {L"Very Good", L"Good", L"Poor"};
...
AddItem(new CXTPGridRecordItemText(strGroups[0].c_str()))->SetGroupCaption(strGroups[0].c_str());

If I change the caption to "<TextBlock>Caption</TextBlock>" the assert goes away, but that causes my custom sorting to break (which of course can be fixed - but won't do anything until proper release), 

I then also have an exception thrown when shutting down my application in CXTPSkinManager::CbtFilterHook, where it calls pSkinManager->SetHook(hWnd, szClassName, lpcs, TRUE); This comes from the destructor of CXTPCommandBar where it calls XTPHookManager()->RemoveAll(this); Need to check more why this happens. 
 



-------------
Windows 10, Visual Studio 20157, Toolkit Pro 18.3.0


Posted By: matsjansson
Date Posted: 14 May 2024 at 8:16am
At the end it says:
"We'll be happy to hear all feedback from you about this release and we're grateful in advance for sharing your thoughts with us"

What is the best way to supply this feedback?
Eg I have been using a function/feature in 22.1 that does not exist anymore. The function is 
CXTPCalendarUtils::SetUseResourceFileLocale(TRUE);

And I have reported a bug earlier that is said to be fixed, but it is not in beta 1. 

So what way is the best to give feedback and ask questions like these?

Best regards 
Mats


Posted By: fleg
Date Posted: 14 May 2024 at 8:41am
Hi,
Are the sample application available somewhere for version 24 Beta (without need to build them)?
download section only provides for stable version 22.1 (which makes sens)
https://codejock.com/downloads/samples/" rel="nofollow - https://codejock.com/downloads/samples/
and account download only shows the installer and help, but no sample, as usual.


Posted By: Fredrik
Date Posted: 14 May 2024 at 5:35pm
Another thing:

Previously (in v22) I have been able to open context menu using 

CXTPCommandBars::TrackPopupMenu(&oMenu, TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, this);

This crashes in 24 beta 1 due to GetPaintManager returns nullptr in the call to CXTPPopupBar::UpdateLocation.


if (GetCommandBars()->GetPaintManager()->IsPopupRoundedCorners(pt))


Don't know whether my approach is correct way to display a context menu, but I have 50+ context menus that crashes with the 24 beta 1 version.

(I assume it's best/easiest to report findings here? I don't mind if this complete thread is deleted once the released version is out)

-------------
Windows 10, Visual Studio 20157, Toolkit Pro 18.3.0


Posted By: essess
Date Posted: 23 May 2024 at 9:01am
Originally posted by Fredrik Fredrik wrote:

Another thing:

Previously (in v22) I have been able to open context menu using 

CXTPCommandBars::TrackPopupMenu(&oMenu, TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, this);

This crashes in 24 beta 1 due to GetPaintManager returns nullptr in the call to CXTPPopupBar::UpdateLocation.


if (GetCommandBars()->GetPaintManager()->IsPopupRoundedCorners(pt))


Don't know whether my approach is correct way to display a context menu, but I have 50+ context menus that crashes with the 24 beta 1 version.

(I assume it's best/easiest to report findings here? I don't mind if this complete thread is deleted once the released version is out)
Similar issue here upgrading from 19.3.0 to 24.0 Beta 1

I get a crash with the exception:

Exception thrown: read access violation.
this was nullptr.

XTPCommandBars.cpp:
CXTPPaintManager* CXTPCommandBars::GetPaintManager() const
{
return (NULL != m_pPaintManager ? m_pPaintManager : XTPPaintManager());
}


Posted By: agontarenko
Date Posted: 24 May 2024 at 9:43am
Hello,

I'm glad to inform you that the issue has been addressed and fixed. The fix will be available in the next beta or final release.

As hotfi you can to chage line
if (GetCommandBars()->GetPaintManager()->IsPopupRoundedCorners(pt))
to
include "Common/XTPMacros.h"
..
if(XTP_SAFE_GET2(GetRootParent(), GetPaintManager(), IsPopupRoundedCorners(pt), NULL))
Regards,
Artem Gontarenko



Posted By: asparagusx
Date Posted: 25 May 2024 at 2:07am
Hallo

Having exactly the same issues as stated here. Downloaded the beta on 24/05/2024.

Anton


Posted By: rdmeyers
Date Posted: 04 June 2024 at 9:20am
It would be extremely helpful if the WebBrowser passed on the standard Mouse notifications, such as MouseDown, MouseUp, etc.  Relying on BeforeNavigate2 to intercept user interaction is unreliable at best.  Passing on the standard Keyboard notifications, such as KeyDown would also be beneficial.  And why does the control not expose the basic hWnd handle???  Y'all have given us nothing to use to build upon this otherwise wonderful control!


Posted By: rdmeyers
Date Posted: 04 June 2024 at 11:19am
I cannot get ExecuteScript to function at all.  Even your sample will not give the desired result.  What is the trick to using this method?  The Help file is not helpful as it has no information on this method.




Posted By: dbrookes
Date Posted: 05 June 2024 at 9:11pm
The window on the application side (in this case CXTPBrowserCtrl) is just a host parent window for the browser window. The actual browser window is managed by WebView2 itself, and that is managed out to a different process. Hence, your application process/thread won't see the usual mouse messages. And the HWND of the actual browser is not intended for use. I don't think WebView2 has mouse event handlers (but I may be wrong). If you want to deal with user interaction, I would expect it to be implemented on the page itself.

As for ExecuteScript. I believe the return value is a HRESULT indicating success of beginning execution of the script. You need to use the out parameter for get the return value of the script. Keep in mind that WebView2 is asynchronous. ExecuteScript will pump messages until the result is available.


Posted By: rdmeyers
Date Posted: 07 June 2024 at 11:29am
Thanks for answering, but I think the WebBrowser control just doesn't process JavaScript on Windows 7.  Something as simple as:

WebBrowser1.ExecuteScript ("alert('Hello from JavaScript!')")

or

WebBrowser1.ExecuteScript("document.getElementById('body').scrollTop = 0;")

produces nothing!  I placed both of these in the NavigateComplete2 sub, so the DOM should be ready at this point, correct?


Posted By: agontarenko
Date Posted: 20 June 2024 at 5:11am
Hello,

I've tested our Controls sample. first and second scripts works as expected. May be you input wrong values for getElementById.

https://www.w3schools.com/jsref/dom_obj_s.asp
m_wndWebBrowser.ExecuteScript(L"alert('Hello from JavaScript!')");
m_wndWebBrowser.ExecuteScript(L"document.getElementById('leftmenuinnerinner').scrollTop = 0;");







Regards,
Artem Gontarenko


Posted By: rdmeyers
Date Posted: 22 July 2024 at 11:51am
Artem,

Did you notice that my post specified that the scripts do not work in Windows 7?  This includes the Controls sample.

Rick



Posted By: asparagusx
Date Posted: 26 September 2024 at 4:41am
Any update as to when next Beta/Release expected?


Posted By: Pesci7
Date Posted: 26 September 2024 at 7:15am
A couple of days ago they updated the release notes page with the final version 24.0, but then they removed it.
I hope a new version is around the corner.

-------------
Product: Xtreme ToolkitPro (22.1.0)
Platform: Windows 11 (x64)
Language: Visual Studio 2022 (C++)


Posted By: rdhd
Date Posted: 30 September 2024 at 9:44am
How do I get a ribbon based application to show rounded windows in Windows11 when using the frame theme? For example run the Ribbon MDI sample and check the Options/Frame Theme. Note that two things occur. The rounded corners of the sample go away and we also lose the Windows 11 Snap UI that appears when one does a mouse over on the frame's maximize button.

I would like to remove the work-around I have in place which calls DwmSetWindowAttribute with JDMWCP_ROUND to get the rounded corners and remove the ribbon bar work-arounds I have so the Win11 Snap UI shows up.


Posted By: Hex
Date Posted: 17 October 2024 at 4:23am
Reset markup property of a markup control in VB6 with e.g. "Set markupcontrol.Background=nothing" or "Set markupcontrol.Child=nothing" raise an exception: Invalid procedure call or argument

VB6, Win10 64bit, Suite Pro v24.0.0


Posted By: agontarenko
Date Posted: 22 October 2024 at 12:19pm
Hello,

Unfortunately it is not clear what exactly is going wrong. Can you please provide more detailed information and steps to take,  screenshots or video can be useful as well. If it cannot be re-produced in any of our sample applications provided I would appreciate you sending a small code snippet or ideally a sample application so that we could debug it.

Regards,
Artem Gontarenko


Posted By: rdhd
Date Posted: 22 October 2024 at 4:04pm
Hi Artem. Not sure who you were directing the post to.


Posted By: Hex
Date Posted: 23 October 2024 at 1:00pm
Put a Markuplabel control on a form and run the next method

Private Sub MarkupControlTest()
    Dim tmpStackPanel As MarkupStackPanel
    
    Set tmpStackPanel = MarkupLabel1.MarkupContext.Parse("<StackPanel Background='Red'></StackPanel>")
    Set tmpStackPanel.Background = Nothing {This line raise the error}
        
End Sub


VB6, Win10




Posted By: agontarenko
Date Posted: 25 October 2024 at 4:09am
Hello,

In last version added additional checks of input parameters. 'Background' parameter can't to set Nothing.

Note: in XAML can't to set label back color as nothing ot null. You can to set predefined color only, red for example.
<Label Background="red" ....



Regards,
Artem Gontarenko


Posted By: Hex
Date Posted: 25 October 2024 at 4:35am

  "Set tmpStackPanel.Background = Nothing" line not set the color instead set the Brush (object). In this approach make sense setting the Background=nothing. Same with MarkupBorder's Child,Margin,BorderThickness property:
"Set Border.Child=nothing" or "Set Border.Margin=nothing" raise same error. This properties are objects. Why can't set to nothing?


Posted By: agontarenko
Date Posted: 28 October 2024 at 10:43am
Hello,

Because has been added check for NULL.
Create test C# XAML project, open XAML editor and try to set null to Label Background.

Regards,
Artem Gontarenko


Posted By: Hex
Date Posted: 28 October 2024 at 12:24pm
Hi!

In this case the Background is invalid of course: <Label Background='null'>Label text</Label>
In this case the Background is null/nothing in vb6: <Label>Label text</Label> No Background attribute!


In VB6 I've created a MarkupStackPanel element in this way:

Dim tmpStackPanel As MarkupStackPanel
Set tmpStackPanel = MarkupLabel1.MarkupContext.Parse("<StackPanel></StackPanel>")

In this case the tmpStackPanel.Background property is nothing, but can't set to nothing when it isn't?


Posted By: agontarenko
Date Posted: 29 October 2024 at 3:24am
Hello,

We discussed the problem with colleagues and concluded that we need to leave the ability to set the value to Nothing.
The fix will be available in the next revision.

Regards,
Artem Gontarenko


Posted By: Hex
Date Posted: 29 October 2024 at 4:44am
Thank you! I greatly appreciate your attitude!


Posted By: agontarenko
Date Posted: 06 November 2024 at 5:29am
Hello RDHD,

Codejock Ribbon Frame Theme is't suppont Snap UI.
If you disable frame theme - standart windows frame will be added with Snap UI.
See please RibbonSample.

Regards,
Artem Gontarenko




Posted By: rdhd
Date Posted: 06 November 2024 at 11:22am
Hi Artem,

I understand but we are using the frame theme. I kept my solution in place. Works just fine and doesn't involve too much code.



Print Page | Close Window

Forum Software by Web Wiz Forums® version 12.04 - http://www.webwizforums.com
Copyright ©2001-2021 Web Wiz Ltd. - https://www.webwiz.net