Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Show hidden file in folder workspace #366

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 44 additions & 1 deletion i18n/NotepadNext_sv_SE.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="sv_SE">
<context>
<name>CTitleBar</name>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="57"/>
<source>Minimize</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="65"/>
<source>Maximize</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="73"/>
<source>Floating</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="82"/>
<source>Close</source>
<translation type="unfinished">Stäng</translation>
</message>
</context>
<context>
<name>ColumnEditorDialog</name>
<message>
Expand Down Expand Up @@ -647,6 +670,26 @@
<source>Folder as Workspace</source>
<translation>Mapp som arbetsyta</translation>
</message>
<message>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="49"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="71"/>
<source>Filter</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="54"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="66"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="104"/>
<source>Don&apos;t show hidden files</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="56"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="63"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="106"/>
<source>show hidden files</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>HexViewerDock</name>
Expand Down Expand Up @@ -1744,7 +1787,7 @@
<translation>Ett fel uppstod när &lt;b&gt;%1&lt;/b&gt; skulle sparas.&lt;br&gt;&lt;br&gt;Fel: %2</translation>
</message>
<message>
<location filename="../src/NotepadNext/dialogs/MainWindow.cpp" line="1707"/>
<location filename="../src/NotepadNext/dialogs/MainWindow.cpp" line="1711"/>
<source>No updates are available at this time.</source>
<translation>Inga uppdateringar tillgängliga den här gången.</translation>
</message>
Expand Down
45 changes: 44 additions & 1 deletion i18n/NotepadNext_tr_TR.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="tr_TR">
<context>
<name>CTitleBar</name>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="57"/>
<source>Minimize</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="65"/>
<source>Maximize</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="73"/>
<source>Floating</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="82"/>
<source>Close</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>ColumnEditorDialog</name>
<message>
Expand Down Expand Up @@ -609,6 +632,26 @@
<source>Folder as Workspace</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="49"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="71"/>
<source>Filter</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="54"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="66"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="104"/>
<source>Don&apos;t show hidden files</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="56"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="63"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="106"/>
<source>show hidden files</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>HexViewerDock</name>
Expand Down Expand Up @@ -1690,7 +1733,7 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/dialogs/MainWindow.cpp" line="1707"/>
<location filename="../src/NotepadNext/dialogs/MainWindow.cpp" line="1711"/>
<source>No updates are available at this time.</source>
<translation type="unfinished"></translation>
</message>
Expand Down
45 changes: 44 additions & 1 deletion i18n/NotepadNext_uk_UA.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="uk_UA">
<context>
<name>CTitleBar</name>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="57"/>
<source>Minimize</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="65"/>
<source>Maximize</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="73"/>
<source>Floating</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="82"/>
<source>Close</source>
<translation type="unfinished">Закрити</translation>
</message>
</context>
<context>
<name>ColumnEditorDialog</name>
<message>
Expand Down Expand Up @@ -621,6 +644,26 @@
<source>Folder as Workspace</source>
<translation>Каталог як робочий простір</translation>
</message>
<message>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="49"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="71"/>
<source>Filter</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="54"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="66"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="104"/>
<source>Don&apos;t show hidden files</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="56"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="63"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="106"/>
<source>show hidden files</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>HexViewerDock</name>
Expand Down Expand Up @@ -1702,7 +1745,7 @@
<translation>Під час збереження виникла помилка&lt;b&gt;%1&lt;/b&gt;&lt;br&gt;&lt;br&gt;Помилка: %2</translation>
</message>
<message>
<location filename="../src/NotepadNext/dialogs/MainWindow.cpp" line="1707"/>
<location filename="../src/NotepadNext/dialogs/MainWindow.cpp" line="1711"/>
<source>No updates are available at this time.</source>
<translation>На даний момент не має ніяких оновлень.</translation>
</message>
Expand Down
45 changes: 44 additions & 1 deletion i18n/NotepadNext_zh_CN.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="zh_CN">
<context>
<name>CTitleBar</name>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="57"/>
<source>Minimize</source>
<translation>最小化</translation>
</message>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="65"/>
<source>Maximize</source>
<translation>最大化</translation>
</message>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="73"/>
<source>Floating</source>
<translation>浮动</translation>
</message>
<message>
<location filename="../src/NotepadNext/widgets/TitleBar.cpp" line="82"/>
<source>Close</source>
<translation>关闭</translation>
</message>
</context>
<context>
<name>ColumnEditorDialog</name>
<message>
Expand Down Expand Up @@ -632,6 +655,26 @@
<translatorcomment>窗口标题</translatorcomment>
<translation>文件夹工作区</translation>
</message>
<message>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="49"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="71"/>
<source>Filter</source>
<translation>过滤器</translation>
</message>
<message>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="54"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="66"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="104"/>
<source>Don&apos;t show hidden files</source>
<translation>不显示隐藏文件</translation>
</message>
<message>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="56"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="63"/>
<location filename="../src/NotepadNext/docks/FolderAsWorkspaceDock.cpp" line="106"/>
<source>show hidden files</source>
<translation>显示隐藏文件</translation>
</message>
</context>
<context>
<name>HexViewerDock</name>
Expand Down Expand Up @@ -1725,7 +1768,7 @@
<translation>保存 &lt;b&gt;%1&lt;/b&gt; 时发生了错误&lt;br&gt;&lt;br&gt;错误:%2</translation>
</message>
<message>
<location filename="../src/NotepadNext/dialogs/MainWindow.cpp" line="1707"/>
<location filename="../src/NotepadNext/dialogs/MainWindow.cpp" line="1711"/>
<source>No updates are available at this time.</source>
<translation>本次无可用更新。</translation>
</message>
Expand Down
6 changes: 4 additions & 2 deletions src/NotepadNext/NotepadNext.pro
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,8 @@ SOURCES += \
decorators/LineNumbers.cpp \
decorators/SmartHighlighter.cpp \
widgets/EditorInfoStatusBar.cpp \
widgets/StatusLabel.cpp
widgets/StatusLabel.cpp \
widgets/TitleBar.cpp

