diff --git a/#ubl-settings-resourcequota.glade# b/#ubl-settings-resourcequota.glade# new file mode 100644 index 0000000..1107ca6 --- /dev/null +++ b/#ubl-settings-resourcequota.glade# @@ -0,0 +1,4118 @@ + + + + + + + False + False + True + center + com.ublinux.ubl-settings-resourcequota + dialog + True + ubl-settings-resourcequota + 1.0 + Copyright © 2022 - 2023, UBSoft LLC + CPU and RAM quotas + https://wiki.ublinux.ru/ru/Программное_обеспечение/Программы_и_утилиты/Все/ubl-settings-resourcequota + Project Home Page + Это приложение распространяется без каких-либо гарантий. +Подробнее в <a href="https://www.gnu.org/licenses/old-licenses/gpl-2.0.html">GNU General Public License, версии 2 или позднее</a>. + UBGroup + UBGroup + com.ublinux.ubl-settings-resourcequota + True + gpl-2-0 + + + True + False + vertical + 2 + + + False + end + + + False + False + 1 + + + + + + + + + + True + False + True + + + True + False + 5 + 5 + 5 + 5 + 2 + ubl-settings-resourcequota + + + + + + + + + + True + False + + + 90 + True + False + 5 + 5 + 5 + 5 + 6 + 6 + 69 + com.ublinux.ubl-settings-resourcequota + + + False + True + 0 + + + + + True + False + + + True + False + + + True + False + vertical + + + 255 + True + False + end + CPU and RAM quotas + 0 + + + + + + + + True + True + 0 + + + + + 255 + True + False + start + Configuring CPU and RAM quota settings for groups and users of the system + True + 0 + + + + + + + + True + True + 1 + + + + + False + True + 0 + + + + + True + True + 0 + + + + + True + True + 1 + + + + + 1 + 100000 + 1 + 1 + 10 + + + 10000 + 1 + 10 + + + 10000 + 1 + 10 + + + 1000023 + 1 + 10 + + + 10000 + 1 + 10 + + + 100023 + 1 + 10 + + + 100023 + 1 + 10 + + + 10000 + 1 + 10 + + + 10000 + 1 + 10 + + + False + start + False + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + vertical + + + True + False + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Quota object + + + False + True + 0 + + + + + 100 + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0 + 0 + + User + Group + Process + Slice + + + + True + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + + + False + True + 2 + + + + + False + True + 0 + + + + + True + False + vertical + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0.019999999552965164 + in + + + True + False + 12 + + + True + False + + + True + False + vertical + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Soft Restriction + 0 + + + False + True + 0 + + + + + True + False + + + True + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + + + + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment4 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0 + 0 + + Kb + Mb + Gb + Tb + + + + False + True + 2 + + + + + False + True + 1 + + + + + True + True + 0 + + + + + True + False + vertical + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Severe Restriction + 0 + + + False + True + 0 + + + + + True + False + + + True + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + + + + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment6 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0 + 0 + + Kb + Mb + Gb + Tb + + + + False + True + 2 + + + + + False + True + 1 + + + + + True + True + 1 + + + + + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + RAM limit + + + + + False + True + 0 + + + + + True + False + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0.019999999552965164 + in + + + True + False + 12 + + + True + False + + + True + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + + + + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment7 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0 + 0 + + Kb + Mb + Gb + Tb + + + + False + True + 2 + + + + + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Paging file limit + + + + + True + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0.019999999552965164 + in + + + True + False + 12 + + + True + False + + + True + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + + + + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment5 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + % + + + False + True + 2 + + + + + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + CPU limit + + + + + True + True + 1 + + + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0.019999999552965164 + in + + + True + False + 12 + + + True + False + vertical + + + True + False + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Device: + 0 + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + + + True + True + 1 + + + + + False + True + 0 + + + + + True + False + + + True + False + vertical + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Read + 0 + + + False + True + 0 + + + + + True + False + + + True + True + False + 5 + 5 + 5 + 5 + 4 + 5 + True + + + + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment8 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0 + 0 + + Kb + Mb + Gb + Tb + + + + False + True + 2 + + + + + False + True + 1 + + + + + True + True + 0 + + + + + True + False + vertical + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Write + 0 + + + False + True + 0 + + + + + True + False + + + True + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + + + + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment9 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0 + 0 + + Kb + Mb + Gb + Tb + + + + False + True + 2 + + + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 1 + + + + + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Input/Output limit of block devices + + + + + False + True + 2 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0.019999999552965164 + in + + + True + False + 12 + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + + + + + + + True + False + Manual input (for advanced users) + + + + + False + True + 3 + + + + + False + True + 1 + + + + + True + False + + + True + False + + + False + True + 0 + + + + + True + True + True + 5 + 5 + 5 + 5 + 5 + 5 + + + True + False + + + True + False + gtk-stop + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + Cancel + + + False + True + 1 + + + + + + + False + True + end + 1 + + + + + True + True + True + 5 + 5 + 5 + 5 + 5 + 5 + + + True + False + + + True + False + gtk-save + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + Save + + + False + True + 1 + + + + + + + False + True + end + 1 + + + + + False + True + 2 + + + + + + + True + False + True + + + True + False + Settings quotas - Adding + + + + + + + + True + False + 32 + com.ublinux.ubl-settings-resourcequota + 5 + + + + + + + False + start + False + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + vertical + + + True + False + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Quota object + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + + + False + True + 2 + + + + + False + True + 0 + + + + + True + False + vertical + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0.019999999552965164 + in + + + True + False + 12 + + + True + False + + + True + False + vertical + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Soft Restriction + 0 + + + False + True + 0 + + + + + True + False + + + True + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + + + + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment4 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0 + 0 + + Kb + Mb + Gb + Tb + + + + False + True + 2 + + + + + False + True + 1 + + + + + True + True + 0 + + + + + True + False + vertical + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Severe Restriction + 0 + + + False + True + 0 + + + + + True + False + + + True + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + + + + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment6 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0 + 0 + + Kb + Mb + Gb + Tb + + + + False + True + 2 + + + + + False + True + 1 + + + + + True + True + 1 + + + + + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + RAM limit + + + + + False + True + 0 + + + + + True + False + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0.019999999552965164 + in + + + True + False + 12 + + + True + False + + + True + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + + + + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment7 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0 + 0 + + Kb + Mb + Gb + Tb + + + + False + True + 2 + + + + + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Paging file limit + + + + + True + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0.019999999552965164 + in + + + True + False + 12 + + + True + False + + + True + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + + + + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment5 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + % + + + False + True + 2 + + + + + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + CPU limit + + + + + True + True + 1 + + + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0.019999999552965164 + in + + + True + False + 12 + + + True + False + vertical + + + True + False + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Device: + 0 + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + + + True + True + 1 + + + + + False + True + 0 + + + + + True + False + + + True + False + vertical + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Read + 0 + + + False + True + 0 + + + + + True + False + + + True + True + False + 5 + 5 + 5 + 5 + 4 + 5 + True + + + + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment9 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0 + 0 + + Kb + Mb + Gb + Tb + + + + False + True + 2 + + + + + False + True + 1 + + + + + True + True + 0 + + + + + True + False + vertical + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Write + 0 + + + False + True + 0 + + + + + True + False + + + True + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + + + + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment8 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0 + 0 + + Kb + Mb + Gb + Tb + + + + False + True + 2 + + + + + False + True + 1 + + + + + True + True + 1 + + + + + False + True + 1 + + + + + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Input/Output limit of block devices + + + + + False + True + 2 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0.019999999552965164 + in + + + True + False + 12 + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + + + + + + + True + False + Manual input (for advanced users) + + + + + False + True + 3 + + + + + False + True + 1 + + + + + True + False + + + True + False + + + False + True + 0 + + + + + True + True + True + 5 + 5 + 5 + 5 + 5 + 5 + + + True + False + + + True + False + gtk-stop + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + Cancel + + + False + True + 1 + + + + + + + False + True + end + 1 + + + + + True + True + True + 5 + 5 + 5 + 5 + 5 + 5 + + + True + False + + + True + False + gtk-save + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + Save + + + False + True + 1 + + + + + + + False + True + end + 1 + + + + + False + True + 2 + + + + + + + True + False + True + + + True + False + Settings quotas - Editing + + + + + + + + True + False + 32 + com.ublinux.ubl-settings-resourcequota + 5 + + + + + + + True + False + dialog-information-symbolic + + + True + False + dialog-question-symbolic + + + True + False + False + + + imagemenuitem + True + False + image2 + False + + + + + + imagemenuitem + True + False + image1 + False + + + + + + True + False + process-stop-symbolic + + + True + False + emblem-ok-symbolic + + + False + False + 450 + dialog-question-symbolic + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + vertical + 10 + + + True + False + + + True + False + start + 20 + 20 + dialog-question-symbolic + 6 + + + False + True + 0 + + + + + True + False + vertical + + + True + False + start + 10 + 5 + Would you like to read documentation in the Web? + True + 0 + + + + + + + False + True + 0 + + + + + True + False + start + start + 10 + 10 + You will be redirected to documentation website where documentation is +translated and supported by community. + True + 0 + + + + False + True + 1 + + + + + Always redirect to online documentation + True + True + False + end + True + + + + False + True + end + 2 + + + + + + True + True + 1 + + + + + + True + True + 0 + + + + + True + False + 30 + True + + + Cancel + True + True + True + image8 + + + + True + True + 0 + + + + + Read Online + True + True + True + image9 + + + + True + True + 1 + + + + + False + True + 1 + + + + + + + True + False + True + + + True + False + UBLinux Settings + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + True + False + False + + + True + False + + + + + + True + False + + + + + + True + False + False + + + True + False + + + + + + True + False + + + + + + True + False + True + + + + + + 640 + 500 + False + 700 + 500 + com.ublinux.ubl-settings-resourcequota + center + + + True + False + vertical + + + True + False + vertical + + + True + False + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 25 + + + False + True + 0 + + + + + True + False + start + 5 + 5 + 5 + 5 + 6 + 6 + + + + + + + False + True + 1 + + + + + False + True + 0 + + + + + True + False + vertical + + + 81 + True + False + + + True + False + start + + + -1 + + + + + False + True + 0 + + + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + True + vertical + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + True + vertical + + + True + True + + + True + False + vertical + + + True + True + in + + + True + False + + + True + True + liststore + 0 + + + + + + Type quota + True + + + + 0 + + + + + + + Quota +object + True + + + + 1 + + + + + + + Soft RAM limit, +(volume) + True + + + + 2 + + + + + + + Hard RAM limit, +(volume) + True + + + + 3 + + + + + + + Swap file +limit +(volume) + True + + + + 4 + + + + + + + CPU limit +(%) + True + + + + 5 + + + + + + + I/O +limit +(read) + True + + + + 6 + + + + + + + I/O +limit +(write) + True + + + + 7 + + + + + + + + + + + True + True + 0 + + + + + True + False + + + True + True + True + 5 + 5 + 5 + 5 + 5 + 5 + + + True + False + + + True + False + com.ublinux.ubl-settings-resourcequota.funnel + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + Filters + + + False + True + 1 + + + + + + + False + True + 0 + + + + + + + + True + True + True + 5 + 5 + 5 + 5 + 5 + 5 + + + True + False + + + True + False + tab-new-symbolic + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + Add + + + False + True + 1 + + + + + + + False + True + end + 2 + + + + + True + True + True + 5 + 5 + 5 + 5 + 5 + 5 + + + True + False + + + True + False + error-correct-symbolic + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + Edit + + + False + True + 1 + + + + + + + False + True + end + 3 + + + + + True + True + True + 5 + 5 + 5 + 5 + 5 + 5 + + + True + False + + + True + False + software-remove-symbolic + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + Remove + + + False + True + 1 + + + + + + + False + True + end + 4 + + + + + True + True + True + 5 + 5 + 5 + 5 + 5 + 5 + + + True + False + + + True + False + dialog-information-symbolic + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + Information + + + False + True + 1 + + + + + + + False + True + end + 5 + + + + + False + True + 2 + + + + + + + True + False + List quotas + + + False + + + + + True + False + vertical + + + True + False + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + Update every + + + False + True + 0 + + + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + adjustment1 + + + False + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + seconds + + + False + True + 2 + + + + + True + True + True + 5 + 5 + 5 + 5 + 5 + 5 + + + True + False + reload + + + + + True + True + 3 + + + + + False + True + 0 + + + + + True + False + + + True + False + True + natural + adjustment3 + natural + UTF-8 + True + False + + + True + True + 0 + + + + + True + False + vertical + adjustment3 + + + False + True + 1 + + + + + True + True + 1 + + + + + 1 + + + + + True + False + Dispatcher + + + 1 + False + + + + + True + False + vertical + + + True + False + + + All groups including empty + True + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + + + False + True + 0 + + + + + Core streams + True + True + False + 5 + 5 + 5 + 5 + 5 + 5 + True + + + False + True + 1 + + + + + False + True + 0 + + + + + True + False + + + True + False + True + natural + adjustment2 + natural + UTF-8 + 1024 + True + False + + + True + True + 0 + + + + + True + False + vertical + adjustment2 + + + False + True + 1 + + + + + True + True + 1 + + + + + 2 + + + + + True + False + Processes + + + 2 + False + + + + + True + False + vertical + + + True + False + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + View properties for + + + False + True + 0 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + 0 + 0 + + User + Group + Process + Slice + + + + True + True + 1 + + + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + + + True + True + 2 + + + + + False + True + 0 + + + + + True + False + + + True + False + True + natural + adjustment3 + natural + UTF-8 + True + False + + + True + True + 0 + + + + + True + False + vertical + adjustment3 + + + False + True + 1 + + + + + True + True + 1 + + + + + 3 + + + + + True + False + Information + + + 3 + False + + + + + True + True + 0 + + + + + False + True + 0 + + + + + False + True + 2 + + + + + True + True + 0 + + + + + + + True + False + True + + + True + False + 5 + 5 + 5 + 5 + 2 + ubl-settings-resourcequota + + + + + + + + True + False + 5 + 5 + 5 + 5 + 6 + 6 + 32 + com.ublinux.ubl-settings-resourcequota + + + + + True + False + + + True + True + False + True + menuSave + + + True + False + + + True + False + Save + + + False + True + 0 + + + + + True + False + pan-down-symbolic + + + False + True + 1 + + + + + + + False + True + 0 + + + + + True + True + True + False + True + True + menuAbout + none + + + + + + + False + True + 1 + + + + + end + 1 + + + + + True + False + + + True + True + False + True + menuLoad + + + True + False + + + True + False + Load + + + False + True + 0 + + + + + True + False + pan-down-symbolic + + + False + True + 1 + + + + + + + False + True + 0 + + + + + 2 + + + + + + + + vertical + + + + + + + + False + start + False + + + True + False + 5 + 5 + 5 + 5 + 5 + 5 + vertical + + + Type quota + True + True + False + start + True + + + False + True + 2 + + + + + Quota volume + True + True + False + start + True + + + False + True + 3 + + + + + Soft RAM limit, (volume) + True + True + False + start + True + + + False + True + 4 + + + + + True + False + end + 5 + 5 + True + + + gtk-cancel + True + True + True + center + True + + + False + True + 0 + + + + + gtk-save + True + True + True + center + True + + + False + True + 1 + + + + + False + True + end + 5 + + + + + Hard RAM limit, (volume) + True + True + False + start + True + + + False + True + 6 + + + + + Swap file limit (volume) + True + True + False + start + True + + + False + True + 7 + + + + + CPU limit (%) + True + True + False + start + True + + + False + True + 8 + + + + + I/O limit (write) + True + True + False + start + True + + + False + True + 8 + + + + + I/O limit (read) + True + True + False + start + True + + + False + True + 9 + + + + + + + True + False + True + + + True + False + Filters + + + + + + + + True + False + 32 + com.ublinux.ubl-settings-resourcequota + 5 + + + + + + diff --git a/source/ubl-settings-resourcequota.c b/source/ubl-settings-resourcequota.c index 5060cbf..ab69490 100644 --- a/source/ubl-settings-resourcequota.c +++ b/source/ubl-settings-resourcequota.c @@ -245,8 +245,10 @@ void main_update_information() { philos_array_string_remove_char(&fill_cmb_2, "\n", size); } if (menu_id >= 0) { + g_signal_handlers_disconnect_by_func(G_OBJECT(widgets->cbtMainInfoLevel2), main_cbx_2_event, NULL); gtk_combo_box_text_remove_all(GTK_COMBO_BOX_TEXT(widgets->cbtMainInfoLevel2)); philos_fill_combo_box_text(widgets->cbtMainInfoLevel2, fill_cmb_2, size); + g_signal_connect(G_OBJECT(widgets->cbtMainInfoLevel2),"changed",G_CALLBACK(main_cbx_2_event), NULL); // yon_terminal_integrated_launch(widgets->vteProcesses, cmd, NULL, NULL); } } @@ -476,18 +478,17 @@ void set_pow_size(char* str_find, int** array_size, char*** array_data , int ind } void main_cbx_2_event() { - int menu_id = gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->cbtMainInfo)); - char* cmd_text_param = gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(widgets->cbtMainInfo)); + int menu_id = gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->cbtMainInfoLevel2)); + char* cmd_text_param = gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(widgets->cbtMainInfoLevel2)); char* cmd = NULL; if (menu_id >= 0) { - puts("2222"); cmd = yon_char_unite("systemctl status ", cmd_text_param ," --no-pager", NULL); yon_terminal_integrated_launch(widgets->vteInformation, cmd, NULL, NULL); } - if (cmd_text_param != NULL) { + if (menu_id >= 0) { free(cmd_text_param); } - if (cmd != NULL) { + if (menu_id >= 0) { free(cmd); } @@ -657,7 +658,6 @@ void main_event(main_window *widgets) { g_signal_connect(G_OBJECT(widgets->btnMainShowAllEmpty), "toggled", G_CALLBACK(main_update_processes), NULL); g_signal_connect(G_OBJECT(widgets->btnMainShowCoreStream), "toggled", G_CALLBACK(main_update_processes), NULL); g_signal_connect(G_OBJECT(widgets->cbtMainInfo),"changed",G_CALLBACK(main_update_information), NULL); - g_signal_connect(G_OBJECT(widgets->cbtMainInfoLevel2),"popdown",G_CALLBACK(main_cbx_2_event), NULL); g_signal_connect(G_OBJECT(widgets->btnDelQuotas), "clicked", G_CALLBACK(tree_view_del_line), widgets); g_signal_connect(G_OBJECT(widgets->treeViewMain), "cursor-changed", G_CALLBACK(tree_view_select), widgets); g_signal_connect(G_OBJECT(widgets->LoadGlobalMenuItem), "activate", G_CALLBACK(load_global_cfg), widgets); diff --git a/source/ubl-settings-resourcequota.h b/source/ubl-settings-resourcequota.h index 331f5f1..ebfef2b 100755 --- a/source/ubl-settings-resourcequota.h +++ b/source/ubl-settings-resourcequota.h @@ -15,11 +15,9 @@ #include "view_edit.h" #include "my_device.h" - - #ifdef WEBKIT_FOUND - #include -#endif +#include +#endif #include "ubl-strings.h" #define WIKI_LINK "https://wiki.ublinux.ru/ru/Программное_обеспечение/Программы_и_утилиты/Все/ubl-settings-resourcequota" @@ -30,19 +28,21 @@ #define banner_path "/usr/share/ubl-settings-resourcequota/images/ubl-settings-resourcequota-banner.png" #define CssPath "/usr/share/ubl-settings-resourcequota/css/ubl-settings-resourcequota.css" -#define LocalePath "/usr/share/locale" +#define LocalePath "/usr/share/locale" #define LocaleName "ubl-settings-resourcequota" #define CMD_LOAD_GLOBAL "ubconfig --default --source global get security" #define CMD_LOAD_SYSTEM "ubconfig --default --source system get security" #define CMD_SAVE_GLOBAL "ubconfig --default --source global set security" #define CMD_SAVE_SYSTEM "ubconfig --default --source system set security" #define CMD_GET_SLICE_SERVICE "systemd-cgls --no-page" -typedef char* string; +#define CMD_GET_GROUP "cut -d: -f1 /etc/group" +typedef char *string; string version_application = ""; static char *local; -typedef struct { +typedef struct +{ int always_open_documentation; int win_pos_x; int win_pos_y; @@ -52,7 +52,7 @@ typedef struct { int socket_id; int load_socket_id; int save_socket_id; - + int lock_help; int lock_save_local; int lock_save_global; @@ -77,21 +77,22 @@ typedef struct { config_str i_o_limit_write; config_str disk; - int* type_quota_size; - int* quota_volume_size; - int* soft_raw_limit_size; - int* hard_raw_limit_size; - int* swap_size; - int* cpu_limit_size; - int* i_o_limit_read_size; - int* i_o_limit_write_size; + int *type_quota_size; + int *quota_volume_size; + int *soft_raw_limit_size; + int *hard_raw_limit_size; + int *swap_size; + int *cpu_limit_size; + int *i_o_limit_read_size; + int *i_o_limit_write_size; int size_tree_view; - dictionary* load_global_cfg; - dictionary* load_system_cfg; - dictionary* save_cfg_gui; + dictionary *load_global_cfg; + dictionary *load_system_cfg; + dictionary *save_cfg_gui; } config; -typedef struct { +typedef struct +{ GtkWidget *Window; GtkTreeViewColumn *tvc0; @@ -148,8 +149,8 @@ typedef struct { GtkWidget *AboutMenuItem; } main_window; - -typedef struct { +typedef struct +{ GtkWidget *Window; GtkWidget *HatText; @@ -159,7 +160,7 @@ typedef struct { GtkWidget *CloseButton; GtkWidget *AcceptButton; - + } documentation_confirmation_window; main_window *setup_window(); @@ -185,16 +186,15 @@ void tree_view_del_line(); void main_fill_tree_view_after_remove(); void load_system_cfg(); void load_global_cfg(); -void template_cfg(char* cmd, dictionary* load_cfg); -void str_split_value(char* values, int index); -void set_pow_size(char* str_find, int** array_size, char*** array_data, int index); -void str_split_key(char* source_value, int index); +void template_cfg(char *cmd, dictionary *load_cfg); +void str_split_value(char *values, int index); +void set_pow_size(char *str_find, int **array_size, char ***array_data, int index); +void str_split_key(char *source_value, int index); void fill_tree_view(int start, int size, int flag_gui_add); void clear_array(); void init_cfg_array(int index); -void wrapper_template_save(char* check_flag); +void wrapper_template_save(char *check_flag); void wrapper_system_save(); void wrapper_global_save(); void wrapper_all_save(); -void template_format_str_save(dictionary* load_cfg, char* source_cmd); - +void template_format_str_save(dictionary *load_cfg, char *source_cmd); diff --git a/source/ubl-utils.c b/source/ubl-utils.c index 5650adc..4e03d75 100644 --- a/source/ubl-utils.c +++ b/source/ubl-utils.c @@ -1100,7 +1100,7 @@ void yon_terminal_integrated_launch(GtkWidget *terminal, char* command, void *en vte_terminal_set_size(VTE_TERMINAL(terminal),10,15); VtePty *pty = vte_pty_new_sync(VTE_PTY_DEFAULT,NULL,NULL); vte_terminal_set_pty(VTE_TERMINAL(terminal),pty); - char *install_command=yon_char_unite("tput cup 0 0 && tput ed; ",command,"\n",NULL); + char *install_command=yon_char_unite("tput cup 0 0 && tput ed; ",command, "; exit 0\n",NULL); if(endwork_function) g_signal_connect(G_OBJECT(terminal), "child-exited", G_CALLBACK(endwork_function), endwork_function_argument); vte_terminal_spawn_async(VTE_TERMINAL(terminal), @@ -1126,7 +1126,7 @@ void yon_terminal_integrated_launch(GtkWidget *terminal, char* command, void *en NULL, NULL, NULL); - vte_terminal_set_scrollback_lines(VTE_TERMINAL(terminal), 100); + vte_terminal_set_scrollback_lines(VTE_TERMINAL(terminal), -1); vte_terminal_set_scroll_on_output(VTE_TERMINAL(terminal), TRUE); vte_terminal_set_scroll_on_keystroke(VTE_TERMINAL(terminal), TRUE); gtk_widget_show_all(terminal);