用户手册

This commit is contained in:
zhaominyong 2022-02-26 14:42:00 +08:00
parent b63e7dfb6c
commit 0397def456
60 changed files with 483 additions and 479 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 219 KiB

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 215 KiB

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 228 KiB

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 KiB

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 216 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 256 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 231 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 147 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 234 KiB

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 198 KiB

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 KiB

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 267 KiB

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 215 KiB

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

After

Width:  |  Height:  |  Size: 43 KiB

View File

@ -4,7 +4,7 @@ Kylin Backup and Recovery Tool is used to backup and restore system or user data
It supports to create new backup points, and incremental backup based on a backup point; as well as restore the system to the state at the time of a backup, and partial restore retaining user data.
There are three modes: General, Grub backup and restore, LiveCD restore.
There are two modes: General, Grub backup and restore.
<br>
@ -14,79 +14,106 @@ There are three modes: General, Grub backup and restore, LiveCD restore.
![Fig 1-a system backup -big](image/1-a.png)
- **New System Backup** -- Backup the whole system except the backup partition and the data partition.
- **New System Backup** -- The data that not in /backup、/media、/run、/proc、/dev、/sys、/cdrom、/mnt, etc , can be backup.
After selecting "New System Backup", click "Backup" and there will pop up a box allowing users to specify backup device those need to be ignored during backup, as shown in Fig 2.
Click "Start Backup" Button will enter the page select backup location, you can choose to backup to local or mobile device. As shown in figure 2.
![Fig 2 system backup device choose -big](image/2.png)
After clicking "Ok" to backup, the system will chech whether the backup partition has enough space for this operation. If no, it will pop up an
error reporting window; Conversely, it will pop up prompt in turn, as shown in Fig 3.
Click "Next" button to enter the environment checking page. Inspection, such as backup space is enough, etc . And show check results. See 3-1,3-2.
![Fig 3-1 Backup prompt-big](image/3-1.png)
![Fig 3-1 Checking -big](image/3-1.png)
![Fig 3-2 Backup prompt-big](image/3-2.png)
![Fig 3-2 Check Result -big](image/3-2.png)
Click "Continue" to create a new backup in the backup partition. During backup, there will show a window as shown in Fig 4. The length of backup time depends on the size of backup contents.
Click "Next" button to enter the backup preparing page. You can define the backup name in it. As shown in figure 4.
![Fig 4 Backup now -big](image/4.png)
![Fig 4 Preparing -big](image/4.png)
The button "Backup Management" near "Backup" is used to view the state of system backups and delete invalid backups.
Then click "Next" button to backup. As shown in figure 5.
![Fig 5 Backup Management-big](image/5.png)
![Fig 5 Backuping -big](image/5.png)
- **Update System Backup** -- Continue backup based on a existed backup.
The backup process can click "cancel" button, cancel the backup operation.
Backup is completed, enter the backup finish page, show result. As shown in figure 5-1.
After selecting this function, there will pop up a window to show all backups. Users can choose one from them.
![Fig 5-1 Backup Finish -big](image/5-1.png)
Incremental backup can be performed on the basis of a failed backup.
Click the "Home Page" button, click "Backup Management >>" tab, pop-up window of system backup management, you can see the backup just in it. As shown in figure 5-2.
![Fig 5-2 Backup Management -big](image/5-2.png)
In the backup management page, select a backup, click the "Delete" button, remove the corresponding backup point.
### System Restore
System restore can restore the system to its previous backup state.
![Fig 6-a system restore -big](image/6-a.png)
Click "Start Restore" button, the system backups list window will pop up. As shown in figure 6-b.
![Fig 6-b select backup -big](image/6-b.png)
Select the corresponding backup point, click the "Ok" button, enter the system restore environmental checking page. As shown in figure 6-c.
![Fig 6-c checking -big](image/6-c.png)
Checking success, then click the "Next" button to enter the page of restore, to start the system restore. As shown in figure 6-d.
![Fig 6-d select backup -big](image/6-d.png)
### Data Backup and Data Recovery
- **Data Backup** -- Backup the directories or files specified by user, and the function is similar to system backup.
![Fig 8 Data backup-big](image/8.png)
![Fig 7 Data backup-big](image/7.png)
After selecting "New Data Backup", click "Backup" and there will pop up a box allowing users to specify directories or files those need to be backuped. As shown in Fig 9, it will backup the contents in /home/kylin/.
Click "Start Backup" and enter the backup path selection page. As shown in figure 8.
![Fig 9 Specify directories or files -big](image/9.png)
![Fig 8 Specify directories or files -big](image/8.png)
The button "Backup Management" near "Backup" is used to view the state of data backups and delete invalid backups.
Or click "Update Backup" button, pop up data backup list window. As shown in figure 9.
- **Update Data Backup** -- Add new data to a existed data backup.
![Fig 9 data backup list -big](image/9.png)
Then, click "Next" button, enter backup checking page --> backup preparing --> backuping --> backup finished. Such as system backup.
- **Update Data Backup** -- On the basis of a data backup, update the backup data.
- **Data Recovery** -- Recovery the data to its previous backup state, and the function is similar to system restore.
![Fig 10 Data recovery-big](image/10.png)
The system will restart automatically after recovery is complete.
### Log Records
Record all operations on backup and recovery tool, and the interface as shown in Fig 11. Turn pages by clicking "Up" and "Next" button.
Record all operations on backup and recovery tool, and the interface as shown in Fig 11.
![Fig 11 Log records-big](image/11.png)
### Ghost Image
Install from ghost image means generate an image file from an installed system, and then use this image file to copy the same state system to other computers. To use this function, a backup is needed first.
Install from ghost image means generate an image file from an installed system, and then use this image file to copy the same state system to other computers. To use this function, a lacol system backup is needed first.
#### Create Ghost Image
The interface as shown in Fig 12, including some tips.
The interface as shown in Fig 12.
![Fig 12 Ghost image-big](image/12.png)
Click "Ghost" and there will pop up a window to show all backups. Users select one of them and click "Ok" to start creating, as shown in Fig 13.
Click "Start Ghost" and there will pop up a window to show all local system backups. Users select one of them and click "Ok" button, into the image storage location selection interface, can choose a local or mobile device, as shown in Fig 13-1.
(Tips: The architecture in name depends on hardware platform.)
![Fig 13-1 Ghost image select and create-big](image/13-1.png)
![Fig 13-1 Ghost image position -big](image/13-1.png)
![Fig 13-2 Ghost image select and create-big](image/13-2.png)
Then click "Next" button, enter checking page. As shown in figure 13-2.
Image filename is "computer name + architecture + backup name.kyimg", and only numbers in the backup name are retained.
![Fig 13-2 Ghost image checking -big](image/13-2.png)
If success, then click "Next" button, enter makeing page. As shown in figure 13-3.
![Fig 13-3 Ghost image makeing -big](image/13-3.png)
Image filename is "computer name + architecture + backup name.kyimg", and the backup name removed some symbol. As shown in figure 13-4.
![Fig 13-3 Ghost image finished -big](image/13-3.png)
#### Install from Ghost Image
1) Copy the ghost image (saved in /ghost) to U-disk or other removable storage device.
@ -99,12 +126,10 @@ sudo mount /dev/sdb1 /mnt
Removable device is /dev/sdb1 by general, and it can be seen by command "fdisk -l".
4) Double click the install button to start installation guide. Select "Install from ghost image" in Installation Type, and find the ghost image in the removable device, as shown in Fig 14. The follow-up steps can refer to installation manual.
4) Double click the install button to start installation guide. Select "Install from ghost image" in Installation Type, and find the ghost image in the removable device. The follow-up steps can refer to installation manual.
(Tips: The architecture in name depends on hardware platform.)
![Fig 14 Ghost install-big](image/14.png)
If there exists data partition when creating ghost image file, it needs to check "Create Data Partition" in the next step.
<br>
@ -125,24 +150,12 @@ For backup mode, is smilar to "Whole Disk Backup" in general mode. If there is n
For restore mode, is smilar to "Disk Restore" in general mode. If there is no successful backup, the system will not be restored.
<br>
## LiveCD Restore
Enter livecd system and click Start Menu to open the application, as shown in Fig 15.
![Fig 15 Interface in LiveCD-big](image/15.png)
System restore an log records can refer to the function in general mode.
<br>
## Q&A
### Can not use backup and recovery tool
In order to use this tool, "Create Backup Partition" must be checked when install system.
<br>
### Backup data/backup partition is allowed?
The contents in data partition are not important to system and have a large capacity, so it's not necessary to backup /data.
Backup partition is used to save and recovery other partitions data, so /backup is not allowed to be backuped or restored.
### There is insufficient space on the backup partition
Backup partition (/ backup) size is fixed installation system, should not be too big commonly, as system usage gradually increase, will cause storage is not enough.At this point can be backup to a mobile device, but backup speed will slow down.
Recommended for system only a die erste installation backup to the backup partition, at the back of the backup system use mobile device. Of the more important data into a directory, backup in data backup function.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 222 KiB

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 219 KiB

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 242 KiB

