X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6bcfd974ef26faf6f91a62cac09827e09463fd1..9d8c2f419f522408a922277df330d4c4511befb9:/utils/dialoged/src/reseditr.cpp?ds=sidebyside diff --git a/utils/dialoged/src/reseditr.cpp b/utils/dialoged/src/reseditr.cpp index 5f1b105bbb..40f72abe10 100644 --- a/utils/dialoged/src/reseditr.cpp +++ b/utils/dialoged/src/reseditr.cpp @@ -165,6 +165,8 @@ bool wxResourceManager::Initialize() #endif m_popupMenu = new wxMenu; + m_popupMenu->Append(OBJECT_MENU_TITLE, "WIDGET TYPE"); + m_popupMenu->AppendSeparator(); m_popupMenu->Append(OBJECT_MENU_EDIT, "Edit properties"); m_popupMenu->Append(OBJECT_MENU_DELETE, "Delete object"); @@ -2402,8 +2404,13 @@ void ObjectMenuProc(wxMenu *menu, wxCommandEvent& event) if (!data) return; - switch (event.GetInt()) + switch (event.GetId()) { + case OBJECT_MENU_TITLE: + { + event.Skip(); + break; + } case OBJECT_MENU_EDIT: { wxResourceManager::GetCurrentResourceManager()->EditWindow(data); @@ -2411,8 +2418,20 @@ void ObjectMenuProc(wxMenu *menu, wxCommandEvent& event) } case OBJECT_MENU_DELETE: { + // Before deleting a dialog, give the user a last chance + // change their mind, in case they accidentally right + // clicked the dialog rather than the widget they were + // aiming for. + if (data->IsKindOf(CLASSINFO(wxPanel))) + { + wxString str(wxT("Deleting dialog : ")); + str += data->GetName(); + if (wxMessageBox(wxT("Are you sure?"), str, wxYES_NO | wxCENTRE) == wxNO) + return; + } + wxResourceManager::GetCurrentResourceManager()->DeselectItemIfNecessary(data); - + wxResourceManager::GetCurrentResourceManager()->SaveInfoAndDeleteHandler(data); wxResourceManager::GetCurrentResourceManager()->DeleteResource(data); wxResourceManager::GetCurrentResourceManager()->DeleteWindow(data);