Code cleanup

This commit is contained in:
Pierre Pronchery 2013-12-06 22:36:01 +01:00
parent dfedc15b9d
commit 45a0e14b31
2 changed files with 30 additions and 14 deletions

View File

@ -100,6 +100,17 @@ typedef struct _WPANetwork
int enabled; int enabled;
} WPANetwork; } WPANetwork;
typedef enum _WPAScanResult
{
WSR_UPDATED = 0,
WSR_BSSID,
WSR_FREQUENCY,
WSR_LEVEL,
WSR_SSID
} WPAScanResult;
#define WSR_LAST WSR_SSID
#define WSR_COUNT (WSR_LAST + 1)
typedef struct _PanelApplet typedef struct _PanelApplet
{ {
PanelAppletHelper * helper; PanelAppletHelper * helper;
@ -188,8 +199,8 @@ static WPA * _wpa_init(PanelAppletHelper * helper, GtkWidget ** widget)
gtk_widget_modify_font(wpa->label, bold); gtk_widget_modify_font(wpa->label, bold);
gtk_box_pack_start(GTK_BOX(hbox), wpa->label, FALSE, TRUE, 0); gtk_box_pack_start(GTK_BOX(hbox), wpa->label, FALSE, TRUE, 0);
#endif #endif
wpa->store = gtk_list_store_new(4, G_TYPE_STRING, G_TYPE_UINT, wpa->store = gtk_list_store_new(WSR_COUNT, G_TYPE_BOOLEAN,
G_TYPE_UINT, G_TYPE_STRING); G_TYPE_STRING, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_STRING);
_wpa_start(wpa); _wpa_start(wpa);
gtk_widget_show_all(hbox); gtk_widget_show_all(hbox);
pango_font_description_free(bold); pango_font_description_free(bold);
@ -660,8 +671,9 @@ static void _clicked_network_view(WPA * wpa, GtkWidget * menu)
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
for(; valid == TRUE; valid = gtk_tree_model_iter_next(model, &iter)) for(; valid == TRUE; valid = gtk_tree_model_iter_next(model, &iter))
{ {
gtk_tree_model_get(model, &iter, 0, &bssid, 1, &frequency, gtk_tree_model_get(model, &iter, WSR_BSSID, &bssid,
2, &level, 3, &ssid, -1); WSR_FREQUENCY, &frequency, WSR_LEVEL, &level,
WSR_SSID, &ssid, -1);
menuitem = gtk_image_menu_item_new_with_label((ssid != NULL) menuitem = gtk_image_menu_item_new_with_label((ssid != NULL)
? ssid : bssid); ? ssid : bssid);
#if GTK_CHECK_VERSION(2, 12, 0) #if GTK_CHECK_VERSION(2, 12, 0)
@ -1007,7 +1019,7 @@ static void _read_scan_results(WPA * wpa, char const * buf, size_t cnt)
char bssid[18]; char bssid[18];
unsigned int frequency; unsigned int frequency;
unsigned int level; unsigned int level;
char flags[32]; char flags[80];
char ssid[80]; char ssid[80];
GtkTreeIter iter; GtkTreeIter iter;
@ -1025,7 +1037,7 @@ static void _read_scan_results(WPA * wpa, char const * buf, size_t cnt)
#ifdef DEBUG #ifdef DEBUG
fprintf(stderr, "DEBUG: line \"%s\"\n", p); fprintf(stderr, "DEBUG: line \"%s\"\n", p);
#endif #endif
if((res = sscanf(p, "%17s %u %u %31s %79[^\n]", bssid, if((res = sscanf(p, "%17s %u %u %79s %79[^\n]", bssid,
&frequency, &level, flags, &frequency, &level, flags,
ssid)) >= 3) ssid)) >= 3)
{ {
@ -1038,11 +1050,13 @@ static void _read_scan_results(WPA * wpa, char const * buf, size_t cnt)
flags, ssid); flags, ssid);
#endif #endif
gtk_list_store_append(wpa->store, &iter); gtk_list_store_append(wpa->store, &iter);
gtk_list_store_set(wpa->store, &iter, 0, bssid, gtk_list_store_set(wpa->store, &iter, WSR_UPDATED, TRUE,
1, frequency, 2, level, -1); WSR_BSSID, bssid,
WSR_FREQUENCY, frequency,
WSR_LEVEL, level, -1);
if(res == 5) if(res == 5)
gtk_list_store_set(wpa->store, &iter, 3, ssid, gtk_list_store_set(wpa->store, &iter,
-1); WSR_SSID, ssid, -1);
} }
} }
free(p); free(p);

View File

@ -102,13 +102,15 @@ int main(int argc, char * argv[])
gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(view), TRUE); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(view), TRUE);
renderer = gtk_cell_renderer_text_new(); renderer = gtk_cell_renderer_text_new();
column = gtk_tree_view_column_new_with_attributes("SSID", renderer, column = gtk_tree_view_column_new_with_attributes("SSID", renderer,
"text", 3, NULL); "text", WSR_SSID, NULL);
gtk_tree_view_column_set_sort_column_id(column, 3); gtk_tree_view_column_set_resizable(column, TRUE);
gtk_tree_view_column_set_sort_column_id(column, WSR_SSID);
gtk_tree_view_append_column(GTK_TREE_VIEW(view), column); gtk_tree_view_append_column(GTK_TREE_VIEW(view), column);
renderer = gtk_cell_renderer_text_new(); renderer = gtk_cell_renderer_text_new();
column = gtk_tree_view_column_new_with_attributes("BSSID", renderer, column = gtk_tree_view_column_new_with_attributes("BSSID", renderer,
"text", 0, NULL); "text", WSR_BSSID, NULL);
gtk_tree_view_column_set_sort_column_id(column, 1); gtk_tree_view_column_set_resizable(column, TRUE);
gtk_tree_view_column_set_sort_column_id(column, WSR_BSSID);
gtk_tree_view_append_column(GTK_TREE_VIEW(view), column); gtk_tree_view_append_column(GTK_TREE_VIEW(view), column);
gtk_container_add(GTK_CONTAINER(widget), view); gtk_container_add(GTK_CONTAINER(widget), view);
gtk_container_add(GTK_CONTAINER(window), widget); gtk_container_add(GTK_CONTAINER(window), widget);