After

Width:  |  Height:  |  Size: 102 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 238 KiB

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 282 KiB

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 250 KiB

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 281 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 264 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 222 KiB

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 238 KiB

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 275 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 KiB

After

Width:  |  Height:  |  Size: 56 KiB

View File

@ -1,8 +1,8 @@
# 备份还原
## 概 述
备份还原用于对系统或用户数据进行备份和还原。该工具支持新建备份点,也支持在某个备份点上进行增量备份;支持将系统还原到某次备份时的状态,或者在保留某些数据的情况下进行部分还原。
备份还原用于对系统或用户数据进行备份和还原。该工具支持新建备份点,也支持在某个备份点上进行增量备份;支持将系统还原到某次备份时的状态,或者在保留用户数据的情况下进行还原。
备份还原有3种模式常规模式、Grub备份还原、LiveCD还原。
备份还原有2种模式常规模式、Grub备份还原。
<br>
@ -12,77 +12,105 @@
![图 1-a 系统备份-big](image/1-a.png)
- **新建系统备份** —— 将除备份还原分区、数据分区外的整个系统进行备份。
- **系统备份** —— 将除/backup、/media、/run、/proc、/dev、/sys、/cdrom、/mnt等目录外的整个文件系统中的数据进行备份。
选择新建后,点击 “开始备份” ,会弹出一个对话框,供用户指定设备进行系统备份,如图2所示。
单击 “开始备份”按钮,进入选择备份位置页面,可以选择备份到本地或移动设备。如图2所示。
![图 2 系统备份设备选择 -big](image/2.png)
![图 2 系统备份位置选择 -big](image/2.png)
当确定进入备份时,系统查找备份还原分区是否有足够的空间来进行本次备份。若没有足够空间,则会有报错弹窗;若有足够空间,则会依次给出提示
单击“下一步”按钮进入环境检测界面。检测诸如备份空间是否充足等检测完成会展示检测结果。见3-1、3-2两图
![图 3-1 备份提示-big](image/3-1.png)
![图 3-2 备份提示-big](image/3-2.png)
![图 3-1 环境检测-big](image/3-1.png)
![图 3-2 检测通过-big](image/3-2.png)
按“继续”按钮,则会在备份还原分区上新建一个备份。在备份过程中,会有如下所示的提示框。备份时间长短与备份内容大小有关
单击“下一步”按钮进入备份准备界面。在此界面可以定义备份点名称并对备份名称进行唯一性校验。如图4所示
![图 4 正在备份 -big](image/4.png)
![图 4 备份准备 -big](image/4.png)
系统备份标签页中“开始备份”旁边的“备份管理”,可用来查看系统备份状态,删除无效备份
定义好备份名称后单击“下一步”按钮进入备份中界面正式进行备份。如图5所示
![图 5 系统备份管理-big](image/5.png)
![图 5 系统备份-big](image/5.png)
- **系统增量备份** —— 在一个已有备份的基础上,继续进行备份。
备份过程中可以单击“取消”按钮,取消备份操作。
备份完成后进入备份完成界面展示备份结果。如图5-1所示。
当选择增量备份后,会弹出一个列出了所有备份的对话框,供用户选择。
![图 5-1 系统备份完成-big](image/5-1.png)
可以在失败的备份基础上进行增量备份。
单击“返回首页”按钮单击首页的右下角的“备份管理”标签弹出系统备份管理窗口可以看到刚刚的系统备份。如图5-2所示。
![图 5-2 系统备份管理-big](image/5-2.png)
可以在备份管理页面,选择某个备份点,单击“删除”按钮,删除相应的备份点。
### 系统还原
“系统还原” 可将系统还原到以前一个备份时的状态。
“系统还原” 可将系统还原到以前一个备份时的状态。可以保留用户数据还原。
![图 6-a 系统还原-big](image/6-a.png)
单击“开始还原”按钮会弹出系统备份列表窗口如图6-b所示。
点击“一键还原”会弹出一个对话框供用户指定在还原过程中需要忽略的分区、目录或文件如图7所示。还原成功后系统会自动重启。
![图 6-b 选择还原点-big](image/6-b.png)
选择相应的备份点单击“确定”按钮进入系统还原的环境检测界面。如图6-c所示。
![图 6-c 系统还原环境检测-big](image/6-c.png)
检测成功后单击“下一步”按钮进入还原页面开始进行系统还原。如图6-d所示。
![图 6-d 系统还原中-big](image/6-d.png)
还原成功后,系统自动重启。
### 数据备份与数据还原
- **数据备份** —— 对用户指定的目录或文件进行备份,功能与系统备份相似。
- **数据备份** —— 对用户指定的目录或文件进行备份(限定为家目录/home/xxx、/root、/data或/data/usershare目录下的数据操作与系统备份相似。可以新建备份也可以对现有备份进行更新。如图7所示
![图 8 数据备份主界面-big](image/8.png)
![7 数据备份主界面-big](image/7.png)
选择“新建数据备份”后点击“开始备份”会弹出一个对话框供用户指定需要备份的目录或文件如图9所示会对 /home/kylin/ 目录中的内容进行备份。
单击“开始备份”按钮进入备份路径选择页面。如图8所示
![图 9 指定数据备份目录 -big](image/9.png)
![8 数据备份路径选择-big](image/8.png)
“开始备份”旁边的“备份管理”,可用来查看数据备份状态,删除无效备份
或单击“备份更新”按钮弹出数据备份列表窗口选择已经存在的某个备份点进行更新。如图9所示
- **数据增量备份** —— 在某个数据备份的基础上,增加需要备份的数据。
![图 9 更新数据备份 -big](image/9.png)
选择好备份路径后,单击“下一步”按钮,进入环境检测-->备份准备-->备份中-->备份完成等环节,和系统备份类似。
数据备份首页右下角的“备份管理”,可用来查看数据备份状态,删除无效备份。
- **数据增量备份** —— 在某个数据备份的基础上,更新备份点的数据。
- **数据还原** —— 还原到某个数据备份的状态,功能与系统还原相似。
![图 10 数据还原主界面-big](image/10.png)
完成还原后,系统会自动重启。
### 操作日志
记录了在备份还原上的所有操作,主界面如图所示。可通过“上一页” 、“下一页”按钮进行翻页查看。
记录了在备份还原上的所有备份、还原、删除操作主界面如图11所示。
![图 11 操作日志主界面-big](image/11.png)
### Ghost镜像
Ghost镜像安装是指将一台机器上的系统生成一个镜像文件然后使用该镜像文件来安装操作系统。要使用该功能首先需要有一个备份。
Ghost镜像安装是指将一台机器上的系统生成一个镜像文件然后使用该镜像文件来安装操作系统。要使用该功能首先需要有一个本地系统备份。
#### 创建Ghost镜像
选择菜单“Ghost镜像”如图12所示。
![图 12 Ghost镜像主界面-big](image/12.png)
点击“一键Ghost”后会弹出当前所有备份的列表用户选择一个备份点击“确定”后开始制作Ghost镜像。镜像文件名的格式为“主机名+体系架构+备份名称.kyimg”其中备份名称只保留了数字
单击“创建镜像”按钮后会弹出当前所有本地系统备份的列表用户选择一个备份点点击“确定”后进入镜像存储位置选择界面可以选择本地或移动设备如图13-1所示
如图13所示。
![图 13-1 Ghost镜像存储位置-big](image/13-1.png)
![图 13-1 Ghost镜像选择制作-big](image/13-1.png)
![图 13-2 Ghost镜像选择制作-big](image/13-2.png)
单击“下一步”按钮进入环境检测页面如图13-2所示。
![图 13-2 制作镜像环境检测-big](image/13-2.png)
检测成功后单击“下一步”按钮进入制作中界面开始制作Ghost镜像。如图13-3所示。
![图 13-3 镜像制作中-big](image/13-3.png)
镜像文件名的格式为“主机名+体系架构+备份名称.kyimg”其中备份名称中去掉了某些符号。制作完成后进入完成界面。如图13-4所示。
![图 13-4 Ghost镜像制作完成-big](image/13-4.png)
#### 安装Ghost镜像
1把制作好的Ghost镜像存在于“/ghost”目录下拷贝到U盘等可移动存储设备。
@ -97,9 +125,7 @@ Ghost镜像安装是指将一台机器上的系统生成一个镜像文件
4双击安装图标开始安装引导。在“安装方式”中选择“从Ghost镜像安装”并找到移动设备中的Ghost镜像文件。后续步骤可参考“系统安装”部分。
![图 14 Ghost安装-big](image/14.png)
Tips如果制作镜像文件时带有数据盘则在下一步“安装类型”中也要勾选“创建数据盘”。
Tips如果制作镜像文件时带有数据分区则在下一步“安装类型”中也要创建“数据分区”。
<br>
@ -108,20 +134,11 @@ Tips如果制作镜像文件时带有数据盘则在下一步“安装类
2备份模式系统立即开始备份屏幕上会给出提示。
对于备份模式而言,等同于常规模式下的“新建系统备份”。如果备份还原分区没有足够空间,则无法成功备份。
对于备份模式而言,等同于常规模式下的“系统备份”。如果备份还原分区没有足够空间,则无法成功备份。
3还原模式系统立即开始还原到最近一次的成功备份状态屏幕上会给出提示。
对于还原模式而言,等同于常规模式下的“一键还原”。如果备份还原分区上没有一个成功的备份,则系统不能被还原。
<br>
## LiveCD还原
通过系统启动盘进入操作系统后从开始菜单打开麒麟备份还原主界面如图15所示。
![图 15 LiveCD还原主界面-big](image/15.png)
系统还原和操作日志可参考常规模式下的对应功能。
对于还原模式而言,等同于常规模式下的“系统还原”。如果备份还原分区上没有一个成功的备份,则系统不能被还原。
<br>
@ -129,7 +146,6 @@ Tips如果制作镜像文件时带有数据盘则在下一步“安装类
### 无法使用备份还原
在安装操作系统时,必须要选中“创建备份还原分区”,备份还原才能使用。
### 可以对data分区和backup分区进行备份吗
数据分区(/data保存的内容与系统关系不大且通常容量很大因此不建议对数据分区进行备份和还原。
备份还原分区(/backup用于保存和恢复其他分区的数据故此分区的数据不允许备份或还原。
### 备份分区空间不足
备份分区(/backup大小是安装系统时固定的一般也不会太大随着系统的使用量逐渐增大会造成备份空间不足无法进行备份的情况。此时可以备份到移动设备上不过备份速度会变慢。
建议系统只进行一个初装备份到备份分区,后面的系统备份都备份到移动设备上。比较重要的数据统一放到某个目录中,用数据备份功能进行备份。

View File

@ -57,7 +57,7 @@ void MyIconButton::changePalette(bool checked)
{
m_iconButton->setChecked(checked);
QPalette pal = m_textLabel->palette();
// svg格式的图标会自动跟随主题不需再手动设置像素颜色
// png格式的图标会自动跟随主题不需再手动设置像素颜色
// QIcon icon = QIcon::fromTheme(m_themeIconName, QIcon(m_defaultIconName));
// QPixmap pix;
if (g_GSettingWrapper.isDarkTheme()) {

View File

@ -38,7 +38,7 @@ void MyIconLabel::setThemeIcon(const QString &themeIconName, const QString &defa
m_defaultIconName = defaultIconName;
QIcon icon = QIcon::fromTheme(themeIconName, QIcon(defaultIconName));
m_iconLabel->setPixmap(icon.pixmap(QSize(24,24)));
m_iconLabel->setPixmap(icon.pixmap(icon.actualSize(QSize(24, 24))));
}
void MyIconLabel::setDesplayText(const QString &text)

View File

@ -158,8 +158,14 @@ void DataBackup::initFirstWidget()
// 增量备份按钮
MyPushButton *incrementBackup = new MyPushButton(first);
incrementBackup->setGeometry(241, 372, 180, 52);
// incrementBackup->setGeometry(241, 372, 180, 52);
incrementBackup->setFixedHeight(52);
incrementBackup->move(241, 372);
incrementBackup->setText(tr("Update Backup"));
if (incrementBackup->text() == "Update Backup")
incrementBackup->setFixedWidth(220);
else
incrementBackup->setFixedWidth(180);
incrementBackup->setEnabled(true);
incrementBackup->setAutoRepeat(true);
font.setPixelSize(24);
@ -320,7 +326,8 @@ void DataBackup::initSecondWidget()
hlayoutLine4->addSpacing(30);
// 所选备份路径编辑框
QLineEdit *editSelect = new QLineEdit;
editSelect->setFixedSize(480, 36);
editSelect->setMinimumWidth(460);
editSelect->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
editSelect->setMaxLength(255);
// 删除按钮
QPushButton *buttonDelete = new QPushButton;
@ -334,11 +341,10 @@ void DataBackup::initSecondWidget()
});
// 添加按钮
MyPushButton *buttonAdd = new MyPushButton;
buttonAdd->setFixedSize(70, 36);
buttonAdd->setFixedWidth(70);
buttonAdd->setText(tr("Add"));
// 选择按钮
MyPushButton *buttonSelect = new MyPushButton;
buttonSelect->setFixedSize(70, 36);
buttonSelect->setText(tr("Select"));
hlayoutLine4->addWidget(editSelect);
hlayoutLine4->addWidget(buttonDelete);
@ -358,7 +364,8 @@ void DataBackup::initSecondWidget()
// 备份列表
BackupListWidget *listWidget = new BackupListWidget;
listWidget->setFixedSize(680, 240);
listWidget->setMinimumSize(680, 240);
listWidget->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
listWidget->setPathLimit(pathLimits);
hlayoutLine5->addWidget(listWidget);
hlayoutLine5->addStretch();
@ -396,7 +403,6 @@ void DataBackup::initSecondWidget()
hlayoutLastLine->addStretch();
// 上一步按钮
MyPushButton *preStep = new MyPushButton(second);
preStep->setGeometry(271, 176, 97, 36);
preStep->setText(tr("Back"));
preStep->setEnabled(true);
preStep->setAutoRepeat(true);
@ -406,7 +412,6 @@ void DataBackup::initSecondWidget()
});
// 下一步按钮
MyPushButton *nextStep = new MyPushButton(second);
nextStep->setGeometry(389, 176, 97, 36);
nextStep->setText(tr("Next"));
nextStep->setEnabled(true);
nextStep->setAutoRepeat(true);
@ -537,7 +542,8 @@ void DataBackup::initSecondWidget_inc()
hlayoutLine4->addSpacing(30);
// 所选备份路径编辑框
QLineEdit *editSelect = new QLineEdit;
editSelect->setFixedSize(480, 36);
editSelect->setMinimumWidth(460);
editSelect->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
editSelect->setMaxLength(255);
// 删除按钮
QPushButton *buttonDelete = new QPushButton;
@ -555,7 +561,6 @@ void DataBackup::initSecondWidget_inc()
buttonAdd->setText(tr("Add"));
// 选择按钮
MyPushButton *buttonSelect = new MyPushButton;
buttonSelect->setFixedSize(70, 36);
buttonSelect->setText(tr("Select"));
hlayoutLine4->addWidget(editSelect);
hlayoutLine4->addWidget(buttonDelete);
@ -574,7 +579,8 @@ void DataBackup::initSecondWidget_inc()
getPathsLimit(pathLimits, siderUrls);
// 备份列表
BackupListWidget *listWidget = new BackupListWidget;
listWidget->setFixedSize(680, 240);
listWidget->setMinimumSize(680, 240);
listWidget->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
listWidget->setPathLimit(pathLimits);
hlayoutLine5->addWidget(listWidget);
hlayoutLine5->addStretch();
@ -618,7 +624,6 @@ void DataBackup::initSecondWidget_inc()
hlayoutLastLine->addStretch();
// 上一步按钮
MyPushButton *preStep = new MyPushButton(second);
preStep->setGeometry(271, 176, 97, 36);
preStep->setText(tr("Back"));
preStep->setEnabled(true);
preStep->setAutoRepeat(true);
@ -628,7 +633,6 @@ void DataBackup::initSecondWidget_inc()
});
// 下一步按钮
MyPushButton *nextStep = new MyPushButton(second);
nextStep->setGeometry(389, 176, 97, 36);
nextStep->setText(tr("Next"));
nextStep->setEnabled(true);
nextStep->setAutoRepeat(true);
@ -785,7 +789,6 @@ void DataBackup::initThirdWidget()
hlayoutCenterFont5->addSpacing(30);
// 上一步按钮
MyPushButton *preStep = new MyPushButton(centerFont);
preStep->setFixedSize(97, 36);
preStep->setText(tr("Back"));
preStep->setEnabled(true);
preStep->setAutoRepeat(true);
@ -799,7 +802,6 @@ void DataBackup::initThirdWidget()
hlayoutCenterFont5->addSpacing(20);
// 下一步按钮
MyPushButton *nextStep = new MyPushButton(centerFont);
nextStep->setFixedSize(97, 36);
nextStep->setText(tr("Next"));
nextStep->setEnabled(true);
nextStep->setAutoRepeat(true);
@ -810,7 +812,6 @@ void DataBackup::initThirdWidget()
hlayoutCenterFont5->addWidget(nextStep);
// 重新检测按钮
MyPushButton *recheck = new MyPushButton(centerFont);
recheck->setFixedSize(97, 36);
recheck->setText(tr("Recheck"));
recheck->setEnabled(true);
recheck->setAutoRepeat(true);
@ -1270,7 +1271,6 @@ void DataBackup::initFifthWidget()
QHBoxLayout *hlayoutCenterFont3 = new QHBoxLayout;
// 取消按钮
MyPushButton *cancel = new MyPushButton(fifth);
cancel->setFixedSize(97, 36);
cancel->setText(tr("Cancel"));
cancel->setAutoRepeat(true);
hlayoutCenterFont3->addStretch();
@ -1564,7 +1564,6 @@ void DataBackup::initLastWidget()
hlayoutCenterFont5->addSpacing(30);
// 返回首页
MyPushButton *homePage = new MyPushButton(centerFont);
homePage->setFixedSize(97, 36);
homePage->setText(tr("Home Page"));
homePage->setEnabled(true);
homePage->setAutoRepeat(true);
@ -1572,7 +1571,6 @@ void DataBackup::initLastWidget()
hlayoutCenterFont5->addSpacing(20);
// 再试一次
MyPushButton *retry = new MyPushButton(centerFont);
retry->setFixedSize(97, 36);
retry->setText(tr("Retry"));
retry->setEnabled(true);
retry->setAutoRepeat(true);

