Linux optimization for frmStatus.

В окне "Status Server" снижено мерцание при обновлении строк активных процессов.
Была добавлена фиктивная строка в конец списка процессов при использовании фильтра.
В ctlSQLGrid добавлена проверка на совпадение цветов сетки и заголовков строк.
This commit is contained in:
lsv 2025-03-18 20:09:07 +05:00
parent 431017de6b
commit e7f545e444
2 changed files with 55 additions and 22 deletions

View file

@ -74,6 +74,21 @@ ctlSQLGrid::ctlSQLGrid(wxWindow* parent, wxWindowID id, const wxPoint& pos, cons
//SetUseNativeColLabels(true);
//UseNativeColHeader(true);
SetCellHighlightColour(wxColor(0, 0, 0));
#ifdef __WXGTK__
wxColour selbg = GetSelectionBackground();
wxColour labbg = GetLabelBackgroundColour();
wxString t1 = selbg.GetAsString();
wxString t2 = labbg.GetAsString();
wxColour cline = GetGridLineColour();
wxString t3 = cline.GetAsString();
if (labbg.GetRGB() == cline.GetRGB()) {
int min = wxMin(labbg.GetBlue(), labbg.GetGreen());
min = wxMin(min, labbg.GetRed());
if (min > 200) min = min - 30; else min = min + 30;
wxColour labbgn(min, min, min);
SetLabelBackgroundColour(labbgn);
}
#endif
grp = NULL;
isSort = false;
searchStr = "";
@ -118,7 +133,6 @@ void ctlSQLGrid::DrawColLabel(wxDC& dc, int col) {
wxRect rect(colLeft, 0, GetColWidth(col), m_colLabelHeight);
sqlResultTable* t = (sqlResultTable*)GetTable();
wxHeaderSortIconType sortArrow = t->getSortColumn(col) != 0
? t->getSortColumn(col) > 0
? wxHDR_SORT_ICON_UP