mirror of
https://github.com/microsoft/PowerToys.git
synced 2025-12-16 19:57:57 +01:00
[PowerRename] Fluent UX (#13678)
* PowerRename new UI * Add scrollviewer * Don't deploy PowerRenameUI_new * Visual updates * Visual updates * Updates * Update Resources.resw * Added docs button * Update MainWindow.xaml * Wire Docs button * RegEx -> regular expressions * Update Show only renamed list on search/replace text changed * Update Show only renamed list on search/replace text changed - proper fix Set searchTerm to NULL when cleared - fix Show only renamed files on clear searchTerm * Files/folders input error handling * Fix renaming with keeping UI window opened After renaming folder, all of it's children need path update. Without path update, further renaming of children items would fail. * Update only children, not all items with greater depth * Fix dictionary false positives * Remove .NET dep * Rename PowerRenameUI_new to PowerRenameUILib Rename executable PowerRenameUIHost to PowerRename Co-authored-by: Laute <Niels.Laute@philips.com>
This commit is contained in:
@@ -32,6 +32,19 @@ IFACEMETHODIMP CPowerRenameItem::QueryInterface(_In_ REFIID riid, _Outptr_ void*
|
||||
return QISearch(this, qit, riid, ppv);
|
||||
}
|
||||
|
||||
IFACEMETHODIMP CPowerRenameItem::PutPath(_In_opt_ PCWSTR newPath)
|
||||
{
|
||||
CSRWSharedAutoLock lock(&m_lock);
|
||||
CoTaskMemFree(m_path);
|
||||
m_path = nullptr;
|
||||
HRESULT hr = S_OK;
|
||||
if (newPath != nullptr)
|
||||
{
|
||||
hr = SHStrDup(newPath, &m_path);
|
||||
}
|
||||
return hr;
|
||||
}
|
||||
|
||||
IFACEMETHODIMP CPowerRenameItem::GetPath(_Outptr_ PWSTR* path)
|
||||
{
|
||||
*path = nullptr;
|
||||
@@ -47,7 +60,7 @@ IFACEMETHODIMP CPowerRenameItem::GetPath(_Outptr_ PWSTR* path)
|
||||
IFACEMETHODIMP CPowerRenameItem::GetTime(_Outptr_ SYSTEMTIME* time)
|
||||
{
|
||||
CSRWSharedAutoLock lock(&m_lock);
|
||||
HRESULT hr = E_FAIL ;
|
||||
HRESULT hr = E_FAIL;
|
||||
|
||||
if (m_isTimeParsed)
|
||||
{
|
||||
@@ -84,6 +97,19 @@ IFACEMETHODIMP CPowerRenameItem::GetShellItem(_Outptr_ IShellItem** ppsi)
|
||||
return SHCreateItemFromParsingName(m_path, nullptr, IID_PPV_ARGS(ppsi));
|
||||
}
|
||||
|
||||
IFACEMETHODIMP CPowerRenameItem::PutOriginalName(_In_opt_ PCWSTR originalName)
|
||||
{
|
||||
CSRWSharedAutoLock lock(&m_lock);
|
||||
CoTaskMemFree(m_originalName);
|
||||
m_originalName = nullptr;
|
||||
HRESULT hr = S_OK;
|
||||
if (originalName != nullptr)
|
||||
{
|
||||
hr = SHStrDup(originalName, &m_originalName);
|
||||
}
|
||||
return hr;
|
||||
}
|
||||
|
||||
IFACEMETHODIMP CPowerRenameItem::GetOriginalName(_Outptr_ PWSTR* originalName)
|
||||
{
|
||||
CSRWSharedAutoLock lock(&m_lock);
|
||||
@@ -223,11 +249,11 @@ HRESULT CPowerRenameItem::s_CreateInstance(_In_opt_ IShellItem* psi, _In_ REFIID
|
||||
{
|
||||
*resultInterface = nullptr;
|
||||
|
||||
CPowerRenameItem *newRenameItem = new CPowerRenameItem();
|
||||
CPowerRenameItem* newRenameItem = new CPowerRenameItem();
|
||||
HRESULT hr = E_OUTOFMEMORY;
|
||||
if (newRenameItem)
|
||||
{
|
||||
hr = S_OK ;
|
||||
hr = S_OK;
|
||||
if (psi != nullptr)
|
||||
{
|
||||
hr = newRenameItem->_Init(psi);
|
||||
|
||||
Reference in New Issue
Block a user