LINUX.ORG.RU

Сообщения TRomario

 

Gtk 3.0 и gtk_menu_item_new_with_label (const gchar *label);

Форум — Development

Есть необходимость считывать пункты меню с файла. Пример файла:

1 файл
2 правка
2 сохранить

Цифры - это уровень вложенности.
Функция gtk_menu_item_new_with_label принимает в качестве параметра переменную типа const gchar. Считываю с файла в переменную типа char
1. Возможно ли преобразовать char в const gchar?
2. Какую ф-ю можно использовать взамен, чтобы была возможность считывать названия пунктов меню с файла и привязывать к пункту меню?

 

TRomario
()

Получение сведений по процессору и видеокарты

Форум — Development

1) Нужно получить Identifier процессора. В реестре Виндовс будет: x86 Family 6 Model 54 Stepping 1. Можно подобное получить утилитами через bash в ОС GNU/Linux?
2) Какими встроенными утилитами можно получить дату производства видеокарты?
Буду всем благодарен за ответы!

 

TRomario
()

Смена mac-адреса в ОС GNU/Linux Debian 7.7

Форум — Admin

Здравствуйте! Пробовал несколько способов:
1.
- ifconfig wlan0 down;
- ifconfig wlan0 hw ether 00:00:00:00:00:01;
- ifconfig wlan0 up;
- прописываю в etc/network/interfaces - hwaddress ether 00:00:00:00:00:01
- /etc/init.d/networking restart
2. С помощью macchanger
Что у меня происходит: После выполнения 1-го или 2-го пункта, мак-адрес меняется, но как выполняю переподключение к точке доступа, со второго раза, мак-адрес меняется на исходный. С первого раза подключиться не удаётся.
Доступ к точке доступа осуществляется по мак-адресу.
Использую Network Manager.

 , , ,

TRomario
()

Получение информации о компьютере с помощью API ядра Linux и языка Си

Форум — Development

В ОС Windows информацию по АО и самой ОС можно получить в реестре, к примеру, используя WinAPI и язык Си.
Есть ли в ядре Linux, API функции для вывода примерно следующего:
- дата биос'а;
- дата видеокарты;
- производитель процессора;
- объем физической памяти;
- имя компьютера и пользователя;

 ,

TRomario
()

Linux API

Форум — Development

Можно ли отнести библиотеку Gtk+ к использованию API системы Linux?
Преподаватель дал задания по API ОС. Все пишут на WinAPI. Я выбрал Linux. Какую библиотеку посоветуете использовать/изучать?
Спасибо за ответы!

Дополню: Работа с GUI и файлами. Далее пойдут работы по процессам, а также программно узнать: что за версия ОС, имя пользователя, объём внешней/внутренней памяти и т.д.

 , , , ,

TRomario
()

Как сделать меню 3-его уровня используя библиотеку Gtk+

Форум — Development

Очень интересуюсь тем, как сделать меню 3-его уровня. Ниже приведу листинг, с помощью которого получилось сделать строку меню с пунктом меню, по нажатию которого появляется меню. И для этого меню, свои пункты меню.

#include <gtk/gtk.h>
 
gint32 delete_event(GtkWidget *widget, GdkEvent *event, gpointer data)
{
    gtk_main_quit();
    return FALSE;
}
 
int main(int argc, char *argv[])
{
    GtkWidget *window;
    GtkWidget *menu_bar;
    GtkWidget *menu;
    GtkWidget *box;
 
    gtk_init(&argc, &argv);
 
    window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    gtk_window_set_title(GTK_WINDOW(window), "menu");
    gtk_container_set_border_width(GTK_CONTAINER(window), 10);
    g_signal_connect(G_OBJECT(window), "delete_event", G_CALLBACK(delete_event), "NULL");
 
    box = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
    gtk_container_add(GTK_CONTAINER(window), box);
 
    menu = gtk_menu_new(); // меню
    menu_bar = gtk_menu_bar_new(); // строка меню
    // создаем новые пункты меню
    GtkWidget *file_item = gtk_menu_item_new_with_label("file");
    GtkWidget *open_item = gtk_menu_item_new_with_label("open");
    GtkWidget *save_item = gtk_menu_item_new_with_label("save");
    GtkWidget *quit_item = gtk_menu_item_new_with_label("quit");
    // привязываем пункты меню к меню
    gtk_menu_shell_append(GTK_MENU_SHELL(menu), open_item);
    gtk_menu_shell_append(GTK_MENU_SHELL(menu), save_item);
    gtk_menu_shell_append(GTK_MENU_SHELL(menu), quit_item);
    // обработчики сигналов для пунктов меню
    g_signal_connect_swapped(G_OBJECT(open_item), "activate", G_CALLBACK(delete_event), "NULL");
    g_signal_connect_swapped(G_OBJECT(save_item), "activate", G_CALLBACK(delete_event), "NULL");
    g_signal_connect_swapped(G_OBJECT(quit_item), "activate", G_CALLBACK(delete_event), "NULL");
 
    gtk_menu_item_set_submenu(GTK_MENU_ITEM(file_item), menu);
    gtk_menu_shell_append(GTK_MENU_SHELL(menu_bar), file_item);
 
    gtk_box_pack_start(GTK_BOX(box), menu_bar, FALSE, FALSE, 3);
 
    gtk_widget_show_all(window);
 
    gtk_main();
 
    return 0;
}

 , ,

TRomario
()

RSS подписка на новые темы