View File

@ -336,7 +336,6 @@ void DataRestore::initSecondWidget()
hlayoutCenterFont5->addSpacing(30);
// 上一步按钮
MyPushButton *preStep = new MyPushButton(centerFont);
preStep->setFixedSize(97, 36);
preStep->setText(tr("Back"));
preStep->setEnabled(true);
preStep->setAutoRepeat(true);
@ -345,7 +344,6 @@ void DataRestore::initSecondWidget()
hlayoutCenterFont5->addSpacing(20);
// 下一步按钮
MyPushButton *nextStep = new MyPushButton(centerFont);
nextStep->setFixedSize(97, 36);
nextStep->setText(tr("Next"));
nextStep->setEnabled(true);
nextStep->setAutoRepeat(true);
@ -356,7 +354,6 @@ void DataRestore::initSecondWidget()
hlayoutCenterFont5->addWidget(nextStep);
// 重新检测按钮
MyPushButton *recheck = new MyPushButton(centerFont);
recheck->setFixedSize(97, 36);
recheck->setText(tr("Recheck"));
recheck->setEnabled(true);
recheck->setAutoRepeat(true);
@ -891,7 +888,6 @@ void DataRestore::initLastWidget()
hlayoutCenterFont5->addSpacing(30);
// 返回首页
MyPushButton *homePage = new MyPushButton(centerFont);
homePage->setFixedSize(97, 36);
homePage->setText(tr("Home Page"));
homePage->setEnabled(true);
homePage->setAutoRepeat(true);
@ -899,14 +895,12 @@ void DataRestore::initLastWidget()
hlayoutCenterFont5->addSpacing(20);
// 再试一次
MyPushButton *retry = new MyPushButton(centerFont);
retry->setFixedSize(97, 36);
retry->setText(tr("Retry"));
retry->setEnabled(true);
retry->setAutoRepeat(true);
hlayoutCenterFont5->addWidget(retry);
// 重启
MyPushButton *reboot = new MyPushButton(centerFont);
reboot->setFixedSize(97, 36);
reboot->setText(tr("Reboot System"));
reboot->setEnabled(true);
reboot->setAutoRepeat(true);

