Παραδείγμα για τη χρήση της προσιτότητας API

Όπως σημειώθηκε νωρίτερα, θα πρέπει να κάνετε λίγη ή καθόλου δουλειά για να κάνετε την εφαρμογή σας προσιτή αν χρησιμοποιείτε το πακέτο εργαλείων GTK, ή οποιαδήποτε άλλη βιβλιοθήκη εργαλείων η οποία να ενσωματώνει τις διεπαφές ATK. Τα δυο πιο κοινά πράγματα που ίσως χρειαστεί να κάνετε σε αυτές τις περιπτώσεις είναι:

  • να δώσετε περιγραφές για κάποια στοιχεία ελέγχου και κάποιες εικόνες χρησιμοποιώντας την atk_object_set_description() ή την atk_image_set_description():

    Παράδειγμα 1-3Καθορισμός της προσιτής περιγραφής για ένα κουμπί
    {
       AtkObject *obj;
       obj = gtk_widget_get_accessible(button);
       atk_object_set_description(obj,_("Ανοίγει το παράθυρο Προτιμήσεις"));
    }
    

  • Καθορίστε τους συσχετισμούς ανάμεσα σε κάθε ασυνήθιστη ομαδοποίηση εργαλείων χρησιμοποιώντας τις atk_relation_new() και atk_relation_set_add():

    Παράδειγμα 1-4Καθορισμός προσιτών συσχετισμών ανάμεσα σε δύο στοιχεία ελέγχου (controls)
    {
      GtkWidget *widget;
      GtkLabel *label;
    
      AtkObject *atk_widget, *atk_label;
      AtkRelationSet *relation_set;
      AtkRelation *relation;
      AtkObject *targets[1];
    
      atk_widget = gtk_widget_get_accessible (widget);
      atk_label = gtk_widget_get_accessible (GTK_WIDGET(label));
    
      relation_set = atk_object_ref_relation_set (atk_label);
      targets[0] = atk_widget;
    
      relation = atk_relation_new(targets,1, ATK_RELATION_LABEL_FOR);
      atk_relation_set_add(relation_set,relation);
      g_object_unref(G_OBJECT(relation));
    }
    

The examples in the rest of this section are mostly to give you a flavor of the scope of the ATK. They cover techniques that you may never need to use as an application developer, although they may be of interest if you are writing your own custom widgets (see Making Custom Components Accessible) or if you want to write an assistive technology application.