diff options
author | Bastien Nocera <hadess@hadess.net> | 2011-03-29 14:57:52 +0100 |
---|---|---|
committer | Bastien Nocera <hadess@hadess.net> | 2011-03-29 14:57:52 +0100 |
commit | 54289eb8ac9e464e539c0b6980777357d8021c4a (patch) | |
tree | c03a2877d031803a0c0dedbb0202571f59a12fff | |
parent | d5a5819415b07a874833af8f4122161e99f8bdf4 (diff) | |
download | gnome-bluetooth-54289eb8ac9e464e539c0b6980777357d8021c4a.tar.gz |
properties: Hide labels with no devices selected
https://bugzilla.gnome.org/show_bug.cgi?id=646030
-rw-r--r-- | properties/bluetooth.ui | 685 | ||||
-rw-r--r-- | properties/cc-bluetooth-panel.c | 14 |
2 files changed, 377 insertions, 322 deletions
diff --git a/properties/bluetooth.ui b/properties/bluetooth.ui index 80a8cbbb..f91ea3e7 100644 --- a/properties/bluetooth.ui +++ b/properties/bluetooth.ui @@ -87,411 +87,452 @@ <property name="n_columns">2</property> <property name="column_spacing">6</property> <child> - <object class="GtkScrolledWindow" id="scrolledwindow1"> + <object class="GtkToolbar" id="toolbar"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="hscrollbar_policy">never</property> - <property name="shadow_type">in</property> + <property name="can_focus">False</property> + <property name="icon_size">1</property> <child> - <object class="GtkViewport" id="viewport1"> + <object class="GtkToolButton" id="button_setup"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="shadow_type">none</property> + <property name="use_action_appearance">False</property> + <property name="use_underline">True</property> + <property name="icon_name">list-add-symbolic</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="button_delete"> + <property name="visible">True</property> + <property name="sensitive">False</property> + <property name="can_focus">False</property> + <property name="use_action_appearance">False</property> + <property name="use_underline">True</property> + <property name="icon_name">list-remove-symbolic</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + </object> + <packing> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options">GTK_SHRINK | GTK_FILL</property> + </packing> + </child> + <child> + <object class="GtkBox" id="box1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkScrolledWindow" id="message_scrolledwindow"> + <property name="sensitive">False</property> + <property name="can_focus">True</property> + <property name="no_show_all">True</property> + <property name="hscrollbar_policy">never</property> + <property name="shadow_type">in</property> + <property name="min_content_width">200</property> + <property name="min_content_height">250</property> <child> - <object class="GtkVBox" id="properties_vbox"> + <object class="GtkViewport" id="viewport2"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="margin_top">8</property> <child> - <object class="GtkTable" id="properties_table"> + <object class="GtkLabel" id="message_label"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="n_rows">4</property> - <property name="n_columns">4</property> - <property name="column_spacing">18</property> - <property name="row_spacing">6</property> - <child> - <object class="GtkLabel" id="connection_label"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">1</property> - <property name="label" translatable="yes">Connection</property> - <style> - <class name="dim-label"/> - </style> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label2"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">1</property> - <property name="label" translatable="yes">Paired</property> - <style> - <class name="dim-label"/> - </style> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="paired_label"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label">Yes</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="right_attach">3</property> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label4"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">1</property> - <property name="label" translatable="yes">Type</property> - <style> - <class name="dim-label"/> - </style> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">2</property> - <property name="bottom_attach">3</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="type_label"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label">Keyboard</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="right_attach">3</property> - <property name="top_attach">2</property> - <property name="bottom_attach">3</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <object class="GtkHBox" id="hbox1"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <child> - <object class="GtkSwitch" id="switch_connection"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="use_action_appearance">False</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <placeholder/> - </child> - </object> - <packing> - <property name="left_attach">2</property> - <property name="right_attach">3</property> - <property name="y_options"></property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label3"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">1</property> - <property name="label" translatable="yes">Address</property> - <style> - <class name="dim-label"/> - </style> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">3</property> - <property name="bottom_attach">4</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="address_label"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="label">00:00:00:00:00</property> - <property name="selectable">True</property> - </object> - <packing> - <property name="left_attach">2</property> - <property name="right_attach">3</property> - <property name="top_attach">3</property> - <property name="bottom_attach">4</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> + <property name="xalign">0</property> + <property name="yalign">0</property> + <property name="xpad">12</property> + <property name="ypad">12</property> + <property name="label">Bluetooth is disabled by hardware switch</property> + <property name="wrap">True</property> </object> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">0</property> - </packing> </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + <child> + <object class="GtkNotebook" id="props_notebook"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="show_tabs">False</property> + <property name="show_border">False</property> + <child> + <object class="GtkScrolledWindow" id="scrolledwindow2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="shadow_type">in</property> + <child> + <object class="GtkViewport" id="viewport3"> + <property name="visible">True</property> + <property name="can_focus">False</property> <child> - <object class="GtkLabel" id="label6"> + <object class="GtkLabel" id="label8"> <property name="visible">True</property> <property name="can_focus">False</property> </object> - <packing> - <property name="expand">True</property> - <property name="fill">True</property> - <property name="position">1</property> - </packing> </child> + </object> + </child> + </object> + </child> + <child type="tab"> + <object class="GtkLabel" id="label1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label">empty</property> + </object> + <packing> + <property name="tab_fill">False</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow" id="scrolledwindow1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hscrollbar_policy">never</property> + <property name="shadow_type">in</property> + <child> + <object class="GtkViewport" id="viewport1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="shadow_type">none</property> <child> - <object class="GtkVBox" id="vbox3"> + <object class="GtkVBox" id="properties_vbox"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="margin_right">6</property> - <property name="margin_bottom">6</property> + <property name="margin_top">8</property> <child> - <object class="GtkHBox" id="hbox5"> + <object class="GtkTable" id="properties_table"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="n_rows">4</property> + <property name="n_columns">4</property> + <property name="column_spacing">18</property> + <property name="row_spacing">6</property> <child> - <placeholder/> + <object class="GtkLabel" id="connection_label"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">1</property> + <property name="label" translatable="yes">Connection</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="y_options">GTK_FILL</property> + </packing> </child> <child> - <object class="GtkButton" id="mouse_button"> - <property name="label" translatable="yes">Mouse and Touchpad Settings</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="no_show_all">True</property> - <property name="use_action_appearance">False</property> + <object class="GtkLabel" id="label4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">1</property> + <property name="label" translatable="yes">Paired</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="pack_type">end</property> - <property name="position">1</property> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="paired_label"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label">Yes</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="right_attach">3</property> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">1</property> + <property name="label" translatable="yes">Type</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">2</property> + <property name="bottom_attach">3</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="type_label"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label">Keyboard</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="right_attach">3</property> + <property name="top_attach">2</property> + <property name="bottom_attach">3</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <object class="GtkHBox" id="hbox1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkSwitch" id="switch_connection"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="use_action_appearance">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="left_attach">2</property> + <property name="right_attach">3</property> + <property name="y_options"></property> </packing> </child> + <child> + <object class="GtkLabel" id="label6"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">1</property> + <property name="label" translatable="yes">Address</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">3</property> + <property name="bottom_attach">4</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="address_label"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label">00:00:00:00:00</property> + <property name="selectable">True</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="right_attach">3</property> + <property name="top_attach">3</property> + <property name="bottom_attach">4</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="expand">False</property> - <property name="fill">True</property> + <property name="fill">False</property> <property name="position">0</property> </packing> </child> <child> - <object class="GtkHBox" id="hbox3"> + <object class="GtkLabel" id="label7"> <property name="visible">True</property> <property name="can_focus">False</property> - <child> - <placeholder/> - </child> - <child> - <object class="GtkButton" id="sound_button"> - <property name="label" translatable="yes">Sound Settings</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="no_show_all">True</property> - <property name="use_action_appearance">False</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="pack_type">end</property> - <property name="position">1</property> - </packing> - </child> </object> <packing> - <property name="expand">False</property> + <property name="expand">True</property> <property name="fill">True</property> <property name="position">1</property> </packing> </child> <child> - <object class="GtkHBox" id="hbox4"> + <object class="GtkVBox" id="vbox3"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="margin_right">6</property> + <property name="margin_bottom">6</property> <child> - <placeholder/> + <object class="GtkHBox" id="hbox5"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <placeholder/> + </child> + <child> + <object class="GtkButton" id="mouse_button"> + <property name="label" translatable="yes">Mouse and Touchpad Settings</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="no_show_all">True</property> + <property name="use_action_appearance">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="pack_type">end</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> + </packing> </child> <child> - <object class="GtkButton" id="keyboard_button"> - <property name="label" translatable="yes">Keyboard Settings</property> - <property name="can_focus">True</property> - <property name="receives_default">True</property> - <property name="no_show_all">True</property> - <property name="use_action_appearance">False</property> + <object class="GtkHBox" id="hbox3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <placeholder/> + </child> + <child> + <object class="GtkButton" id="sound_button"> + <property name="label" translatable="yes">Sound Settings</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="no_show_all">True</property> + <property name="use_action_appearance">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="pack_type">end</property> + <property name="position">1</property> + </packing> + </child> </object> <packing> <property name="expand">False</property> - <property name="fill">False</property> - <property name="pack_type">end</property> + <property name="fill">True</property> <property name="position">1</property> </packing> </child> + <child> + <object class="GtkHBox" id="hbox4"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <placeholder/> + </child> + <child> + <object class="GtkButton" id="keyboard_button"> + <property name="label" translatable="yes">Keyboard Settings</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="no_show_all">True</property> + <property name="use_action_appearance">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="pack_type">end</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> </object> <packing> <property name="expand">False</property> <property name="fill">True</property> + <property name="pack_type">end</property> <property name="position">2</property> </packing> </child> </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="pack_type">end</property> - <property name="position">2</property> - </packing> </child> </object> </child> </object> - </child> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="bottom_attach">2</property> - </packing> - </child> - <child> - <object class="GtkToolbar" id="toolbar"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="icon_size">1</property> - <style> - <class name="inline-toolbar"/> - </style> - <child> - <object class="GtkToolButton" id="button_setup"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="use_action_appearance">False</property> - <property name="use_underline">True</property> - <property name="icon_name">list-add-symbolic</property> - </object> <packing> - <property name="expand">False</property> - <property name="homogeneous">True</property> + <property name="position">1</property> </packing> </child> - <child> - <object class="GtkToolButton" id="button_delete"> + <child type="tab"> + <object class="GtkLabel" id="label2"> <property name="visible">True</property> - <property name="sensitive">False</property> <property name="can_focus">False</property> - <property name="use_action_appearance">False</property> - <property name="use_underline">True</property> - <property name="icon_name">list-remove-symbolic</property> + <property name="label">properties</property> </object> <packing> - <property name="expand">False</property> - <property name="homogeneous">True</property> + <property name="position">1</property> + <property name="tab_fill">False</property> </packing> </child> + <child> + <placeholder/> + </child> </object> <packing> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options">GTK_SHRINK | GTK_FILL</property> + <property name="left_attach">1</property> + <property name="right_attach">2</property> </packing> </child> <child> - <object class="GtkBox" id="box1"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="orientation">vertical</property> - <child> - <object class="GtkScrolledWindow" id="message_scrolledwindow"> - <property name="sensitive">False</property> - <property name="can_focus">True</property> - <property name="no_show_all">True</property> - <property name="hscrollbar_policy">never</property> - <property name="shadow_type">in</property> - <property name="min_content_width">200</property> - <property name="min_content_height">250</property> - <child> - <object class="GtkViewport" id="viewport2"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <child> - <object class="GtkLabel" id="message_label"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="xalign">0</property> - <property name="yalign">0</property> - <property name="xpad">12</property> - <property name="ypad">12</property> - <property name="label">Bluetooth is disabled by hardware switch</property> - <property name="wrap">True</property> - </object> - </child> - </object> - </child> - </object> - <packing> - <property name="expand">True</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <placeholder/> - </child> - </object> + <placeholder/> </child> </object> <packing> diff --git a/properties/cc-bluetooth-panel.c b/properties/cc-bluetooth-panel.c index c2180a47..fd9c9a96 100644 --- a/properties/cc-bluetooth-panel.c +++ b/properties/cc-bluetooth-panel.c @@ -196,6 +196,18 @@ dump_current_device (CcBluetoothPanel *self) bluetooth_client_dump_device (model, &iter, FALSE); } +enum { + NOTEBOOK_PAGE_EMPTY = 0, + NOTEBOOK_PAGE_PROPS = 1 +}; + +static void +set_notebook_page (CcBluetoothPanel *self, + int page) +{ + gtk_notebook_set_current_page (GTK_NOTEBOOK (WID ("props_notebook")), page); +} + static void cc_bluetooth_panel_update_properties (CcBluetoothPanel *self) { @@ -218,6 +230,7 @@ cc_bluetooth_panel_update_properties (CcBluetoothPanel *self) gtk_label_set_text (GTK_LABEL (WID ("type_label")), ""); gtk_label_set_text (GTK_LABEL (WID ("address_label")), ""); gtk_widget_set_sensitive (WID ("button_delete"), FALSE); + set_notebook_page (self, NOTEBOOK_PAGE_EMPTY); } else { BluetoothType type; gboolean connected; @@ -270,6 +283,7 @@ cc_bluetooth_panel_update_properties (CcBluetoothPanel *self) g_free (bdaddr); gtk_widget_set_sensitive (WID ("button_delete"), TRUE); + set_notebook_page (self, NOTEBOOK_PAGE_PROPS); } g_signal_handlers_unblock_by_func (button, switch_connected_active_changed, self); |