new_music_d::new_music_d(QWidget *parent) : QDialog(parent), ui(new Ui::new_music_d) { ui->setupUi(this); //CHECK DIR QDir dir = QDir::current(); if (!dir.exists("music")) if(!dir.mkdir("music")) QMessageBox::warning(this, tr("Dance class"), tr("Cannot create directory 'music'.")); model = new QFileSystemModel; model->setRootPath(dir.absoluteFilePath("music")); update_tree(); connect(ui->treeView, SIGNAL(clicked(QModelIndex)), this, SLOT(check_choice(QModelIndex))); connect(ui->treeView, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(add_choice(QModelIndex))); connect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(create_music())); connect(ui->buttonBox, SIGNAL(rejected()), this, SLOT(reject())); }
static gboolean handle_access_dialog (XdpImplAccess *object, GDBusMethodInvocation *invocation, const char *arg_handle, const char *arg_app_id, const char *arg_parent_window, const char *arg_title, const char *arg_subtitle, const char *arg_body, GVariant *arg_options) { g_autoptr(Request) request = NULL; const char *sender; AccessDialogHandle *handle; g_autoptr(GError) error = NULL; g_autofree char *filename = NULL; gboolean modal; GtkWidget *dialog; GdkWindow *foreign_parent = NULL; const char *deny_label; const char *grant_label; const char *icon; g_autoptr(GVariant) choices = NULL; GtkWidget *area; GtkWidget *image; GHashTable *choice_table = NULL; sender = g_dbus_method_invocation_get_sender (invocation); request = request_new (sender, arg_app_id, arg_handle); if (!g_variant_lookup (arg_options, "modal", "b", &modal)) modal = TRUE; if (!g_variant_lookup (arg_options, "deny_label", "&s", &deny_label)) deny_label = _("Deny Access"); if (!g_variant_lookup (arg_options, "grant_label", "&s", &grant_label)) grant_label = _("Grant Access"); if (!g_variant_lookup (arg_options, "icon", "&s", &icon)) icon = NULL; choices = g_variant_lookup_value (arg_options, "choices", G_VARIANT_TYPE ("a(ssa(ss)s)")); dialog = gtk_message_dialog_new (NULL, 0, GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE, arg_title, NULL); gtk_window_set_modal (GTK_WINDOW (dialog), modal); gtk_dialog_add_button (GTK_DIALOG (dialog), deny_label, GTK_RESPONSE_CANCEL); gtk_dialog_add_button (GTK_DIALOG (dialog), grant_label, GTK_RESPONSE_OK); gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog), "%s", arg_subtitle); area = gtk_message_dialog_get_message_area (GTK_MESSAGE_DIALOG (dialog)); fix_up_label_alignment (area); if (choices) { int i; choice_table = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); for (i = 0; i < g_variant_n_children (choices); i++) add_choice (area, g_variant_get_child_value (choices, i), choice_table); } if (!g_str_equal (arg_body, "")) { GtkWidget *body_label; body_label = gtk_label_new (arg_body); gtk_widget_set_halign (body_label, GTK_ALIGN_START); g_object_set (body_label, "margin-top", 10, NULL); gtk_label_set_xalign (GTK_LABEL (body_label), 0); gtk_label_set_line_wrap (GTK_LABEL (body_label), TRUE); gtk_label_set_max_width_chars (GTK_LABEL (body_label), 50); gtk_widget_show (body_label); gtk_container_add (GTK_CONTAINER (area), body_label); } image = gtk_image_new_from_icon_name (icon ? icon : "image-missing", GTK_ICON_SIZE_DIALOG); gtk_widget_set_opacity (image, icon ? 1.0 : 0.0); gtk_widget_show (image); G_GNUC_BEGIN_IGNORE_DEPRECATIONS gtk_message_dialog_set_image (GTK_MESSAGE_DIALOG (dialog), image); G_GNUC_END_IGNORE_DEPRECATIONS #ifdef GDK_WINDOWING_X11 if (g_str_has_prefix (arg_parent_window, "x11:")) { int xid; if (sscanf (arg_parent_window, "x11:%x", &xid) != 1) g_warning ("invalid xid"); else foreign_parent = gdk_x11_window_foreign_new_for_display (gtk_widget_get_display (dialog), xid); } #endif else g_warning ("Unhandled parent window type %s", arg_parent_window); handle = g_new0 (AccessDialogHandle, 1); handle->impl = object; handle->invocation = invocation; handle->request = g_object_ref (request); handle->dialog = g_object_ref (dialog); handle->choices = choice_table; g_signal_connect (request, "handle-close", G_CALLBACK (handle_close), handle); g_signal_connect (dialog, "response", G_CALLBACK (access_dialog_response), handle); gtk_widget_realize (dialog); if (foreign_parent) gdk_window_set_transient_for (gtk_widget_get_window (dialog), foreign_parent); gtk_widget_show (dialog); request_export (request, g_dbus_method_invocation_get_connection (invocation)); return TRUE; }