Kaydet (Commit) c1816fea authored tarafından Caolán McNamara's avatar Caolán McNamara

Resolves: tdf#125394 consider unwelded dialogs

Change-Id: Ic66a622bb8b5481656ffe8e29a345a435042402e
Reviewed-on: https://gerrit.libreoffice.org/72625
Tested-by: Jenkins
Reviewed-by: 's avatarCaolán McNamara <caolanm@redhat.com>
Tested-by: 's avatarCaolán McNamara <caolanm@redhat.com>
üst c278c1cf
......@@ -1445,25 +1445,28 @@ vcl::Window* Dialog::get_widget_for_response(int response)
//copy explicit responses
std::map<VclPtr<vcl::Window>, short> aResponses(mpDialogImpl->maResponses);
//add implicit responses
for (vcl::Window* pChild = mpActionArea->GetWindow(GetWindowType::FirstChild); pChild;
pChild = pChild->GetWindow(GetWindowType::Next))
if (mpActionArea)
{
if (aResponses.find(pChild) != aResponses.end())
continue;
switch (pChild->GetType())
//add implicit responses
for (vcl::Window* pChild = mpActionArea->GetWindow(GetWindowType::FirstChild); pChild;
pChild = pChild->GetWindow(GetWindowType::Next))
{
case WindowType::OKBUTTON:
aResponses[pChild] = RET_OK;
break;
case WindowType::CANCELBUTTON:
aResponses[pChild] = RET_CANCEL;
break;
case WindowType::HELPBUTTON:
aResponses[pChild] = RET_HELP;
break;
default:
break;
if (aResponses.find(pChild) != aResponses.end())
continue;
switch (pChild->GetType())
{
case WindowType::OKBUTTON:
aResponses[pChild] = RET_OK;
break;
case WindowType::CANCELBUTTON:
aResponses[pChild] = RET_CANCEL;
break;
case WindowType::HELPBUTTON:
aResponses[pChild] = RET_HELP;
break;
default:
break;
}
}
}
......@@ -1481,25 +1484,28 @@ int Dialog::get_default_response()
//copy explicit responses
std::map<VclPtr<vcl::Window>, short> aResponses(mpDialogImpl->maResponses);
//add implicit responses
for (vcl::Window* pChild = mpActionArea->GetWindow(GetWindowType::FirstChild); pChild;
pChild = pChild->GetWindow(GetWindowType::Next))
if (mpActionArea)
{
if (aResponses.find(pChild) != aResponses.end())
continue;
switch (pChild->GetType())
//add implicit responses
for (vcl::Window* pChild = mpActionArea->GetWindow(GetWindowType::FirstChild); pChild;
pChild = pChild->GetWindow(GetWindowType::Next))
{
case WindowType::OKBUTTON:
aResponses[pChild] = RET_OK;
break;
case WindowType::CANCELBUTTON:
aResponses[pChild] = RET_CANCEL;
break;
case WindowType::HELPBUTTON:
aResponses[pChild] = RET_HELP;
break;
default:
break;
if (aResponses.find(pChild) != aResponses.end())
continue;
switch (pChild->GetType())
{
case WindowType::OKBUTTON:
aResponses[pChild] = RET_OK;
break;
case WindowType::CANCELBUTTON:
aResponses[pChild] = RET_CANCEL;
break;
case WindowType::HELPBUTTON:
aResponses[pChild] = RET_HELP;
break;
default:
break;
}
}
}
......@@ -1518,25 +1524,28 @@ void Dialog::set_default_response(int response)
//copy explicit responses
std::map<VclPtr<vcl::Window>, short> aResponses(mpDialogImpl->maResponses);
//add implicit responses
for (vcl::Window* pChild = mpActionArea->GetWindow(GetWindowType::FirstChild); pChild;
pChild = pChild->GetWindow(GetWindowType::Next))
if (mpActionArea)
{
if (aResponses.find(pChild) != aResponses.end())
continue;
switch (pChild->GetType())
//add implicit responses
for (vcl::Window* pChild = mpActionArea->GetWindow(GetWindowType::FirstChild); pChild;
pChild = pChild->GetWindow(GetWindowType::Next))
{
case WindowType::OKBUTTON:
aResponses[pChild] = RET_OK;
break;
case WindowType::CANCELBUTTON:
aResponses[pChild] = RET_CANCEL;
break;
case WindowType::HELPBUTTON:
aResponses[pChild] = RET_HELP;
break;
default:
break;
if (aResponses.find(pChild) != aResponses.end())
continue;
switch (pChild->GetType())
{
case WindowType::OKBUTTON:
aResponses[pChild] = RET_OK;
break;
case WindowType::CANCELBUTTON:
aResponses[pChild] = RET_CANCEL;
break;
case WindowType::HELPBUTTON:
aResponses[pChild] = RET_HELP;
break;
default:
break;
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment