diff --git a/RedPandaIDE/RedPandaIDE_zh_CN.qm b/RedPandaIDE/RedPandaIDE_zh_CN.qm
index 9ee9e1eb..5b2e2ddc 100644
Binary files a/RedPandaIDE/RedPandaIDE_zh_CN.qm and b/RedPandaIDE/RedPandaIDE_zh_CN.qm differ
diff --git a/RedPandaIDE/RedPandaIDE_zh_CN.ts b/RedPandaIDE/RedPandaIDE_zh_CN.ts
index 9dd29a42..f9344658 100644
--- a/RedPandaIDE/RedPandaIDE_zh_CN.ts
+++ b/RedPandaIDE/RedPandaIDE_zh_CN.ts
@@ -532,61 +532,61 @@ Are you really want to continue?
失败
-
-
-
-
-
-
-
+
+
+
+
+
+
+
错误
-
+
无法写入文件"%1"
-
+
另存为
-
+
要复制的内容超过了行数限制!
-
+
要复制的内容超过了字符数限制!
-
+
要剪切的内容超过了行数限制!
-
+
要剪切的内容超过了字符数限制!
-
-
-
+
+
+
Ctrl+单击以获取更多信息
-
-
+
+
未找到符号'%1'!
-
+
只读
@@ -1908,7 +1908,7 @@ Are you really want to continue?
-
+
编译器
@@ -1923,18 +1923,18 @@ Are you really want to continue?
文件
-
+
工具
-
-
+
+
运行
-
+
编辑
@@ -1965,8 +1965,8 @@ Are you really want to continue?
-
-
+
+
调试
@@ -1997,7 +1997,7 @@ Are you really want to continue?
-
+
查找
@@ -2023,418 +2023,465 @@ Are you really want to continue?
+
关闭
-
+
执行
-
+
代码
-
-
+
+ 窗口
+
+
+
+
+
+
工具栏
-
+
工具栏2
-
+
新建
-
+
Ctrl+N
-
+
打开...
-
+
Ctrl+O
-
+
保存
-
+
Ctrl+S
-
+
另存为...
-
+
另存为
-
+
全部保存
-
+
Ctrl+Shift+S
-
+
选项
-
-
-
-
-
-
+
+
+
+
+
+
编译
-
+
F9
-
+
F10
-
+
恢复
-
+
Ctrl+Z
-
+
重做
-
+
Ctrl+Y
-
+
剪切
-
+
Ctrl+X
-
+
复制
-
+
Ctrl+C
-
+
粘贴
-
+
Ctrl+V
-
+
选择全部
-
+
Ctrl+A
-
+
缩进
-
+
取消缩进
-
+
切换注释
-
+
Ctrl+/
-
+
全部收起
-
+
全部展开
-
+
使用ANSI编码
-
+
使用UTF-8编码
-
+
自动检测
-
+
转换为ANSI编码
-
+
转换为UTF-8编码
-
-
+
+
编译运行
-
+
F11
-
-
+
+
全部重编译
-
+
F12
-
+
停止执行
-
+
F6
-
+
F5
-
+
单步跳过
-
+
F7
-
+
单步进入
-
+
F8
-
+
单步跳出
-
+
Ctrl+F8
-
+
执行到光标处
-
+
Ctrl+F5
-
+
继续执行
-
+
F4
-
+
添加监视
-
+
打开CPU信息窗口...
-
+
退出
-
+
查找...
-
+
Ctrl+F
-
+
在文件中查找...
-
+
Ctrl+Shift+F
-
+
替换
-
+
Ctrl+R
-
+
查找下一个
-
+
F3
-
+
查找前一个
-
+
Shift+F3
-
+
删除监视
-
+
清除全部监视
-
+
修改监视值
-
+
对代码重新排版
-
+
+
+ Ctrl+Shift+A
+
+
+
+
+ 前一次编辑位置
+
+
+
+
+ Ctrl+Alt+Left
+
+
+
+
+ 后一次编辑位置
+
+
+
+
+ Ctrl+Alt+Right
+
+
+
+
+ Ctrl+W
+
+
+
+
+ 全部关闭
+
+
+
+
+ Ctrl+Shift+W
+
+
+
文件编码
-
+
文件历史
-
-
+
+
正在调试
-
-
+
+
正在运行
-
-
+
+
正在编译
@@ -2443,172 +2490,172 @@ Are you really want to continue?
行:%1 列:%2 已选择:%3 总行数:%4 总长度:%5
-
+
行:%1 列:%2 已选择:%3 总行数:%4 总长度:%5
-
+
只读
-
+
插入
-
+
覆写
-
-
+
+
确认
-
-
-
+
+
+
源文件尚未编译。
-
-
+
+
现在编译?
-
-
+
+
源文件比可执行程序新。
-
+
重新编译?
-
+
无编译器设置
-
+
没有配置编译器设置。
-
+
无法启动调试器
-
+
启用调试参数
-
+
当前编译设置中未启用调试选项(-g3),或启用了信息剥除选项(-s)<br /><br/>是否纠正这一问题?
-
+
重新编译?
-
+
已自动保存%1个文件
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
错误
-
+
磁盘文件'%1'已被修改。
-
+
是否重新读取它的内容?
-
+
磁盘文件'%1'已被删除。
-
+
是否保持它在小熊猫C++中打开的编辑窗口?
-
+
打开
-
+
编译失败
-
+
运行失败
-
-
+
+
确认转换
-
-
+
+
当前编辑器中的文件将会使用%1编码保存。<br />这项操作无法被撤回。<br />你确定要继续吗?
-
+
新监视表达式
-
+
输入监视表达式
-
+
(%1/%2)正在解析文件"%3"
-
-
+
+
完成%1个文件的解析,用时%2秒
-
+
(每秒%1个文件)
@@ -2680,216 +2727,216 @@ Are you really want to continue?
无法写入配置文件夹"%1"
-
-
-
-
+
+
+
+
下列%1文件夹不存在:
-
-
+
+
二进制
-
+
未指定%1文件夹
-
+
C包含
-
-
+
+
C++包含
-
-
-
-
+
+
+
+
无法找到%1程序"%2"
-
+
C语言选项
-
+
支持所有ANSI标准C程序(-ansi)
-
+
不支持将asm、inline和typeof作为关键字(-fno-asm)
-
+
模仿传统C预处理器行为(-traditional-cpp)
-
+
代码生成
-
+
生成特定机器的专用指令(-march)
-
+
完整兼容特定机器,较少优化(-tune)
-
+
启用特定指令集(-mx)
-
+
优化级别(-Ox)
-
+
使用下列指针大小编译(-mx)
-
+
语言标准(-std)
-
+
生成调试信息(-g3)
-
+
生成性能分析信息(-pg)
-
+
代码警告
-
+
忽略所有警告信息(-w)
-
+
启用常见问题警告(-Wall)
-
+
启用更多问题警告(-Wextra)
-
+
检查ISO C/C++/C++0x语法一致性(-pedantic)
-
+
只进行语法检查(不编译)(-fsyntax-only)
-
+
将警告作为错误处理(-Werror)
-
+
遇到第一个错误后立即中止编译(-Wfatal-errors)
-
+
链接器
-
+
-
+
不使用标准库和系统启动文件(-nostdlib)
-
+
不产生控制台窗口(-mwindows)
-
+
剥除附加信息(-s)
-
+
链接Ojbective C程序(-lobjc)
-
+
输出
-
+
在生成的汇编代码中加入注释(-fverbose-asm)
-
+
编译时使用管道而不是临时文件(-pipe)
-
+
只生成汇编代码(-S)
-
-
+
+
确认
-
+
在验证编译器设置"%1"时遇到了下列问题:
-
+
未配置编译器设置。
-
+
您需要小熊猫C++在下列位置搜索编译器吗:<br />%1<br />%2
diff --git a/RedPandaIDE/mainwindow.cpp b/RedPandaIDE/mainwindow.cpp
index 1c736b48..acacc2b4 100644
--- a/RedPandaIDE/mainwindow.cpp
+++ b/RedPandaIDE/mainwindow.cpp
@@ -37,7 +37,8 @@ MainWindow::MainWindow(QWidget *parent)
mOpenClosingBottomPanel(false),
mOpenClosingLeftPanel(false),
mCheckSyntaxInBack(false),
- mClosing(false)
+ mClosing(false),
+ mSystemTurnedOff(false)
{
ui->setupUi(this);
// status bar
@@ -210,6 +211,9 @@ void MainWindow::updateEditorActions()
//code
ui->actionReformat_Code->setEnabled(false);
+
+ ui->actionClose->setEnabled(false);
+ ui->actionClose_All->setEnabled(false);
} else {
ui->actionAuto_Detect->setEnabled(true);
ui->actionEncode_in_ANSI->setEnabled(true);
@@ -241,6 +245,9 @@ void MainWindow::updateEditorActions()
//code
ui->actionReformat_Code->setEnabled(true);
+ ui->actionClose->setEnabled(true);
+ ui->actionClose_All->setEnabled(true);
+
updateCompileActions();
}
@@ -1082,6 +1089,17 @@ void MainWindow::buildContextMenus()
ui->watchView->addAction(ui->actionModify_Watch);
}
+void MainWindow::maximizeEditor()
+{
+ if (mLeftPanelOpenned || mBottomPanelOpenned) {
+ openCloseBottomPanel(false);
+ openCloseLeftPanel(false);
+ } else {
+ openCloseBottomPanel(true);
+ openCloseLeftPanel(true);
+ }
+}
+
void MainWindow::onAutoSaveTimeout()
{
if (!pSettings->editor().enableAutoSave())
@@ -2050,13 +2068,7 @@ void MainWindow::on_splitterMessages_splitterMoved(int, int)
void MainWindow::on_EditorTabsLeft_tabBarDoubleClicked(int index)
{
- if (mLeftPanelOpenned || mBottomPanelOpenned ) {
- openCloseBottomPanel(false);
- openCloseLeftPanel(false);
- } else {
- openCloseBottomPanel(true);
- openCloseLeftPanel(true);
- }
+ maximizeEditor();
}
@@ -2067,5 +2079,20 @@ void MainWindow::on_actionClose_triggered()
if (e) {
mEditorList->closeEditor(e);
}
+ mClosing = false;
+}
+
+
+void MainWindow::on_actionClose_All_triggered()
+{
+ mClosing = true;
+ mEditorList->closeAll(mSystemTurnedOff);
+ mClosing = false;
+}
+
+
+void MainWindow::on_actionMaximize_Editor_triggered()
+{
+ maximizeEditor();
}
diff --git a/RedPandaIDE/mainwindow.h b/RedPandaIDE/mainwindow.h
index 78fe26b4..a63108fb 100644
--- a/RedPandaIDE/mainwindow.h
+++ b/RedPandaIDE/mainwindow.h
@@ -119,11 +119,9 @@ public slots:
void onEndParsing(int total, int updateView);
void onEvalValueReady(const QString& value);
-protected:
+private:
void openFiles(const QStringList& files);
void openFile(const QString& filename);
-
-private:
CompileTarget getCompileTarget();
bool debugInferiorhasBreakpoint();
void setupActions();
@@ -132,6 +130,7 @@ private:
void prepareDebugger();
void doAutoSave(Editor *e);
void buildContextMenus();
+ void maximizeEditor();
private slots:
void onAutoSaveTimeout();
@@ -255,6 +254,10 @@ private slots:
void on_actionClose_triggered();
+ void on_actionClose_All_triggered();
+
+ void on_actionMaximize_Editor_triggered();
+
private:
Ui::MainWindow *ui;
EditorList *mEditorList;
@@ -296,7 +299,8 @@ private:
CaretList mCaretList;
- bool mClosing = false;
+ bool mClosing;
+ bool mSystemTurnedOff;
// QWidget interface
diff --git a/RedPandaIDE/mainwindow.ui b/RedPandaIDE/mainwindow.ui
index 84ce1264..b3433fcc 100644
--- a/RedPandaIDE/mainwindow.ui
+++ b/RedPandaIDE/mainwindow.ui
@@ -841,6 +841,8 @@
Window
+
+
@@ -1461,6 +1463,19 @@
Ctrl+Shift+W
+
+
+
+ :/icons/images/newlook24/030-dos.png
+
+
+
+ Maximize Editor
+
+
+ Ctrl+F11
+
+