HEADERS += \
ColorPickerDelegate.h \
Expand Down Expand Up @@ -212,7 +213,8 @@ HEADERS += \
decorators/SmartHighlighter.h \
docks/SearchResultsDock.h \
widgets/EditorInfoStatusBar.h \
widgets/StatusLabel.h
widgets/StatusLabel.h \
widgets/TitleBar.h

FORMS += \
QuickFindWidget.ui \
Expand Down
4 changes: 4 additions & 0 deletions src/NotepadNext/dialogs/MainWindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1559,6 +1559,8 @@ void MainWindow::saveSettings() const

FolderAsWorkspaceDock *fawDock = findChild<FolderAsWorkspaceDock *>();
settings.setValue("FolderAsWorkspace/RootPath", fawDock->rootPath());
int flitersFlag = fawDock->filter();
settings.setValue("FolderAsWorkspace/Filters", flitersFlag);
}

void MainWindow::restoreSettings()
Expand Down Expand Up @@ -1604,6 +1606,8 @@ void MainWindow::restoreWindowState()
// Restore the path if it has one
FolderAsWorkspaceDock *fawDock = findChild<FolderAsWorkspaceDock *>();
fawDock->setRootPath(settings.value("FolderAsWorkspace/RootPath").toString());
int filter = settings.value("FolderAsWorkspace/Filters").toInt();
fawDock->setFilter(QDir::Filters(filter));

// Always hide the dock no matter how the application was closed
SearchResultsDock *srDock = findChild<SearchResultsDock *>();
Expand Down
59 changes: 58 additions & 1 deletion src/NotepadNext/docks/FolderAsWorkspaceDock.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,16 @@

#include "FolderAsWorkspaceDock.h"
#include "ui_FolderAsWorkspaceDock.h"
#include "TitleBar.h"

#include <QFileSystemModel>
#include <QMenu>

FolderAsWorkspaceDock::FolderAsWorkspaceDock(QWidget *parent) :
QDockWidget(parent),
ui(new Ui::FolderAsWorkspaceDock),
model(new QFileSystemModel(this))
model(new QFileSystemModel(this)),
m_pHideFile(nullptr)
{
ui->setupUi(this);

Expand All @@ -39,6 +42,39 @@ FolderAsWorkspaceDock::FolderAsWorkspaceDock(QWidget *parent) :
emit fileDoubleClicked(model->filePath(index));
}
});

CTitleBar* pDockTitleBar = new CTitleBar(this);
if(pDockTitleBar) {
setTitleBarWidget(pDockTitleBar);
QMenu* pMenu = new QMenu(tr("Filter"), pDockTitleBar);
QString szTitle;
QDir::Filters f = model->filter();
if(QDir::Hidden & f)
{
szTitle = tr("Don't show hidden files");
} else {
szTitle = tr("show hidden files");
}
m_pHideFile = pMenu->addAction(szTitle, this, [&](){
if(!(m_pHideFile && model)) return;
QDir::Filters f = model->filter();
if(QDir::Hidden & f)
{
m_pHideFile->setText(tr("show hidden files"));
model->setFilter(f & (~QDir::Hidden));
} else {
m_pHideFile->setText(tr("Don't show hidden files"));
model->setFilter(f | QDir::Hidden);
}
});
QPushButton* pFilter = pDockTitleBar->CreateSmallPushButton(QIcon(":/icons/filter.svg"), pDockTitleBar);
pFilter->setToolTip(tr("Filter"));
pFilter->setMenu(pMenu);
QList<QWidget*> lstWidget;
lstWidget << pFilter;
pDockTitleBar->SetWidgets(lstWidget);
}

}

FolderAsWorkspaceDock::~FolderAsWorkspaceDock()
Expand All @@ -56,3 +92,24 @@ QString FolderAsWorkspaceDock::rootPath() const
{
return model->rootPath();
}

void FolderAsWorkspaceDock::setFilter(const QDir::Filters filter)
{
if(!model) return;

model->setFilter(filter);

if(m_pHideFile) {
if(QDir::Hidden & filter)
m_pHideFile->setText(tr("Don't show hidden files"));
else
m_pHideFile->setText(tr("show hidden files"));
}
}

QDir::Filters FolderAsWorkspaceDock::filter() const
{
if(model)
return model->filter();
return QDir::AllEntries;
}
Loading