开源 企业版 高校版 私有云 模力方舟 AI 队友
代码拉取完成,页面将自动刷新
捐赠
捐赠前请先登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
1 Star 0 Fork 2K

侠影萍踪/ndd

forked from 爬山虎/ndd
加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
已有帐号? 立即登录
文件
master
分支 (2)
标签 (45)
master
cmake-dev
v3.6.4
v3.6.3
v3.6.2
v3.6.1
v3.6
v3.5.1
v3.5
v3.4
v3.3
v3.2.1
v3.2
v3.1
v3.0
v2.20.1
v2.20
v2.19
v2.18
v2.17
v2.16
v2.15
master
分支 (2)
标签 (45)
master
cmake-dev
v3.6.4
v3.6.3
v3.6.2
v3.6.1
v3.6
v3.5.1
v3.5
v3.4
v3.3
v3.2.1
v3.2
v3.1
v3.0
v2.20.1
v2.20
v2.19
v2.18
v2.17
v2.16
v2.15
克隆/下载
克隆/下载
提示
下载代码请复制以下命令到终端执行
为确保你提交的代码身份被 Gitee 正确识别,请执行以下命令完成配置
初次使用 SSH 协议进行代码克隆、推送等操作时,需按下述提示完成 SSH 配置
1 生成 RSA 密钥
2 获取 RSA 公钥内容,并配置到 SSH公钥
在 Gitee 上使用 SVN,请访问 使用指南
使用 HTTPS 协议时,命令行会出现如下账号密码验证步骤。基于安全考虑,Gitee 建议 配置并使用私人令牌 替代登录密码进行克隆、推送等操作
Username for 'https://gitee.com': userName
Password for 'https://userName@gitee.com': # 私人令牌
master
分支 (2)
标签 (45)
master
cmake-dev
v3.6.4
v3.6.3
v3.6.2
v3.6.1
v3.6
v3.5.1
v3.5
v3.4
v3.3
v3.2.1
v3.2
v3.1
v3.0
v2.20.1
v2.20
v2.19
v2.18
v2.17
v2.16
v2.15
notepad--
/
src
/
QTreeWidgetSortItem.cpp
notepad--
/
src
/
QTreeWidgetSortItem.cpp
QTreeWidgetSortItem.cpp 3.47 KB
一键复制 编辑 原始数据 按行查看 历史
爬山虎 提交于 2022年11月02日 21:03 +08:00 . 整理代码代码
#include "QTreeWidgetSortItem.h"
#include "rcglobal.h"
/* 自己重新实现一个QTreeWidgetSortItem,主要是为了重载函数的排序功能,不适应默认的名字排序,而是使用
* 每个项自带的tip字符串排序。这样做是因为对齐的时候,有些空白对齐项目,并没有名称,就会导致无法排序
*/
int QTreeWidgetSortItem::s_sortType = 0;
bool QTreeWidgetSortItem::s_syncOrder = false;
QTreeWidgetSortItem::QTreeWidgetSortItem(int type):QTreeWidgetItem(type)
{
}
QTreeWidgetSortItem::QTreeWidgetSortItem(const QStringList &strings, int type):QTreeWidgetItem(strings, type)
{
}
QTreeWidgetSortItem::~QTreeWidgetSortItem()
{
}
bool QTreeWidgetSortItem::operator<(const QTreeWidgetItem & other) const
{
if (s_sortType == 0)
{
if (!s_syncOrder) //按名称排序
{
//目录最大,放在文件前面。都是目录则按照名称排序
if ((type() == RC_DIR) && (other.type() == RC_DIR))
{
goto cmp_name;
}
else if ((type() == RC_DIR) && (other.type() != RC_DIR))
{
return false;
}
else if ((type() != RC_DIR) && (other.type() == RC_DIR))
{
return true;
}
cmp_name:
QString a = this->data(0, Item_RelativePath).toString();
QString b = other.data(0, Item_RelativePath).toString();
return (a.compare(b, Qt::CaseInsensitive) > 0);
}
else
{
//同步序号,按序号进行排序
#if 0
if ((type() == RC_DIR) && (other.type() == RC_DIR))
{
QString a = this->data(0, Item_RelativePath).toString();
QString b = other.data(0, Item_RelativePath).toString();
return !(a.compare(b, Qt::CaseInsensitive) > 0);
}
else if ((type() == RC_DIR) && (other.type() != RC_DIR))
{
return true;
}
else if ((type() != RC_DIR) && (other.type() == RC_DIR))
{
return false;
}
cmp_index:
#endif
//同步对方的操作。
int a = this->data(0, Item_Index).toInt();
int b = other.data(0, Item_Index).toInt();
return(a > b);
}
}
else if (s_sortType == 1) //按大小排序
{
//目录最大,放在文件前面。都是目录则按照名称排序
if ((type() == RC_DIR) && (other.type() == RC_DIR))
{
qint64 a = this->data(0, DIR_ITEM_MAXSIZE_FILE).toULongLong();
qint64 b = other.data(0, DIR_ITEM_MAXSIZE_FILE).toULongLong();
return(a > b);
#if 0
QString a = this->data(0, Item_RelativePath).toString();
QString b = other.data(0, Item_RelativePath).toString();
return (a.compare(b, Qt::CaseInsensitive) > 0);
#endif
}
else if ((type() == RC_DIR) && (other.type() != RC_DIR))
{
return false;
}
else if ((type() != RC_DIR) && (other.type() == RC_DIR))
{
return true;
}
int leftSize = this->text(1).toInt();
int rightSize = other.text(1).toInt();
return(leftSize > rightSize);
}
else if (s_sortType == 2) //by 修改日期
{
//目录最大,放在文件前面。都是目录则按照名称排序
if ((type() == RC_DIR) && (other.type() == RC_DIR))
{
QString a = this->data(0, Item_RelativePath).toString();
QString b = other.data(0, Item_RelativePath).toString();
return (a.compare(b, Qt::CaseInsensitive) > 0);
}
else if ((type() == RC_DIR) && (other.type() != RC_DIR))
{
return false;
}
else if ((type() != RC_DIR) && (other.type() == RC_DIR))
{
return true;
}
QString a = this->text(2);
QString b = other.text(2);
return(a.compare(b, Qt::CaseInsensitive) > 0);
}
return false;
}
Loading...
举报
举报成功
我们将于2个工作日内通过站内信反馈结果给你!
请认真填写举报原因,尽可能描述详细。
请选择举报类型
取消
发送
误判申诉

此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。

如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。

取消
提交

简介

notepad--是一个国产跨平台、轻量级的文本编辑器,是替换notepad++的一种选择。其内置强大的代码对比功能,让你丢掉付费的beyond compare。
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
编辑仓库简介
简介内容
主页
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/MicroBitLab/notepad--.git
git@gitee.com:MicroBitLab/notepad--.git
MicroBitLab
notepad--
ndd
master
点此查找更多帮助

搜索帮助

评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册

AltStyle によって変換されたページ (->オリジナル) /