pull/2/head
Igor Belitskiy 2 years ago
parent d2cfd67972
commit ead73a9a01

3
.gitignore vendored

@ -1,4 +1,5 @@
.vscode/ .vscode/
ubl-settings-resourcequota.glade~ ubl-settings-resourcequota.glade~
ubl-settings-resourcequota_ru.po~ ubl-settings-resourcequota_ru.po~
source/ubl-cmake.h source/ubl-cmake.h
ubl-settings-resourcequota

@ -1,18 +1,17 @@
cmake_minimum_required(VERSION 3.7) cmake_minimum_required(VERSION 3.23)
project(ubl-settings-resourcequota) project(ubl-settings-resourcequota)
find_package(PkgConfig REQUIRED) find_package(PkgConfig REQUIRED)
pkg_check_modules(GTK REQUIRED gtk+-3.0) pkg_check_modules(GTK3 REQUIRED gtk+-3.0)
include_directories(${GTK_INCLUDE_DIRS}) include_directories(${GTK3_INCLUDE_DIRS})
link_directories(${GTK_LIBRARY_DIRS}) link_directories(${GTK3_LIBRARY_DIRS})
add_definitions(${GTK_CFLAGS_OTHER}) add_definitions(${GTK3_CFLAGS_OTHER})
pkg_check_modules(VTE291 REQUIRED vte-2.91)
pkg_check_modules(VTE REQUIRED vte-2.91) include_directories(${VTE291_INCLUDE_DIRS})
include_directories(${VTE_INCLUDE_DIRS}) link_directories(${VTE291_LIBRARY_DIRS})
link_directories(${VTE_LIBRARY_DIRS}) add_definitions(${VTE291_CFLAGS_OTHER})
add_definitions(${VTE_CFLAGS_OTHER})
find_library(WEBKIT_LIBRARIES_FOUND webkit2gtk-4.0 webkit2gtk-web-extension-4.0) find_library(WEBKIT_LIBRARIES_FOUND webkit2gtk-4.0 webkit2gtk-web-extension-4.0)
@ -25,8 +24,7 @@ if(WEBKIT_LIBRARIES_FOUND)
add_definitions(${WEBKIT_CFLAGS_OTHER}) add_definitions(${WEBKIT_CFLAGS_OTHER})
endif() endif()
configure_file(ubl-cmake.in ubl-cmake.h) configure_file(ubl-settings-resourcequota.h.in ubl-settings-resourcequota-cm.h)
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -std=c++2a") #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -std=c++2a")
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -lm") #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -lm")
@ -36,29 +34,26 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissin
-fstack-clash-protection -fcf-protection") -fstack-clash-protection -fcf-protection")
set(SOURCE_FILES set(SOURCE_FILES
view/ubl-settings-resourcequota.c ubl-settings-resourcequota.c
view/ubl-settings-resourcequota.h ubl-settings-resourcequota.h
view/filters.c filters.c
view/filters.h filters.h
view/view_add.c view_add.c
view/view_add.h view_add.h
view/view_edit.c view_edit.c
view/view_edit.h view_edit.h
view/ubl-strings.h ubl-strings.h
view/ubl-utils.h ubl-utils.h
view/ubl-utils.c ubl-utils.c
ubl-cmake.h) ubl-settings-resourcequota-cm.h)
set(LIBRARIES set(LIBRARIES
${GTK_LIBRARIES} ${GTK3_LIBRARIES}
${VTE_LIBRARIES}
${WEBKIT_LIBRARIES} ${WEBKIT_LIBRARIES}
${VTE291_LIBRARIES}
pthread) pthread)
add_executable(${PROJECT_NAME} ${SOURCE_FILES}) add_executable(${PROJECT_NAME} ${SOURCE_FILES})
target_link_libraries(${PROJECT_NAME} PUBLIC ${LIBRARIES}) target_link_libraries(${PROJECT_NAME} PUBLIC ${LIBRARIES})
target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_BINARY_DIR}) target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_BINARY_DIR})
install(TARGETS ubl-settings-resourcequota DESTINATION bin) install(TARGETS ${PROJECT_NAME} DESTINATION bin)

@ -1 +0,0 @@
#cmakedefine WEBKIT_FOUND

