## CongSelection

CongSelection —

## Synopsis

    CongSelection* cong_selection_new           (void);
    void        cong_selection_free             (CongSelection *selection);
    void        cong_selection_import           (CongSelection *selection,
                                                 GtkWidget *widget);
    void        cong_selection_start_from_curs  (CongSelection *selection,
                                                 CongCursor *curs);
    void        cong_selection_end_from_curs    (CongSelection *selection,
                                                 CongCursor *curs);
    CongRange*  cong_selection_get_logical_range
                                                (CongSelection *selection);
    CongRange*  cong_selection_get_ordered_range
                                                (CongSelection *selection);
    CongLocation* cong_selection_get_logical_start
                                                (CongSelection *selection);
    CongLocation* cong_selection_get_logical_end
                                                (CongSelection *selection);
    CongLocation* cong_selection_get_ordered_start
                                                (CongSelection *selection);
    CongLocation* cong_selection_get_ordered_end
                                                (CongSelection *selection);
    void        cong_selection_set_logical_start
                                                (CongSelection *selection,
                                                 const CongLocation *location);
    void        cong_selection_set_logical_end  (CongSelection *selection,
                                                 const CongLocation *location);
    void        cong_selection_set_logical_range
                                                (CongSelection *selection,
                                                 const CongLocation *start_loc,
                                                 const CongLocation *end_loc);
    gchar*      cong_selection_get_selected_text
                                                (CongDocument *doc);
    gboolean    cong_selection_is_node          (CongSelection *selection,
                                                 CongNodePtr node);
    void        cong_selection_nullify          (CongSelection *selection);
    gboolean    cong_selection_is_valid         (CongSelection *selection);
    GdkGC*      cong_selection_legacy_get_gc_valid
                                                (CongSelection *selection);
    GdkGC*      cong_selection_legacy_get_gc_invalid
                                                (CongSelection *selection);

## Description

## Details

### cong_selection_new ()

    CongSelection* cong_selection_new           (void);

Returns : | a new CongSelection

### cong_selection_free ()

    void        cong_selection_free             (CongSelection *selection);

TODO: Write me

`selection` : |

### cong_selection_import ()

    void        cong_selection_import           (CongSelection *selection,
                                                 GtkWidget *widget);

TODO: Write me

`selection` : |
`widget` : |

### cong_selection_start_from_curs ()

    void        cong_selection_start_from_curs  (CongSelection *selection,
                                                 CongCursor *curs);

TODO: Write me

`selection` : |
`curs` : |

### cong_selection_end_from_curs ()

    void        cong_selection_end_from_curs    (CongSelection *selection,
                                                 CongCursor *curs);

TODO: Write me

`selection` : |
`curs` : |

### cong_selection_get_logical_range ()

    CongRange*  cong_selection_get_logical_range
                                                (CongSelection *selection);

TODO: Write me

`selection` : |
Returns : |

### cong_selection_get_ordered_range ()

    CongRange*  cong_selection_get_ordered_range
                                                (CongSelection *selection);

TODO: Write me

`selection` : |
Returns : |

### cong_selection_get_logical_start ()

    CongLocation* cong_selection_get_logical_start
                                                (CongSelection *selection);

TODO: Write me

`selection` : |
Returns : |

### cong_selection_get_logical_end ()

    CongLocation* cong_selection_get_logical_end
                                                (CongSelection *selection);

TODO: Write me

`selection` : |
Returns : |

### cong_selection_get_ordered_start ()

    CongLocation* cong_selection_get_ordered_start
                                                (CongSelection *selection);

TODO: Write me

`selection` : |
Returns : |

### cong_selection_get_ordered_end ()

    CongLocation* cong_selection_get_ordered_end
                                                (CongSelection *selection);

TODO: Write me

`selection` : |
Returns : |

### cong_selection_set_logical_start ()

    void        cong_selection_set_logical_start
                                                (CongSelection *selection,
                                                 const CongLocation *location);

TODO: Write me

`selection` : |
`location` : |

### cong_selection_set_logical_end ()

    void        cong_selection_set_logical_end  (CongSelection *selection,
                                                 const CongLocation *location);

TODO: Write me

`selection` : |
`location` : |

### cong_selection_set_logical_range ()

    void        cong_selection_set_logical_range
                                                (CongSelection *selection,
                                                 const CongLocation *start_loc,
                                                 const CongLocation *end_loc);

TODO: Write me

`selection` : |
`start_loc` : |
`end_loc` : |

### cong_selection_get_selected_text ()

    gchar*      cong_selection_get_selected_text
                                                (CongDocument *doc);

TODO: Write me

`doc` : |
Returns : |

### cong_selection_is_node ()

    gboolean    cong_selection_is_node          (CongSelection *selection,
                                                 CongNodePtr node);

TODO: Write me

`selection` : |
`node` : |
Returns : |

### cong_selection_nullify ()

    void        cong_selection_nullify          (CongSelection *selection);

TODO: Write me

`selection` : |

### cong_selection_is_valid ()

    gboolean    cong_selection_is_valid         (CongSelection *selection);

TODO: Write me

`selection` : |
Returns : |

### cong_selection_legacy_get_gc_valid ()

    GdkGC*      cong_selection_legacy_get_gc_valid
                                                (CongSelection *selection);

TODO: Write me

`selection` : |
Returns : |

### cong_selection_legacy_get_gc_invalid ()

    GdkGC*      cong_selection_legacy_get_gc_invalid
                                                (CongSelection *selection);

TODO: Write me

`selection` : |
Returns : |