diff --git a/Applications/ProcessManager/ProcessTableModel.cpp b/Applications/ProcessManager/ProcessTableModel.cpp index a5bd507abc..a2aa5ff29a 100644 --- a/Applications/ProcessManager/ProcessTableModel.cpp +++ b/Applications/ProcessManager/ProcessTableModel.cpp @@ -24,7 +24,9 @@ ProcessTableModel::ProcessTableModel() endpwent(); m_generic_process_icon = GraphicsBitmap::load_from_file(GraphicsBitmap::Format::RGBA32, "/res/icons/gear16.rgb", { 16, 16 }); - ASSERT(m_generic_process_icon); + m_high_priority_icon = GraphicsBitmap::load_from_file(GraphicsBitmap::Format::RGBA32, "/res/icons/highpriority16.rgb", { 16, 16 }); + m_low_priority_icon = GraphicsBitmap::load_from_file(GraphicsBitmap::Format::RGBA32, "/res/icons/lowpriority16.rgb", { 16, 16 }); + m_normal_priority_icon = GraphicsBitmap::load_from_file(GraphicsBitmap::Format::RGBA32, "/res/icons/normalpriority16.rgb", { 16, 16 }); } ProcessTableModel::~ProcessTableModel() @@ -48,7 +50,7 @@ String ProcessTableModel::column_name(int column) const case Column::PID: return "PID"; case Column::State: return "State"; case Column::User: return "User"; - case Column::Priority: return "Priority"; + case Column::Priority: return "Pr"; case Column::Linear: return "Linear"; case Column::Physical: return "Physical"; case Column::CPU: return "CPU"; @@ -63,7 +65,7 @@ GTableModel::ColumnMetadata ProcessTableModel::column_metadata(int column) const case Column::Icon: return { 16, TextAlignment::CenterLeft }; case Column::PID: return { 25, TextAlignment::CenterRight }; case Column::State: return { 75, TextAlignment::CenterLeft }; - case Column::Priority: return { 65, TextAlignment::CenterLeft }; + case Column::Priority: return { 16, TextAlignment::CenterLeft }; case Column::User: return { 50, TextAlignment::CenterLeft }; case Column::Linear: return { 65, TextAlignment::CenterRight }; case Column::Physical: return { 65, TextAlignment::CenterRight }; @@ -103,7 +105,14 @@ GVariant ProcessTableModel::data(int row, int column) const case Column::PID: return process.current_state.pid; case Column::State: return process.current_state.state; case Column::User: return process.current_state.user; - case Column::Priority: return process.current_state.priority; + case Column::Priority: + if (process.current_state.priority == "High") + return *m_high_priority_icon; + if (process.current_state.priority == "Low") + return *m_low_priority_icon; + if (process.current_state.priority == "Normal") + return *m_normal_priority_icon; + return process.current_state.priority; case Column::Linear: return pretty_byte_size(process.current_state.linear); case Column::Physical: return pretty_byte_size(process.current_state.physical); case Column::CPU: return process.current_state.cpu_percent; diff --git a/Applications/ProcessManager/ProcessTableModel.h b/Applications/ProcessManager/ProcessTableModel.h index 0246f521ed..41185cc67f 100644 --- a/Applications/ProcessManager/ProcessTableModel.h +++ b/Applications/ProcessManager/ProcessTableModel.h @@ -45,4 +45,7 @@ private: Vector m_pids; int m_selected_row { -1 }; RetainPtr m_generic_process_icon; + RetainPtr m_high_priority_icon; + RetainPtr m_low_priority_icon; + RetainPtr m_normal_priority_icon; }; diff --git a/Base/res/icons/highpriority16.png b/Base/res/icons/highpriority16.png new file mode 100644 index 0000000000..c44c15c434 Binary files /dev/null and b/Base/res/icons/highpriority16.png differ diff --git a/Base/res/icons/highpriority16.rgb b/Base/res/icons/highpriority16.rgb new file mode 100644 index 0000000000..e7ec3be362 Binary files /dev/null and b/Base/res/icons/highpriority16.rgb differ diff --git a/Base/res/icons/lowpriority16.png b/Base/res/icons/lowpriority16.png new file mode 100644 index 0000000000..7e8c024cf3 Binary files /dev/null and b/Base/res/icons/lowpriority16.png differ diff --git a/Base/res/icons/lowpriority16.rgb b/Base/res/icons/lowpriority16.rgb new file mode 100644 index 0000000000..31bd72312c Binary files /dev/null and b/Base/res/icons/lowpriority16.rgb differ diff --git a/Base/res/icons/normalpriority16.png b/Base/res/icons/normalpriority16.png new file mode 100644 index 0000000000..43dc5231b3 Binary files /dev/null and b/Base/res/icons/normalpriority16.png differ diff --git a/Base/res/icons/normalpriority16.rgb b/Base/res/icons/normalpriority16.rgb new file mode 100644 index 0000000000..d95738f057 Binary files /dev/null and b/Base/res/icons/normalpriority16.rgb differ