@ -130,6 +130,10 @@ main_window *setup_window(){
widgets->tvc6 = GTK_TREE_VIEW_COLUMN(gtk_builder_get_object(builder,"tvc6")); widgets->tvc6 = GTK_TREE_VIEW_COLUMN(gtk_builder_get_object(builder,"tvc6"));
widgets->tvc7 = GTK_TREE_VIEW_COLUMN(gtk_builder_get_object(builder,"tvc7")); widgets->tvc7 = GTK_TREE_VIEW_COLUMN(gtk_builder_get_object(builder,"tvc7"));
widgets->vteDispatcher = yon_gtk_builder_get_widget(builder,"vteDispatcher");
widgets->spinUpdateDispatcher = yon_gtk_builder_get_widget(builder,"spinUpdateDispatcher");
widgets->btnUpdateDispatcher = yon_gtk_builder_get_widget(builder,"btnUpdateDispatcher");
widgets->btnSaveCfg = yon_gtk_builder_get_widget(builder,"btnSaveCfg"); widgets->btnSaveCfg = yon_gtk_builder_get_widget(builder,"btnSaveCfg");
widgets->notebookMain = yon_gtk_builder_get_widget(builder,"notebookMain"); widgets->notebookMain = yon_gtk_builder_get_widget(builder,"notebookMain");
@ -184,6 +188,13 @@ main_window *setup_window(){
return widgets; return widgets;
} }
void main_update_dispatcher() {
int second = gtk_spin_button_get_value(GTK_SPIN_BUTTON(widgets->spinUpdateDispatcher));
char *cmd = "systemd-cgtop";
// yon_terminal_integrated_launch(widgets->vteDispatcher, cmd, NULL, NULL);
}
void main_visible_columns(GtkWidget *self) { void main_visible_columns(GtkWidget *self) {
gboolean *flags_filters = filters_get_flag(); gboolean *flags_filters = filters_get_flag();
gtk_tree_view_column_set_visible(widgets->tvc0, flags_filters[0]); gtk_tree_view_column_set_visible(widgets->tvc0, flags_filters[0]);
@ -215,6 +226,7 @@ void main_event(main_window *widgets) {
g_signal_connect(G_OBJECT(widgets->btnAdd),"clicked",G_CALLBACK(add_show), glade_path); g_signal_connect(G_OBJECT(widgets->btnAdd),"clicked",G_CALLBACK(add_show), glade_path);
g_signal_connect(G_OBJECT(widgets->btnEdit),"clicked",G_CALLBACK(edit_show), glade_path); g_signal_connect(G_OBJECT(widgets->btnEdit),"clicked",G_CALLBACK(edit_show), glade_path);
g_signal_connect(G_OBJECT(widgets->btnInfo),"clicked",G_CALLBACK(info_show), glade_path); g_signal_connect(G_OBJECT(widgets->btnInfo),"clicked",G_CALLBACK(info_show), glade_path);
g_signal_connect(G_OBJECT(widgets->btnUpdateDispatcher),"clicked",G_CALLBACK(main_update_dispatcher), NULL);
/* /*
g_signal_connect(G_OBJECT(widgets->LoadGlobalMenuItem),"activate",G_CALLBACK(),NULL); g_signal_connect(G_OBJECT(widgets->LoadGlobalMenuItem),"activate",G_CALLBACK(),NULL);
g_signal_connect(G_OBJECT(widgets->LoadLocalMenuItem),"activate",G_CALLBACK(),NULL); g_signal_connect(G_OBJECT(widgets->LoadLocalMenuItem),"activate",G_CALLBACK(),NULL);

@ -9,7 +9,7 @@
#include <getopt.h> #include <getopt.h>
#include <libintl.h> #include <libintl.h>
#include <vte/vte.h> #include <vte/vte.h>
#include "ubl-cmake.h" #include "ubl-settings-resourcequota-cm.h"
#include "view_add.h" #include "view_add.h"
#include "filters.h" #include "filters.h"
#include "view_edit.h" #include "view_edit.h"
@ -65,6 +65,9 @@ typedef struct {
GtkTreeViewColumn *tvc6; GtkTreeViewColumn *tvc6;
GtkTreeViewColumn *tvc7; GtkTreeViewColumn *tvc7;
GtkWidget *vteDispatcher;
GtkWidget *spinUpdateDispatcher;
GtkWidget *btnUpdateDispatcher;
GtkWidget *treeViewMain; GtkWidget *treeViewMain;
GtkWidget *btnSaveCfg; GtkWidget *btnSaveCfg;
GtkWidget *btnShowFilters; GtkWidget *btnShowFilters;
@ -122,4 +125,5 @@ void event_all(main_window *widgets);
void info_show(GtkWidget *self); void info_show(GtkWidget *self);
void main_localization(main_window *widgets); void main_localization(main_window *widgets);
void main_visible_columns(); void main_visible_columns();
void wrapper_filters_show(GtkWidget *self); void wrapper_filters_show(GtkWidget *self);
void main_update_dispatcher();

@ -0,0 +1 @@
#cmakedefine WEBKIT_FOUND

@ -11,7 +11,7 @@
#include <gtk/gtk.h> #include <gtk/gtk.h>
#include <gtk/gtkx.h> #include <gtk/gtkx.h>
#include "ubl-cmake.h" #include "ubl-settings-resourcequota-cm.h"
#ifdef WEBKIT_FOUND #ifdef WEBKIT_FOUND
#include <webkit2/webkit2.h> #include <webkit2/webkit2.h>
#endif #endif

@ -15,8 +15,8 @@ add_window *add_setup_window(char* glade_path) {
add_widgets->chkCPULimitAdd = yon_gtk_builder_get_widget(builder,"chkCPULimitAdd"); add_widgets->chkCPULimitAdd = yon_gtk_builder_get_widget(builder,"chkCPULimitAdd");
add_widgets->chkPaddingFLAdd = yon_gtk_builder_get_widget(builder,"chkPaddingFLAdd"); add_widgets->chkPaddingFLAdd = yon_gtk_builder_get_widget(builder,"chkPaddingFLAdd");
add_widgets->spinCPULimitAdd = yon_gtk_builder_get_widget(builder,"spinPaddingFLAdd"); add_widgets->spinPaddingFLAdd = yon_gtk_builder_get_widget(builder,"spinPaddingFLAdd");
add_widgets->chkCPULimitAdd = yon_gtk_builder_get_widget(builder,"cmbPaddingFLAdd"); add_widgets->cmbPaddingFLAdd = yon_gtk_builder_get_widget(builder,"cmbPaddingFLAdd");
add_widgets->chkSevereRestrictionAdd = yon_gtk_builder_get_widget(builder,"chkSevereRestrictionAdd"); add_widgets->chkSevereRestrictionAdd = yon_gtk_builder_get_widget(builder,"chkSevereRestrictionAdd");
add_widgets->spinSevereRestrictionAdd = yon_gtk_builder_get_widget(builder,"spinSevereRestrictionAdd"); add_widgets->spinSevereRestrictionAdd = yon_gtk_builder_get_widget(builder,"spinSevereRestrictionAdd");
@ -26,7 +26,7 @@ add_window *add_setup_window(char* glade_path) {
add_widgets->spiSevereRestrictionAdd = yon_gtk_builder_get_widget(builder,"spiSevereRestrictionAdd"); add_widgets->spiSevereRestrictionAdd = yon_gtk_builder_get_widget(builder,"spiSevereRestrictionAdd");
add_widgets->cmSevereRestrictionAdd = yon_gtk_builder_get_widget(builder,"cmSevereRestrictionAdd"); add_widgets->cmSevereRestrictionAdd = yon_gtk_builder_get_widget(builder,"cmSevereRestrictionAdd");
add_event(add_widgets); add_event(add_widgets);
//add_init_windows(); add_init_windows();
} }
return add_widgets; return add_widgets;
@ -42,7 +42,10 @@ void add_init_windows() {
void add_event(add_window *widgets) { void add_event(add_window *widgets) {
g_signal_connect(G_OBJECT(widgets->btnAddCancel),"clicked",G_CALLBACK(add_on_hide_subwindow),NULL); g_signal_connect(G_OBJECT(widgets->btnAddCancel),"clicked",G_CALLBACK(add_on_hide_subwindow),NULL);
g_signal_connect(G_OBJECT(widgets->Window), "destroy", G_CALLBACK(add_destroy), NULL); g_signal_connect(G_OBJECT(widgets->Window), "destroy", G_CALLBACK(add_destroy), NULL);
//g_signal_connect(G_OBJECT(widgets->chkSoftRestrictionAdd), "toggle", G_CALLBACK(add_set_active_widgets), widgets->spiSevereRestrictionAdd, widgets->cmSevereRestrictionAdd); g_signal_connect(G_OBJECT(widgets->chkSoftRestrictionAdd), "toggled", G_CALLBACK(add_init_windows), NULL);
g_signal_connect(G_OBJECT(widgets->chkSevereRestrictionAdd), "toggled", G_CALLBACK(add_init_windows), NULL);
g_signal_connect(G_OBJECT(widgets->chkPaddingFLAdd), "toggled", G_CALLBACK(add_init_windows), NULL);
g_signal_connect(G_OBJECT(widgets->chkCPULimitAdd), "toggled", G_CALLBACK(add_init_windows), NULL);
} }
void add_destroy(GtkWidget *self) { void add_destroy(GtkWidget *self) {

@ -15,8 +15,8 @@ edit_window *edit_setup_window(char* glade_path){
edit_widgets->chkCPULimitEdit = yon_gtk_builder_get_widget(builder,"chkCPULimitEdit"); edit_widgets->chkCPULimitEdit = yon_gtk_builder_get_widget(builder,"chkCPULimitEdit");
edit_widgets->chkPaddingFLEdit = yon_gtk_builder_get_widget(builder,"chkPaddingFLEdit"); edit_widgets->chkPaddingFLEdit = yon_gtk_builder_get_widget(builder,"chkPaddingFLEdit");
edit_widgets->spinCPULimitEdit = yon_gtk_builder_get_widget(builder,"spinPaddingFLEdit"); edit_widgets->spinPaddingFLEdit = yon_gtk_builder_get_widget(builder,"spinPaddingFLEdit");
edit_widgets->chkCPULimitEdit = yon_gtk_builder_get_widget(builder,"cmbPaddingFLEdit"); edit_widgets->cmbPaddingFLEdit = yon_gtk_builder_get_widget(builder,"cmbPaddingFLEdit");
edit_widgets->chkSevereRestrictionEdit = yon_gtk_builder_get_widget(builder,"chkSevereRestrictionEdit"); edit_widgets->chkSevereRestrictionEdit = yon_gtk_builder_get_widget(builder,"chkSevereRestrictionEdit");
edit_widgets->spinSevereRestrictionEdit = yon_gtk_builder_get_widget(builder,"spinSevereRestrictionEdit"); edit_widgets->spinSevereRestrictionEdit = yon_gtk_builder_get_widget(builder,"spinSevereRestrictionEdit");
@ -26,7 +26,7 @@ edit_window *edit_setup_window(char* glade_path){
edit_widgets->spiSevereRestrictionEdit = yon_gtk_builder_get_widget(builder,"spiSevereRestrictionEdit"); edit_widgets->spiSevereRestrictionEdit = yon_gtk_builder_get_widget(builder,"spiSevereRestrictionEdit");
edit_widgets->cmSevereRestrictionEdit = yon_gtk_builder_get_widget(builder,"cmSevereRestrictionEdit"); edit_widgets->cmSevereRestrictionEdit = yon_gtk_builder_get_widget(builder,"cmSevereRestrictionEdit");
edit_event(edit_widgets); edit_event(edit_widgets);
//edit_init_windows(); edit_init_windows();
} }
return edit_widgets; return edit_widgets;
} }
@ -34,6 +34,10 @@ edit_window *edit_setup_window(char* glade_path){
void edit_event(edit_window *widgets) { void edit_event(edit_window *widgets) {
g_signal_connect(G_OBJECT(widgets->btnEditCancel),"clicked",G_CALLBACK(edit_on_hide_subwindow),NULL); g_signal_connect(G_OBJECT(widgets->btnEditCancel),"clicked",G_CALLBACK(edit_on_hide_subwindow),NULL);
g_signal_connect(G_OBJECT(widgets->Window), "destroy", G_CALLBACK(edit_destroy), NULL); g_signal_connect(G_OBJECT(widgets->Window), "destroy", G_CALLBACK(edit_destroy), NULL);
g_signal_connect(G_OBJECT(widgets->chkSoftRestrictionEdit), "toggled", G_CALLBACK(edit_init_windows), NULL);
g_signal_connect(G_OBJECT(widgets->chkSevereRestrictionEdit), "toggled", G_CALLBACK(edit_init_windows), NULL);
g_signal_connect(G_OBJECT(widgets->chkPaddingFLEdit), "toggled", G_CALLBACK(edit_init_windows), NULL);
g_signal_connect(G_OBJECT(widgets->chkCPULimitEdit), "toggled", G_CALLBACK(edit_init_windows), NULL);
} }
void edit_destroy(GtkWidget *self) { void edit_destroy(GtkWidget *self) {

@ -1080,7 +1080,7 @@ limit
</packing> </packing>
</child> </child>
<child> <child>
<object class="GtkSpinButton"> <object class="GtkSpinButton" id="spinUpdateDispatcher">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="margin-left">5</property> <property name="margin-left">5</property>
@ -1126,7 +1126,7 @@ limit
<property name="margin-top">5</property> <property name="margin-top">5</property>
<property name="margin-bottom">5</property> <property name="margin-bottom">5</property>
<child> <child>
<object class="GtkImage"> <object class="GtkImage" id="btnUpdateDispatcher">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
</object> </object>
@ -1155,8 +1155,9 @@ limit
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<child> <child>
<object class="VteTerminal"> <object class="VteTerminal" id="vteDispatcher">
<property name="visible">True</property> <property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="hscroll-policy">natural</property> <property name="hscroll-policy">natural</property>
<property name="vscroll-policy">natural</property> <property name="vscroll-policy">natural</property>
@ -1258,6 +1259,7 @@ limit
<child> <child>
<object class="VteTerminal"> <object class="VteTerminal">
<property name="visible">True</property> <property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="hscroll-policy">natural</property> <property name="hscroll-policy">natural</property>
<property name="vscroll-policy">natural</property> <property name="vscroll-policy">natural</property>
@ -1371,6 +1373,7 @@ limit
<child> <child>
<object class="VteTerminal"> <object class="VteTerminal">
<property name="visible">True</property> <property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="hscroll-policy">natural</property> <property name="hscroll-policy">natural</property>
<property name="vscroll-policy">natural</property> <property name="vscroll-policy">natural</property>

Loading…
Cancel
Save