View File

@ -374,7 +374,6 @@ void GhostImage::initThirdWidget()
hlayoutCenterFont5->addSpacing(30);
// 上一步按钮
MyPushButton *preStep = new MyPushButton(centerFont);
preStep->setFixedSize(97, 36);
preStep->setText(tr("Back"));
preStep->setEnabled(true);
preStep->setAutoRepeat(true);
@ -383,7 +382,6 @@ void GhostImage::initThirdWidget()
hlayoutCenterFont5->addSpacing(20);
// 下一步按钮
MyPushButton *nextStep = new MyPushButton(centerFont);
nextStep->setFixedSize(97, 36);
nextStep->setText(tr("Next"));
nextStep->setEnabled(true);
nextStep->setAutoRepeat(true);
@ -394,7 +392,6 @@ void GhostImage::initThirdWidget()
hlayoutCenterFont5->addWidget(nextStep);
// 重新检测按钮
MyPushButton *recheck = new MyPushButton(centerFont);
recheck->setFixedSize(97, 36);
recheck->setText(tr("Recheck"));
recheck->setEnabled(true);
recheck->setAutoRepeat(true);
@ -731,7 +728,6 @@ void GhostImage::initForthWidget()
QHBoxLayout *hlayoutCenterFont3 = new QHBoxLayout;
// 取消按钮
MyPushButton *cancel = new MyPushButton(forth);
cancel->setFixedSize(97, 36);
cancel->setText(tr("Cancel"));
cancel->setEnabled(true);
cancel->setAutoRepeat(true);
@ -1063,7 +1059,6 @@ void GhostImage::initLastWidget()
hlayoutCenterFont5->addSpacing(30);
// 返回首页
MyPushButton *homePage = new MyPushButton(centerFont);
homePage->setFixedSize(97, 36);
homePage->setText(tr("Home Page"));
homePage->setEnabled(true);
homePage->setAutoRepeat(true);
@ -1071,7 +1066,6 @@ void GhostImage::initLastWidget()
hlayoutCenterFont5->addSpacing(20);
// 再试一次
MyPushButton *retry = new MyPushButton(centerFont);
retry->setFixedSize(97, 36);
retry->setText(tr("Retry"));
retry->setEnabled(true);
retry->setAutoRepeat(true);

