diff --git a/Import/GacUI.cpp b/Import/GacUI.cpp index d3dadbcf..46fe83cb 100644 --- a/Import/GacUI.cpp +++ b/Import/GacUI.cpp @@ -2590,8 +2590,8 @@ GuiDatePicker , nestedAlt(_nestedAlt) { commandExecutor = new CommandExecutor(this); - SetDateLocale(Locale::UserDefault()); SetDate(DateTime::LocalTime()); + SetDateLocale(Locale::UserDefault()); SetAltComposition(boundsComposition); SetAltControl(this, false); @@ -3616,7 +3616,7 @@ GuiControlHost GuiControl* GuiControlHost::GetTooltipOwner(Point location) { - GuiGraphicsComposition* composition=this->GetBoundsComposition()->FindComposition(location, false); + GuiGraphicsComposition* composition=this->GetBoundsComposition()->FindComposition(location, true); if(composition) { GuiControl* control=composition->GetRelatedControl(); @@ -7277,10 +7277,12 @@ DefaultDataGridItemTemplate SelectedChanged.AttachMethod(this, &DefaultDataGridItemTemplate::OnSelectedChanged); FontChanged.AttachMethod(this, &DefaultDataGridItemTemplate::OnFontChanged); ContextChanged.AttachMethod(this, &DefaultDataGridItemTemplate::OnContextChanged); + VisuallyEnabledChanged.AttachMethod(this, &DefaultDataGridItemTemplate::OnVisuallyEnabledChanged); SelectedChanged.Execute(compositions::GuiEventArgs(this)); FontChanged.Execute(compositions::GuiEventArgs(this)); ContextChanged.Execute(compositions::GuiEventArgs(this)); + VisuallyEnabledChanged.Execute(compositions::GuiEventArgs(this)); } void DefaultDataGridItemTemplate::OnSelectedChanged(compositions::GuiGraphicsComposition* sender, compositions::GuiEventArgs& arguments) @@ -7315,6 +7317,18 @@ DefaultDataGridItemTemplate } } + void DefaultDataGridItemTemplate::OnVisuallyEnabledChanged(compositions::GuiGraphicsComposition* sender, compositions::GuiEventArgs& arguments) + { + FOREACH(Ptr, visualizer, dataVisualizers) + { + visualizer->GetTemplate()->SetVisuallyEnabled(GetVisuallyEnabled()); + } + if (currentEditor) + { + currentEditor->GetTemplate()->SetVisuallyEnabled(GetVisuallyEnabled()); + } + } + DefaultDataGridItemTemplate::DefaultDataGridItemTemplate() { } @@ -31787,7 +31801,7 @@ GuiGraphicsHost NativeRect clientBounds = hostRecord.nativeWindow->GetClientBoundsInScreen(); NativePoint clientLocation(location.x + bounds.x1 - clientBounds.x1, location.y + bounds.y1 - clientBounds.y1); auto point = hostRecord.nativeWindow->Convert(clientLocation); - GuiGraphicsComposition* hitComposition = windowComposition->FindComposition(point, false); + GuiGraphicsComposition* hitComposition = windowComposition->FindComposition(point, true); while (hitComposition) { INativeWindowListener::HitTestResult result = hitComposition->GetAssociatedHitTestResult(); diff --git a/Import/GacUI.h b/Import/GacUI.h index d0384e4d..cf9f5798 100644 --- a/Import/GacUI.h +++ b/Import/GacUI.h @@ -2186,6 +2186,8 @@ Native Window /// /// Require mouse message capturing to this window. If the capture is required, all mouse message will be send to this window. + /// When the window becomes invisible after calling this function, the window will still receive mouse messages, if the OS supports this feature. + /// Otherwise, the capturing must be released when the window becomes invisible. /// /// Returns true if this operation succeeded. virtual bool RequireCapture()=0; @@ -17669,6 +17671,7 @@ DefaultDataGridItemTemplate void OnSelectedChanged(compositions::GuiGraphicsComposition* sender, compositions::GuiEventArgs& arguments); void OnFontChanged(compositions::GuiGraphicsComposition* sender, compositions::GuiEventArgs& arguments); void OnContextChanged(compositions::GuiGraphicsComposition* sender, compositions::GuiEventArgs& arguments); + void OnVisuallyEnabledChanged(compositions::GuiGraphicsComposition* sender, compositions::GuiEventArgs& arguments); public: DefaultDataGridItemTemplate(); ~DefaultDataGridItemTemplate();