Merge pull request 'master' (#28) from Igor1/ublexec:master into develop

Reviewed-on: #28
pull/29/head
Dmitry Razumov 3 years ago
commit 51aa3cfd38

@ -5,6 +5,7 @@ const string path_app = "/usr/bin/";
const string path_glade = "/usr/share/ublexec/ui/ublexec.glade"; const string path_glade = "/usr/share/ublexec/ui/ublexec.glade";
const string path_css = "/usr/share/ublexec/css/ublexec.css"; const string path_css = "/usr/share/ublexec/css/ublexec.css";
const string app_name = "ublexec"; const string app_name = "ublexec";
const string path_img_head_background = "/usr/share/ublexec/images/logo-background.png";
int socket_ext_id_I = 0; int socket_ext_id_I = 0;
int socket_trd_id_I = 0; int socket_trd_id_I = 0;
@ -42,6 +43,9 @@ MainWindow::MainWindow(Glib::RefPtr<Gtk::Builder> const& builder) {
} }
void MainWindow::get_builder() { void MainWindow::get_builder() {
builder->get_widget("imgHeadBackground", imgHeadBackground);
builder->get_widget("overHead", overHead);
builder->get_widget("btnFilemaneg", btnFilemaneg); builder->get_widget("btnFilemaneg", btnFilemaneg);
builder->get_widget("btnListApp", btnListApp); builder->get_widget("btnListApp", btnListApp);
builder->get_widget("btnStart", btnStart); builder->get_widget("btnStart", btnStart);
@ -135,10 +139,9 @@ void MainWindow::add_CSS() {
Glib::RefPtr<Gtk::StyleContext> styleContext = Gtk::StyleContext::create(); Glib::RefPtr<Gtk::StyleContext> styleContext = Gtk::StyleContext::create();
Glib::RefPtr<Gdk::Screen> screen = Gdk::Screen::get_default();//get default screen Glib::RefPtr<Gdk::Screen> screen = Gdk::Screen::get_default();//get default screen
styleContext->add_provider_for_screen(screen, cssProvider, GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);//add provider for screen in all application styleContext->add_provider_for_screen(screen, cssProvider, GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);//add provider for screen in all application
Glib::RefPtr<Gtk::StyleContext> context_box = boxColor->get_style_context();
Glib::RefPtr<Gtk::StyleContext> context_lbl_head = lblInfoHead->get_style_context(); Glib::RefPtr<Gtk::StyleContext> context_lbl_head = lblInfoHead->get_style_context();
Glib::RefPtr<Gtk::StyleContext> boxAbout_css = boxAbout->get_style_context(); Glib::RefPtr<Gtk::StyleContext> boxAbout_css = boxAbout->get_style_context();
context_box->add_class("cssboxColor1"); imgHeadBackground->set(path_img_head_background);
context_lbl_head->add_class("textHead"); context_lbl_head->add_class("textHead");
if (socket_ext_id_I == 0){ if (socket_ext_id_I == 0){
boxAbout_css->add_class("bkim_no_plug"); boxAbout_css->add_class("bkim_no_plug");
@ -149,42 +152,45 @@ void MainWindow::localization() {
time_t now = time(0); time_t now = time(0);
tm *ltm = localtime(&now); tm *ltm = localtime(&now);
unsigned int year= 1900+ ltm->tm_year; unsigned int year= 1900+ ltm->tm_year;
string str_authors = string(_("Copyright © UBSoft LLC, 2022 - ")) + to_string(year); string str_authors = string(gettext("Copyright © UBSoft LLC, 2022 - ")) + to_string(year);
aboutWindows->set_copyright(str_authors); aboutWindows->set_copyright(str_authors);
aboutWindows->set_website(_("https://wiki.ublinux.com")); aboutWindows->set_website(gettext("https://wiki.ublinux.com"));
btnSynopsis->set_label(_("Help")); btnSynopsis->set_label(gettext("Help"));
btnAbout->set_label(_("About")); btnAbout->set_label(gettext("About"));
aboutWindows->set_comments(_("ublexec")); aboutWindows->set_comments(gettext("Run as..."));
aboutWindows->set_website_label(_("Project Home Page")); aboutWindows->set_website_label(gettext("Project Home Page"));
aboutWindows->set_version(_(version_application.c_str())); aboutWindows->set_version(gettext(version_application.c_str()));
lblHeaderName->set_text(_("ublexec")); aboutWindows->set_title(gettext(" Run as..."));
this->set_title(_("ublexec")); lblHeaderName->set_text(gettext("Run as..."));
btnStart->set_label(_("Run")); this->set_title(gettext("Run as..."));
wndChooseFileWallpaper->set_title(_("Please select File")); btnStart->set_label(gettext("Run"));
dialogStartMenu->set_title(_("Selecting Programs")); wndChooseFileWallpaper->set_title(gettext("Please select File"));
lblInfoHead->set_text(_("Run applications as another user\nwith the specified priority")); dialogStartMenu->set_title(gettext("Selecting Programs"));
lblinfoCmd->set_text(_("Command Line")); lblInfoHead->set_text(gettext("Run applications as another user\nwith the specified priority"));
lblInfoTime->set_text(_("Team:")); lblinfoCmd->set_text(gettext("Command Line"));
labInfoExecutTerm->set_text(_("Run in the terminal emulator")); lblInfoTime->set_text(gettext("Team:"));
lblInfoUser->set_text(_("User")); labInfoExecutTerm->set_text(gettext("Run in the terminal emulator"));
lblInfoUserOther->set_text(_("Run as another user:")); lblInfoUser->set_text(gettext("User"));
lblInfoUserName->set_text(_("User Name:")); lblInfoUserOther->set_text(gettext("Run as another user:"));
lblInfoNooPriority->set_text(_("Priority")); lblInfoUserName->set_text(gettext("User Name:"));
lblInfoExec->set_text(_("Change startup priority")); lblInfoNooPriority->set_text(gettext("Priority"));
lblInfoPriority->set_text(_("Priority:")); lblInfoExec->set_text(gettext("Change startup priority"));
lblMessageError->set_text(_("Select an executable file or program")); lblInfoPriority->set_text(gettext("Priority:"));
lblGraphics->set_text(_("Graphics")); lblMessageError->set_text(gettext("Select an executable file or program"));
lblTools->set_text(_("Tools")); messageError->set_title(gettext("Warning!"));
lblInternet->set_text(_("Internet")); lblGraphics->set_text(gettext("Graphics"));
lblMultimedia->set_text(_("Multimedia")); lblTools->set_text(gettext("Tools"));
lblSettings->set_text(_("Settings")); lblInternet->set_text(gettext("Internet"));
lblEducation->set_text(_("Education")); lblMultimedia->set_text(gettext("Multimedia"));
lblOffice->set_text(_("Office")); lblSettings->set_text(gettext("Settings"));
lblOther->set_text(_("Other")); lblEducation->set_text(gettext("Education"));
lblDevelopment->set_text(_("Development")); lblOffice->set_text(gettext("Office"));
lblSystem->set_text(_("System")); lblOther->set_text(gettext("Other"));
btnListApp->set_tooltip_text(_("Application Overview")); lblDevelopment->set_text(gettext("Development"));
btnFilemaneg->set_tooltip_text(_("File Overview")); lblSystem->set_text(gettext("System"));
btnListApp->set_tooltip_text(gettext("Application Overview"));
btnFilemaneg->set_tooltip_text(gettext("File Overview"));
btnStartMenuExit->set_label(gettext("Cancel"));
} }
void MainWindow::event() { void MainWindow::event() {
@ -232,32 +238,32 @@ void MainWindow::sudo_nice(){
spinPriority->set_increments(1.0, -1.0); spinPriority->set_increments(1.0, -1.0);
scalePriority->set_range(-20, 19); scalePriority->set_range(-20, 19);
scalePriority->set_value(0); scalePriority->set_value(0);
lblTimeEpriorityLow->set_text(_("19 (Low)")); lblTimeEpriorityLow->set_text(gettext("19 (Low)"));
lblTime4EpriorityHigh->set_text(_("-20 (High)")); lblTime4EpriorityHigh->set_text(gettext("-20 (High)"));
} }
else if (rbSudo->get_active() && response.find("wheel") != string::npos){ else if (rbSudo->get_active() && response.find("wheel") != string::npos){
spinPriority->set_range(-20, 19); spinPriority->set_range(-20, 19);
spinPriority->set_increments(1.0, -1.0); spinPriority->set_increments(1.0, -1.0);
scalePriority->set_range(-20, 19); scalePriority->set_range(-20, 19);
scalePriority->set_value(0); scalePriority->set_value(0);
lblTimeEpriorityLow->set_text(_("19 (Low)")); lblTimeEpriorityLow->set_text(gettext("19 (Low)"));
lblTime4EpriorityHigh->set_text(_("-20 (High)")); lblTime4EpriorityHigh->set_text(gettext("-20 (High)"));
} }
else if (rbSu->get_active()){ else if (rbSu->get_active()){
spinPriority->set_range(0, 19); spinPriority->set_range(0, 19);
spinPriority->set_increments(1.0, -1.0); spinPriority->set_increments(1.0, -1.0);
scalePriority->set_range(0, 19); scalePriority->set_range(0, 19);
scalePriority->set_value(0); scalePriority->set_value(0);
lblTimeEpriorityLow->set_text(_("19 (Low)")); lblTimeEpriorityLow->set_text(gettext("19 (Low)"));
lblTime4EpriorityHigh->set_text(_("0 (High)")); lblTime4EpriorityHigh->set_text(gettext("0 (High)"));
} }
else if (rbPkexec->get_active()){ else if (rbPkexec->get_active()){
spinPriority->set_range(0, 19); spinPriority->set_range(0, 19);
spinPriority->set_increments(1.0, -1.0); spinPriority->set_increments(1.0, -1.0);
scalePriority->set_range(0, 19); scalePriority->set_range(0, 19);
scalePriority->set_value(0); scalePriority->set_value(0);
lblTimeEpriorityLow->set_text(_("19 (Low)")); lblTimeEpriorityLow->set_text(gettext("19 (Low)"));
lblTime4EpriorityHigh->set_text(_("0 (High)")); lblTime4EpriorityHigh->set_text(gettext("0 (High)"));
} }
this->denamic_cmd(); this->denamic_cmd();
} }
@ -271,20 +277,21 @@ void MainWindow::changed_user() {
spinPriority->set_increments(1.0, -1.0); spinPriority->set_increments(1.0, -1.0);
scalePriority->set_range(-20, 19); scalePriority->set_range(-20, 19);
scalePriority->set_value(0); scalePriority->set_value(0);
lblTimeEpriorityLow->set_text(_("19 (Low)")); lblTimeEpriorityLow->set_text(gettext("19 (Low)"));
lblTime4EpriorityHigh->set_text(_("-20 (High)")); lblTime4EpriorityHigh->set_text(gettext("-20 (High)"));
} }
else{ else{
spinPriority->set_range(0, 19); spinPriority->set_range(0, 19);
spinPriority->set_increments(1.0, -1.0); spinPriority->set_increments(1.0, -1.0);
scalePriority->set_range(0, 19); scalePriority->set_range(0, 19);
scalePriority->set_value(0); scalePriority->set_value(0);
lblTimeEpriorityLow->set_text(_("19 (Low)")); lblTimeEpriorityLow->set_text(gettext("19 (Low)"));
lblTime4EpriorityHigh->set_text(_("0 (High)")); lblTime4EpriorityHigh->set_text(gettext("0 (High)"));
} }
} }
void MainWindow::delete_cmd(const int &x, const int &y) { void MainWindow::delete_cmd(const int &x, const int &y) {
if (x == 0) {}
if (y > 1) { if (y > 1) {
chbTerminal->set_active(false); chbTerminal->set_active(false);
chbAnotherUser->set_active(false); chbAnotherUser->set_active(false);
@ -294,6 +301,7 @@ void MainWindow::delete_cmd(const int &x, const int &y) {
} }
bool MainWindow::focus_in_txt_cmd(GdkEventFocus* event) { bool MainWindow::focus_in_txt_cmd(GdkEventFocus* event) {
if (event) {}
if (user_cmd.length() != 0) { if (user_cmd.length() != 0) {
} }
else if (name_app.length() != 0) { else if (name_app.length() != 0) {
@ -310,8 +318,13 @@ bool MainWindow::focus_in_txt_cmd(GdkEventFocus* event) {
} }
void MainWindow::synopsis_show() { void MainWindow::synopsis_show() {
string cmd = "xdg-open " + string(_("https://wiki.ublinux.com/ru/Программное_обеспечениерограммы_и_утилиты/Все/")) + app_name + " &"; string cmd = "xdg-open " + string(gettext("https://wiki.ublinux.com/ru/Программное_обеспечениерограммы_и_утилиты/Все/")) + app_name + " &";
system(cmd.c_str()); if (geteuid() == 0) {
string response_user = getlogin();
cmd = "su -l " + response_user + " -c \" DISPLAY=$DISPLAY " + cmd + " \"";
}
cout << cmd << endl;
index_error = system(cmd.c_str());
} }
void MainWindow::icon_clear() { void MainWindow::icon_clear() {
@ -377,7 +390,7 @@ void MainWindow::tempate_icon_select(Gtk::IconView *icon, Glib::RefPtr<Gtk::List
user_cmd = ""; user_cmd = "";
txtCmd->set_text(app_name_exec); txtCmd->set_text(app_name_exec);
name_app = txtCmd->get_text(); name_app = txtCmd->get_text();
int len_name_app = name_app.length(); size_t len_name_app = name_app.length();
string array_del[] = {"%f", "%F", "%d", "%D", "%n", "%N", "%U"}; string array_del[] = {"%f", "%F", "%d", "%D", "%n", "%N", "%U"};
for (auto &del_sim: array_del) { for (auto &del_sim: array_del) {
str_remove(name_app, del_sim); str_remove(name_app, del_sim);
@ -409,9 +422,12 @@ void MainWindow::settings() {
spinPriority->set_increments(1.0, -1.0); spinPriority->set_increments(1.0, -1.0);
scalePriority->set_range(0, 19); scalePriority->set_range(0, 19);
scalePriority->set_value(0); scalePriority->set_value(0);
lblTimeEpriorityLow->set_text(_("19 (Low)")); lblTimeEpriorityLow->set_text(gettext("19 (Low)"));
lblTime4EpriorityHigh->set_text(_("0 (High)")); lblTime4EpriorityHigh->set_text(gettext("0 (High)"));
scalePriority->set_inverted(true); scalePriority->set_inverted(true);
Gtk::Widget *boxWidget;
builder->get_widget("boxColor", boxWidget);
overHead->add_overlay(*boxWidget);
this->pars_dir_bin(); this->pars_dir_bin();
this->pars_dir_terminal(); this->pars_dir_terminal();
this->pars_users(); this->pars_users();
@ -427,6 +443,7 @@ void MainWindow::settings() {
btnBoxAboutDialog->set_visible(false); btnBoxAboutDialog->set_visible(false);
cmbTerminal->set_sensitive(false); cmbTerminal->set_sensitive(false);
ubl_make_plugs(boxAbout, boxAbout, socket_ext_id_I, 0); ubl_make_plugs(boxAbout, boxAbout, socket_ext_id_I, 0);
} }
void MainWindow::close_entry_app() { void MainWindow::close_entry_app() {
@ -605,12 +622,13 @@ string MainWindow::start_cmd(string user_cmd) {
string user_cmd_X = "xhost +SI:localuser:"; string user_cmd_X = "xhost +SI:localuser:";
user_cmd_X += cmbUser->get_active_text(); user_cmd_X += cmbUser->get_active_text();
user_cmd_X += " > /dev/null 2>&1"; user_cmd_X += " > /dev/null 2>&1";
system(user_cmd_X.c_str()); index_error = system(user_cmd_X.c_str());
} }
if ((cbxExecuteEpriority->get_active()) && (chbAnotherUser->get_active() == false)) { if ((cbxExecuteEpriority->get_active()) && (chbAnotherUser->get_active() == false)) {
str_nice_cmd = "nice -n " + to_string(spinPriority->get_value_as_int()) + " "; str_nice_cmd = "nice -n " + to_string(spinPriority->get_value_as_int()) + " ";
} }
if (user_cmd.length() == 0 && name_app.length() == 0 && path_file.length() == 0) { if (user_cmd.length() == 0 && name_app.length() == 0 && path_file.length() == 0) {
messageError->set_title(gettext("Warning!"));
messageError->show(); messageError->show();
return ""; return "";
} }
@ -665,7 +683,7 @@ string MainWindow::start_cmd(string user_cmd) {
void MainWindow::call_app(string &cmd) { void MainWindow::call_app(string &cmd) {
if (cmd.length() != 0) { if (cmd.length() != 0) {
std::thread t([&](string cmd) {system(cmd.c_str());}, cmd); std::thread t([&](string cmd) {int index = system(cmd.c_str()); if (index){}}, cmd);
t.detach(); t.detach();
} }
} }
@ -679,6 +697,7 @@ void MainWindow::denamic_cmd() {
name_app = ""; name_app = "";
user_cmd = ""; user_cmd = "";
txtCmd->set_text(user_cmd); txtCmd->set_text(user_cmd);
messageError->set_title(gettext("Warning!"));
messageError->show(); messageError->show();
} }
else{ else{
@ -718,6 +737,7 @@ string MainWindow::call(string cmd) {
} }
bool MainWindow::focus_out_txt_cmd(GdkEventFocus* event) { bool MainWindow::focus_out_txt_cmd(GdkEventFocus* event) {
if (event) {}
if (cmd_old != txtCmd->get_text()) { if (cmd_old != txtCmd->get_text()) {
user_cmd = txtCmd->get_text(); user_cmd = txtCmd->get_text();
} }

@ -24,6 +24,7 @@ extern const string path_app;
extern const string app_name; extern const string app_name;
extern const string path_glade; extern const string path_glade;
extern const string path_css; extern const string path_css;
extern const string path_img_head_background;
extern int socket_ext_id_I; extern int socket_ext_id_I;
extern int socket_trd_id_I; extern int socket_trd_id_I;
void me_thread(string cmd); void me_thread(string cmd);
@ -198,6 +199,8 @@ public:
Glib::RefPtr<Gtk::ListStore> list_Other; Glib::RefPtr<Gtk::ListStore> list_Other;
Glib::RefPtr<Gtk::ListStore> list_Development; Glib::RefPtr<Gtk::ListStore> list_Development;
Glib::RefPtr<Gtk::ListStore> list_System; Glib::RefPtr<Gtk::ListStore> list_System;
Gtk::Image *imgHeadBackground;
Gtk::Overlay *overHead;
Gtk::Widget *boxAbout; Gtk::Widget *boxAbout;
public: public:
string termunal_cmd[3] = {"konsole -e ", "xfce4-terminal -x ", "xterm -e "}; string termunal_cmd[3] = {"konsole -e ", "xfce4-terminal -x ", "xterm -e "};
@ -211,6 +214,7 @@ public:
string execute_cmd = ""; string execute_cmd = "";
string path_file = ""; string path_file = "";
string name_app = ""; string name_app = "";
int index_error = 0;
bool flag_pkexec = false; bool flag_pkexec = false;
bool flag_su = false; bool flag_su = false;
bool flag_sudo = false; bool flag_sudo = false;

@ -1,6 +1,3 @@
.cssboxColor1{
background: url("/usr/share/ublexec/images/logo-background.png") no-repeat;
}
.textHead{ .textHead{
text-shadow: 1px 1px #ffffff; text-shadow: 1px 1px #ffffff;
} }
@ -65,12 +62,21 @@
} }
.menuitemtop:hover { .menuitemtop:hover {
background:@theme_bg_color; background:@theme_bg_color;
border-color:inherit;
border-left-width:inherit;
border-right-width:inherit;
} }
.menuitemmiddle:hover { .menuitemmiddle:hover {
background:@theme_bg_color; background:@theme_bg_color;
border-color:inherit;
border-left-width:inherit;
border-right-width:inherit;
} }
.menuitembottom:hover { .menuitembottom:hover {
background:@theme_bg_color; background:@theme_bg_color;
border-color:inherit;
border-left-width:inherit;
border-right-width:inherit;
} }
.menuitemtop:hover* { .menuitemtop:hover* {

@ -13,7 +13,7 @@
<property name="resizable">False</property> <property name="resizable">False</property>
<property name="modal">True</property> <property name="modal">True</property>
<property name="window-position">center</property> <property name="window-position">center</property>
<property name="icon-name">ubl-settings-datetime</property> <property name="icon-name">com.ublinux.ublexec</property>
<property name="type-hint">dialog</property> <property name="type-hint">dialog</property>
<property name="urgency-hint">True</property> <property name="urgency-hint">True</property>
<property name="accept-focus">False</property> <property name="accept-focus">False</property>
@ -39,6 +39,12 @@
<child internal-child="action_area"> <child internal-child="action_area">
<object class="GtkButtonBox" id="btnBoxAboutDialog"> <object class="GtkButtonBox" id="btnBoxAboutDialog">
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="margin-left">5</property>
<property name="margin-right">5</property>
<property name="margin-start">5</property>
<property name="margin-end">5</property>
<property name="margin-top">6</property>
<property name="margin-bottom">6</property>
<property name="layout-style">end</property> <property name="layout-style">end</property>
<child> <child>
<placeholder/> <placeholder/>
@ -62,6 +68,54 @@
<property name="step-increment">1</property> <property name="step-increment">1</property>
<property name="page-increment">10</property> <property name="page-increment">10</property>
</object> </object>
<object class="GtkBox" id="boxColor">
<property name="visible">True</property>
<property name="can-focus">False</property>
<child>
<object class="GtkImage">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="margin-left">5</property>
<property name="margin-right">5</property>
<property name="margin-start">5</property>
<property name="margin-end">5</property>
<property name="margin-top">6</property>
<property name="margin-bottom">6</property>
<property name="pixel-size">69</property>
<property name="icon-name">com.ublinux.ublexec</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="lblInfoHead">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="margin-left">5</property>
<property name="margin-right">5</property>
<property name="margin-start">5</property>
<property name="margin-end">5</property>
<property name="margin-top">6</property>
<property name="margin-bottom">6</property>
<property name="label" translatable="yes">Run applications as another user
with the specified priority</property>
<attributes>
<attribute name="font-desc" value="URW Gothic Semi-Bold 10"/>
<attribute name="foreground" value="#000023233232"/>
<attribute name="size" value="15360"/>
</attributes>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<object class="GtkWindow" id="dialogStartMenu"> <object class="GtkWindow" id="dialogStartMenu">
<property name="width-request">410</property> <property name="width-request">410</property>
<property name="height-request">240</property> <property name="height-request">240</property>
@ -913,10 +967,8 @@
<property name="halign">end</property> <property name="halign">end</property>
<property name="layout-style">start</property> <property name="layout-style">start</property>
<child> <child>
<object class="GtkButton" id="btnStartMenuOK"> <object class="GtkButton" id="btnStartMenuExit">
<property name="label" translatable="yes">ОК</property> <property name="label" translatable="yes">Exit</property>
<property name="width-request">-1</property>
<property name="height-request">-1</property>
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="receives-default">True</property> <property name="receives-default">True</property>
@ -934,8 +986,10 @@
</packing> </packing>
</child> </child>
<child> <child>
<object class="GtkButton" id="btnStartMenuExit"> <object class="GtkButton" id="btnStartMenuOK">
<property name="label" translatable="yes">Выход</property> <property name="label" translatable="yes">ОК</property>
<property name="width-request">-1</property>
<property name="height-request">-1</property>
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="receives-default">True</property> <property name="receives-default">True</property>
@ -1000,7 +1054,7 @@
<object class="GtkMenuItem" id="btnSynopsis"> <object class="GtkMenuItem" id="btnSynopsis">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="label" translatable="yes">Synopsis</property> <property name="label" translatable="yes">Help</property>
<style> <style>
<class name="menuitemtop"/> <class name="menuitemtop"/>
</style> </style>
@ -1026,57 +1080,23 @@
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="orientation">vertical</property> <property name="orientation">vertical</property>
<child> <child>
<object class="GtkBox" id="boxColor"> <object class="GtkOverlay" id="overHead">
<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="GtkImage"> <object class="GtkImage" id="imgHeadBackground">
<property name="height-request">81</property>
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="margin-left">5</property>
<property name="margin-right">5</property>
<property name="margin-start">5</property>
<property name="margin-end">5</property>
<property name="margin-top">6</property>
<property name="margin-bottom">6</property>
<property name="pixel-size">69</property>
<property name="icon-name">com.ublinux.ublexec</property>
</object> </object>
<packing> <packing>
<property name="expand">False</property> <property name="index">-1</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing> </packing>
</child> </child>
<child>
<object class="GtkLabel" id="lblInfoHead">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="margin-left">5</property>
<property name="margin-right">5</property>
<property name="margin-start">5</property>
<property name="margin-end">5</property>
<property name="margin-top">6</property>
<property name="margin-bottom">6</property>
<property name="label" translatable="yes">Run applications as another user
with the specified priority</property>
<attributes>
<attribute name="font-desc" value="URW Gothic Semi-Bold 10"/>
<attribute name="foreground" value="#000023233232"/>
<attribute name="size" value="15360"/>
</attributes>
</object> </object>
<packing> <packing>
<property name="expand">True</property> <property name="expand">True</property>
<property name="fill">True</property> <property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property> <property name="position">0</property>
</packing> </packing>
</child> </child>
@ -1658,7 +1678,6 @@ with the specified priority</property>
<property name="margin-right">5</property> <property name="margin-right">5</property>
<property name="margin-start">5</property> <property name="margin-start">5</property>
<property name="margin-end">5</property> <property name="margin-end">5</property>
<property name="margin-bottom">9</property>
<property name="adjustment">adjustment1</property> <property name="adjustment">adjustment1</property>
<property name="fill-level">20</property> <property name="fill-level">20</property>
<property name="round-digits">0</property> <property name="round-digits">0</property>
@ -1698,6 +1717,7 @@ with the specified priority</property>
<object class="GtkBox"> <object class="GtkBox">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="margin-top">9</property>
<property name="hexpand">False</property> <property name="hexpand">False</property>
<child> <child>
<object class="GtkLabel"> <object class="GtkLabel">
@ -1903,7 +1923,7 @@ with the specified priority</property>
</object> </object>
<object class="GtkMessageDialog" id="messageError"> <object class="GtkMessageDialog" id="messageError">
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="title" translatable="yes">Внимание!</property> <property name="title" translatable="yes">Warning!</property>
<property name="icon-name">com.ublinux.ublexec</property> <property name="icon-name">com.ublinux.ublexec</property>
<property name="type-hint">dialog</property> <property name="type-hint">dialog</property>
<child internal-child="vbox"> <child internal-child="vbox">
@ -1921,10 +1941,16 @@ with the specified priority</property>
</child> </child>
<child> <child>
<object class="GtkButton" id="btnMessageErrorOk"> <object class="GtkButton" id="btnMessageErrorOk">
<property name="label" translatable="yes">ОК</property> <property name="label" translatable="yes">OK</property>
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="receives-default">True</property> <property name="receives-default">True</property>
<property name="margin-left">5</property>
<property name="margin-right">5</property>
<property name="margin-start">5</property>
<property name="margin-end">5</property>
<property name="margin-top">6</property>
<property name="margin-bottom">6</property>
</object> </object>
<packing> <packing>
<property name="expand">True</property> <property name="expand">True</property>
@ -1959,7 +1985,7 @@ with the specified priority</property>
</object> </object>
<object class="GtkFileChooserDialog" id="wndChooseFileWallpaper"> <object class="GtkFileChooserDialog" id="wndChooseFileWallpaper">
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="title" translatable="yes">Пожалуйста выберите Файл</property> <property name="title" translatable="yes">Please select File</property>
<property name="modal">True</property> <property name="modal">True</property>
<property name="window-position">center</property> <property name="window-position">center</property>
<property name="default-width">500</property> <property name="default-width">500</property>

@ -20,125 +20,197 @@ msgstr ""
msgid "" msgid ""
msgstr "" msgstr ""
msgid "File Overview" #: source/ublexec.cc:163
msgid " Run as..."
msgstr "" msgstr ""
msgid "Application Overview" #: source/ublexec.cc:242 source/ublexec.cc:250 source/ublexec.cc:281
#: source/ublexec.cc:236 source/ublexec.cc:244 source/ublexec.cc:275
msgid "-20 (High)"
msgstr "" msgstr ""
msgid "https://wiki.ublinux.com" #: source/ublexec.cc:258 source/ublexec.cc:266 source/ublexec.cc:289
#: source/ublexec.cc:426 source/ublexec.cc:252 source/ublexec.cc:260
#: source/ublexec.cc:283 source/ublexec.cc:413
msgid "0 (High)"
msgstr "" msgstr ""
#: source/ublexec.cc:241 source/ublexec.cc:249 source/ublexec.cc:257
#: source/ublexec.cc:265 source/ublexec.cc:280 source/ublexec.cc:288
#: source/ublexec.cc:425 source/ublexec.cc:235 source/ublexec.cc:243
#: source/ublexec.cc:251 source/ublexec.cc:259 source/ublexec.cc:274
#: source/ublexec.cc:282 source/ublexec.cc:412
msgid "19 (Low)"
msgstr ""
#: source/ublexec.cc:159 source/ublexec.cc:156
msgid "About" msgid "About"
msgstr "" msgstr ""
msgid "Help" #: source/ublexec.cc:191 source/ublexec.cc:186
msgid "Application Overview"
msgstr "" msgstr ""
msgid "Project Home Page" msgid "Cancel"
msgstr "" msgstr ""
msgid "System" #: source/ublexec.cc:177 source/ublexec.cc:173
msgid "Change startup priority"
msgstr "" msgstr ""
msgid "Development" #: source/ublexec.cc:193
msgid "Сancel"
msgstr "" msgstr ""
msgid "Other" #: source/ublexec.cc:170 source/ublexec.cc:166
msgid "Command Line"
msgstr "" msgstr ""
msgid "Office" #: source/ublexec.cc:155 source/ublexec.cc:152
msgid "Copyright © UBSoft LLC, 2022 - "
msgstr ""
#: source/ublexec.cc:189 source/ublexec.cc:184
msgid "Development"
msgstr "" msgstr ""
#: source/ublexec.cc:186 source/ublexec.cc:181
msgid "Education" msgid "Education"
msgstr "" msgstr ""
msgid "Settings" #: source/ublexec.cc:192 source/ublexec.cc:187
msgid "File Overview"
msgstr "" msgstr ""
msgid "Multimedia" #: source/ublexec.cc:181 source/ublexec.cc:176
msgid "Graphics"
msgstr "" msgstr ""
#: source/ublexec.cc:158 source/ublexec.cc:155
msgid "Help"
msgstr ""
#: source/ublexec.cc:183 source/ublexec.cc:178
msgid "Internet" msgid "Internet"
msgstr "" msgstr ""
msgid "Tools" #: source/ublexec.cc:184 source/ublexec.cc:179
msgid "Multimedia"
msgstr "" msgstr ""
msgid "Graphics" #: source/ublexec.cc:187 source/ublexec.cc:182
msgid "Office"
msgstr "" msgstr ""
msgid "ОК" #: source/ublexec.cc:188 source/ublexec.cc:183
msgid "Other"
msgstr "" msgstr ""
msgid "Cancel" #: source/ublexec.cc:167 source/ublexec.cc:163
msgid "Please select File"
msgstr "" msgstr ""
msgid "Selecting Programs" #: source/ublexec.cc:176 source/ublexec.cc:172
msgid "Priority"
msgstr "" msgstr ""
msgid "Run applications as another user\nwith the specified priority" #: source/ublexec.cc:178 source/ublexec.cc:174
msgid "Priority:"
msgstr "" msgstr ""
msgid "Team" #: source/ublexec.cc:161 source/ublexec.cc:158
msgid "Project Home Page"
msgstr "" msgstr ""
msgid "Run in the terminal emulator" #: source/ublexec.cc:162
msgid "Run"
msgstr "" msgstr ""
msgid "Command Line" #: source/ublexec.cc:169 source/ublexec.cc:165
msgid ""
"Run applications as another user\n"
"with the specified priority"
msgstr "" msgstr ""
msgid "Run as another user" msgid "Run as another user"
msgstr "" msgstr ""
msgid "pkexec" #: source/ublexec.cc:174 source/ublexec.cc:170
msgid "Run as another user:"
msgstr "" msgstr ""
msgid "su" #: source/ublexec.cc:160 source/ublexec.cc:164 source/ublexec.cc:165
#: source/ublexec.cc:166
msgid "Run as..."
msgstr "" msgstr ""
msgid "sudo" #: source/ublexec.cc:172 source/ublexec.cc:168
msgid "Run in the terminal emulator"
msgstr "" msgstr ""
msgid "User Name" #: source/ublexec.cc:179 source/ublexec.cc:175
msgid "Select an executable file or program"
msgstr "" msgstr ""
msgid "User" #: source/ublexec.cc:168 source/ublexec.cc:164
msgid "Selecting Programs"
msgstr "" msgstr ""
msgid "Change startup priority" #: source/ublexec.cc:185 source/ublexec.cc:180
msgid "Settings"
msgstr "" msgstr ""
msgid "Priority" #: source/ublexec.cc:190 source/ublexec.cc:185
msgid "System"
msgstr "" msgstr ""
msgid "19 (Low)" msgid "Team"
msgstr "" msgstr ""
msgid "-20 (High)" #: source/ublexec.cc:171 source/ublexec.cc:167
msgid "Team:"
msgstr "" msgstr ""
msgid "https://wiki.ublinux.com/ru/Программное_обеспечениерограммы_и_утилиты/Все/" #: source/ublexec.cc:182 source/ublexec.cc:177
msgid "Tools"
msgstr "" msgstr ""
msgid "0 (High)" #: source/ublexec.cc:173 source/ublexec.cc:169
msgid "User"
msgstr "" msgstr ""
msgid "Run" msgid "User Name"
msgstr "" msgstr ""
msgid "Select an executable file or program" #: source/ublexec.cc:175 source/ublexec.cc:171
msgid "User Name:"
msgstr "" msgstr ""
msgid "Please select File" #: source/ublexec.cc:180 source/ublexec.cc:631 source/ublexec.cc:700
msgid "Warning!"
msgstr "" msgstr ""
msgid "Warning!" #: source/ublexec.cc:157 source/ublexec.cc:154
msgid "https://wiki.ublinux.com"
msgstr "" msgstr ""
#: source/ublexec.cc:321 source/ublexec.cc:313
msgid ""
"https://wiki.ublinux.com/ru/Программное_обеспечениерограммы_и_утилиты/Все/"
msgstr ""
msgid "pkexec"
msgstr ""
msgid "su"
msgstr ""
msgid "sudo"
msgstr ""
#: source/ublexec.cc:157 source/ublexec.cc:160 source/ublexec.cc:161
msgid "ublexec" msgid "ublexec"
msgstr "" msgstr ""
msgid "Copyright © UBSoft LLC, 2022 - " msgid "ОК"
msgstr "" msgstr ""

@ -17,128 +17,204 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
msgid "File Overview" #: source/ublexec.cc:163
msgstr "Обзор файлов" msgid " Run as..."
msgstr "О программе ublexec"
msgid "Application Overview" #: source/ublexec.cc:242 source/ublexec.cc:250 source/ublexec.cc:281
msgstr "Обзор приложений" #: source/ublexec.cc:236 source/ublexec.cc:244 source/ublexec.cc:275
msgid "-20 (High)"
msgstr "-20 (Высокий)"
msgid "https://wiki.ublinux.com" #: source/ublexec.cc:258 source/ublexec.cc:266 source/ublexec.cc:289
msgstr "https://wiki.ublinux.ru" #: source/ublexec.cc:426 source/ublexec.cc:252 source/ublexec.cc:260
#: source/ublexec.cc:283 source/ublexec.cc:413
msgid "0 (High)"
msgstr "0 (Высокий)"
#: source/ublexec.cc:241 source/ublexec.cc:249 source/ublexec.cc:257
#: source/ublexec.cc:265 source/ublexec.cc:280 source/ublexec.cc:288
#: source/ublexec.cc:425 source/ublexec.cc:235 source/ublexec.cc:243
#: source/ublexec.cc:251 source/ublexec.cc:259 source/ublexec.cc:274
#: source/ublexec.cc:282 source/ublexec.cc:412
msgid "19 (Low)"
msgstr "19 (Низкий)"
#: source/ublexec.cc:159 source/ublexec.cc:156
msgid "About" msgid "About"
msgstr "О программе" msgstr "О программе"
msgid "Help" #: source/ublexec.cc:191 source/ublexec.cc:186
msgstr "Справка" msgid "Application Overview"
msgstr "Обзор приложений"
msgid "Project Home Page" msgid "Cancel"
msgstr "Домашняя страница проекта" msgstr "Отмена"
msgid "System" #: source/ublexec.cc:177 source/ublexec.cc:173
msgstr "Система" msgid "Change startup priority"
msgstr "Изменить приоритет запуска"
msgid "Development" #: source/ublexec.cc:193
msgstr "Разработка" msgid "Сancel"
msgstr "Отмена"
msgid "Other" #: source/ublexec.cc:170 source/ublexec.cc:166
msgstr "Прочие" msgid "Command Line"
msgstr "Командная строка"
msgid "Office" #: source/ublexec.cc:155 source/ublexec.cc:152
msgstr "Офис" msgid "Copyright © UBSoft LLC, 2022 - "
msgstr "Авторские права © ООО \"Юбисофт\", 2022 - "
#: source/ublexec.cc:189 source/ublexec.cc:184
msgid "Development"
msgstr "Разработка"
#: source/ublexec.cc:186 source/ublexec.cc:181
msgid "Education" msgid "Education"
msgstr "Образование" msgstr "Образование"
msgid "Settings" #: source/ublexec.cc:192 source/ublexec.cc:187
msgstr "Настройки" msgid "File Overview"
msgstr "Обзор файлов"
msgid "Multimedia" #: source/ublexec.cc:181 source/ublexec.cc:176
msgstr "Мультимедиа" msgid "Graphics"
msgstr "Графика"
#: source/ublexec.cc:158 source/ublexec.cc:155
msgid "Help"
msgstr "Справка"
#: source/ublexec.cc:183 source/ublexec.cc:178
msgid "Internet" msgid "Internet"
msgstr "Интернет" msgstr "Интернет"
msgid "Tools" #: source/ublexec.cc:184 source/ublexec.cc:179
msgstr "Инструменты" msgid "Multimedia"
msgstr "Мультимедиа"
msgid "Graphics" #: source/ublexec.cc:187 source/ublexec.cc:182
msgstr "Графика" msgid "Office"
msgstr "Офис"
msgid "ОК" #: source/ublexec.cc:188 source/ublexec.cc:183
msgstr "ОК" msgid "Other"
msgstr "Прочие"
msgid "Cancel" #: source/ublexec.cc:167 source/ublexec.cc:163
msgstr "Отмена" msgid "Please select File"
msgstr "Пожалуйста выберите Файл"
msgid "Selecting Programs" #: source/ublexec.cc:176 source/ublexec.cc:172
msgstr "Выбор программ" msgid "Priority"
msgstr "Приоритет"
msgid "Run applications as another user\nwith the specified priority" #: source/ublexec.cc:178 source/ublexec.cc:174
msgstr "Запускать приложения от имени другого пользователя\nс указанным приоритетом" msgid "Priority:"
msgstr "Приоритет:"
msgid "Team:" #: source/ublexec.cc:161 source/ublexec.cc:158
msgstr "Команда:" msgid "Project Home Page"
msgstr "Домашняя страница проекта"
msgid "Run in the terminal emulator" #: source/ublexec.cc:162
msgstr "Выполнить в эмуляторе терминала" msgid "Run"
msgstr "Запустить"
msgid "Command Line" #: source/ublexec.cc:169 source/ublexec.cc:165
msgstr "Командная строка" msgid ""
"Run applications as another user\n"
"with the specified priority"
msgstr ""
"Запускать приложения от имени другого пользователя\n"
"с указанным приоритетом"
#, fuzzy
msgid "Run as another user"
msgstr "Выполнить от имени другого пользователя:"
#: source/ublexec.cc:174 source/ublexec.cc:170
msgid "Run as another user:" msgid "Run as another user:"
msgstr "Выполнить от имени другого пользователя:" msgstr "Выполнить от имени другого пользователя:"
msgid "pkexec" #: source/ublexec.cc:160 source/ublexec.cc:164 source/ublexec.cc:165
msgstr "pkexec" #: source/ublexec.cc:166
msgid "Run as..."
msgstr "Выполнить как..."
msgid "su" #: source/ublexec.cc:172 source/ublexec.cc:168
msgstr "su" msgid "Run in the terminal emulator"
msgstr "Выполнить в эмуляторе терминала"
msgid "sudo" #: source/ublexec.cc:179 source/ublexec.cc:175
msgstr "sudo" msgid "Select an executable file or program"
msgstr "Выберите исполняемый файл или программу"
msgid "User Name:" #: source/ublexec.cc:168 source/ublexec.cc:164
msgstr "Имя пользователя:" msgid "Selecting Programs"
msgstr "Выбор программ"
msgid "User" #: source/ublexec.cc:185 source/ublexec.cc:180
msgstr "Пользователь" msgid "Settings"
msgstr "Настройки"
msgid "Change startup priority" #: source/ublexec.cc:190 source/ublexec.cc:185
msgstr "Изменить приоритет запуска" msgid "System"
msgstr "Система"
msgid "Priority:" #, fuzzy
msgstr "Приоритет:" msgid "Team"
msgstr "Команда:"
msgid "Priority" #: source/ublexec.cc:171 source/ublexec.cc:167
msgstr "Приоритет" msgid "Team:"
msgstr "Команда:"
msgid "19 (Low)" #: source/ublexec.cc:182 source/ublexec.cc:177
msgstr "19 (Низкий)" msgid "Tools"
msgstr "Инструменты"
msgid "-20 (High)" #: source/ublexec.cc:173 source/ublexec.cc:169
msgstr "-20 (Высокий)" msgid "User"
msgstr "Пользователь"
msgid "https://wiki.ublinux.com/ru/Программное_обеспечениерограммы_и_утилиты/Все/" #, fuzzy
msgstr "https://wiki.ublinux.ru/ru/Программное_обеспечениерограммы_и_утилиты/Все/" msgid "User Name"
msgstr "Имя пользователя:"
msgid "0 (High)" #: source/ublexec.cc:175 source/ublexec.cc:171
msgstr "0 (Высокий)" msgid "User Name:"
msgstr "Имя пользователя:"
msgid "Run" #: source/ublexec.cc:180 source/ublexec.cc:631 source/ublexec.cc:700
msgstr "Запустить" msgid "Warning!"
msgstr "Внимание!"
msgid "Select an executable file or program" #: source/ublexec.cc:157 source/ublexec.cc:154
msgstr "Выберите исполняемый файл или программу" msgid "https://wiki.ublinux.com"
msgstr "https://wiki.ublinux.ru"
msgid "Please select File" #: source/ublexec.cc:321 source/ublexec.cc:313
msgstr "Пожалуйста выберите Файл" msgid ""
"https://wiki.ublinux.com/ru/Программное_обеспечениерограммы_и_утилиты/Все/"
msgstr ""
"https://wiki.ublinux.ru/ru/Программное_обеспечениерограммы_и_утилиты/Все/"
msgid "Warning!" msgid "pkexec"
msgstr "Внимание!" msgstr "pkexec"
msgid "su"
msgstr "su"
msgid "sudo"
msgstr "sudo"
#: source/ublexec.cc:157 source/ublexec.cc:160 source/ublexec.cc:161
#, fuzzy
msgid "ublexec" msgid "ublexec"
msgstr "Выполнить как..." msgstr "pkexec"
msgid "Copyright © UBSoft LLC, 2022 - " msgid "ОК"
msgstr "Авторские права © ООО \"Юбисофт\", 2022 - " msgstr "ОК"

Loading…
Cancel
Save