View File

@ -378,7 +378,6 @@ void SystemBackup::initThirdWidget()
hlayoutCenterFont5->addSpacing(30);
// 上一步按钮
MyPushButton *preStep = new MyPushButton(centerFont);
preStep->setFixedSize(97, 36);
preStep->setText(tr("Back"));
preStep->setEnabled(true);
preStep->setAutoRepeat(true);
@ -387,7 +386,6 @@ void SystemBackup::initThirdWidget()
hlayoutCenterFont5->addSpacing(20);
// 下一步按钮
MyPushButton *nextStep = new MyPushButton(centerFont);
nextStep->setFixedSize(97, 36);
nextStep->setText(tr("Next"));
nextStep->setEnabled(true);
nextStep->setAutoRepeat(true);
@ -398,7 +396,6 @@ void SystemBackup::initThirdWidget()
hlayoutCenterFont5->addWidget(nextStep);
// 重新检测按钮
MyPushButton *recheck = new MyPushButton(centerFont);
recheck->setFixedSize(97, 36);
recheck->setText(tr("Recheck"));
recheck->setEnabled(true);
recheck->setAutoRepeat(true);
@ -874,7 +871,6 @@ void SystemBackup::initFifthWidget()
QHBoxLayout *hlayoutCenterFont3 = new QHBoxLayout;
// 取消按钮
MyPushButton *cancel = new MyPushButton(fifth);
cancel->setFixedSize(97, 36);
cancel->setText(tr("Cancel"));
cancel->setAutoRepeat(true);
hlayoutCenterFont3->addStretch();
@ -1205,7 +1201,6 @@ void SystemBackup::initLastWidget()
hlayoutCenterFont5->addSpacing(30);
// 返回首页
MyPushButton *homePage = new MyPushButton(centerFont);
homePage->setFixedSize(97, 36);
homePage->setText(tr("Home Page"));
homePage->setEnabled(true);
homePage->setAutoRepeat(true);
@ -1213,7 +1208,6 @@ void SystemBackup::initLastWidget()
hlayoutCenterFont5->addSpacing(20);
// 再试一次
MyPushButton *retry = new MyPushButton(centerFont);
retry->setFixedSize(97, 36);
retry->setText(tr("Retry"));
retry->setEnabled(true);
retry->setAutoRepeat(true);

