mirror of
https://github.com/vczh-libraries/Release.git
synced 2026-05-29 20:45:18 +08:00
Update release
This commit is contained in:
+19
-4
@@ -4327,7 +4327,7 @@ GuiWindow
|
||||
{
|
||||
WindowClosed.Detach(container->handler);
|
||||
container->handler = nullptr;
|
||||
GetNativeWindow()->SetParent(0);
|
||||
GetNativeWindow()->SetParent(nullptr);
|
||||
callback();
|
||||
owner->SetEnabled(true);
|
||||
owner->SetActivated();
|
||||
@@ -4507,11 +4507,23 @@ GuiPopup
|
||||
{
|
||||
auto window = GetNativeWindow();
|
||||
UpdateClientSizeAfterRendering(window->GetBounds().GetSize());
|
||||
|
||||
INativeWindow* controlWindow = nullptr;
|
||||
switch (popupType)
|
||||
{
|
||||
case 2: window->SetParent(popupInfo._2.controlWindow); break;
|
||||
case 3: window->SetParent(popupInfo._3.controlWindow); break;
|
||||
case 4: window->SetParent(popupInfo._4.controlWindow); break;
|
||||
case 2: controlWindow = popupInfo._2.controlWindow; break;
|
||||
case 3: controlWindow = popupInfo._3.controlWindow; break;
|
||||
case 4: controlWindow = popupInfo._4.controlWindow; break;
|
||||
}
|
||||
|
||||
if (controlWindow)
|
||||
{
|
||||
window->SetParent(controlWindow);
|
||||
window->SetTopMost(controlWindow->GetTopMost());
|
||||
}
|
||||
else
|
||||
{
|
||||
window->SetTopMost(false);
|
||||
}
|
||||
ShowDeactivated();
|
||||
}
|
||||
@@ -9848,10 +9860,13 @@ ItemProviderBase
|
||||
|
||||
void ItemProviderBase::InvokeOnItemModified(vint start, vint count, vint newCount)
|
||||
{
|
||||
CHECK_ERROR(!callingOnItemModified, L"ItemProviderBase::InvokeOnItemModified(vint, vint, vint)#Canning modify the observable data source during its item modified event, which will cause this event to be executed recursively.");
|
||||
callingOnItemModified = true;
|
||||
for (vint i = 0; i < callbacks.Count(); i++)
|
||||
{
|
||||
callbacks[i]->OnItemModified(start, count, newCount);
|
||||
}
|
||||
callingOnItemModified = false;
|
||||
}
|
||||
|
||||
ItemProviderBase::ItemProviderBase()
|
||||
|
||||
@@ -12476,6 +12476,7 @@ Predefined ItemProvider
|
||||
protected:
|
||||
collections::List<GuiListControl::IItemProviderCallback*> callbacks;
|
||||
vint editingCounter = 0;
|
||||
bool callingOnItemModified = false;
|
||||
|
||||
virtual void InvokeOnItemModified(vint start, vint count, vint newCount);
|
||||
public:
|
||||
|
||||
@@ -9259,7 +9259,6 @@ WindowsController
|
||||
Dictionary<HWND, WindowsForm*> windows;
|
||||
INativeWindow* mainWindow;
|
||||
HWND mainWindowHandle;
|
||||
vint handleMessageLevelCounter = 0;
|
||||
|
||||
WindowsCallbackService callbackService;
|
||||
WindowsResourceService resourceService;
|
||||
@@ -9304,7 +9303,6 @@ WindowsController
|
||||
bool HandleMessage(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT& result)
|
||||
{
|
||||
bool skipDefaultProcedure=false;
|
||||
handleMessageLevelCounter++;
|
||||
{
|
||||
vint index = windows.Keys().IndexOf(hwnd);
|
||||
if (index != -1)
|
||||
@@ -9346,11 +9344,6 @@ WindowsController
|
||||
PostQuitMessage(0);
|
||||
}
|
||||
}
|
||||
handleMessageLevelCounter--;
|
||||
if (handleMessageLevelCounter == 0)
|
||||
{
|
||||
asyncService.ExecuteAsyncTasks();
|
||||
}
|
||||
return skipDefaultProcedure;
|
||||
}
|
||||
|
||||
|
||||
@@ -5558,8 +5558,6 @@ CompareEnumerable
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
ator->Next();
|
||||
btor->Next();
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user