View File

@ -354,7 +354,6 @@ void SystemRestore::initSecondWidget()
hlayoutCenterFont5->addSpacing(30);
// 上一步按钮
MyPushButton *preStep = new MyPushButton(centerFont);
preStep->setFixedSize(97, 36);
preStep->setText(tr("Back"));
preStep->setEnabled(true);
preStep->setAutoRepeat(true);
@ -363,7 +362,6 @@ void SystemRestore::initSecondWidget()
hlayoutCenterFont5->addSpacing(20);
// 下一步按钮
MyPushButton *nextStep = new MyPushButton(centerFont);
nextStep->setFixedSize(97, 36);
nextStep->setText(tr("Next"));
nextStep->setEnabled(true);
nextStep->setAutoRepeat(true);
@ -374,7 +372,6 @@ void SystemRestore::initSecondWidget()
hlayoutCenterFont5->addWidget(nextStep);
// 重新检测按钮
MyPushButton *recheck = new MyPushButton(centerFont);
recheck->setFixedSize(97, 36);
recheck->setText(tr("Recheck"));
recheck->setEnabled(true);
recheck->setAutoRepeat(true);
@ -918,7 +915,6 @@ void SystemRestore::initLastWidget()
hlayoutCenterFont5->addSpacing(30);
// 返回首页
MyPushButton *homePage = new MyPushButton(centerFont);
homePage->setFixedSize(97, 36);
homePage->setText(tr("Home Page"));
homePage->setEnabled(true);
homePage->setAutoRepeat(true);
@ -926,7 +922,6 @@ void SystemRestore::initLastWidget()
hlayoutCenterFont5->addSpacing(20);
// 再试一次
MyPushButton *retry = new MyPushButton(centerFont);
retry->setFixedSize(97, 36);
retry->setText(tr("Retry"));
retry->setEnabled(true);
retry->setAutoRepeat(true);

File diff suppressed because it is too large Load Diff