Skip to content
This repository was archived by the owner on Mar 4, 2024. It is now read-only.
This repository was archived by the owner on Mar 4, 2024. It is now read-only.

FileChooser interface is not implementable #756

Open
@kelnos

Description

@kelnos

I'm trying to build my own widget and have it implement the GtkFileChooser interface. To my ObjectSubclass impl, I've added:

type Interfaces = (gtk::FileChooser,);

However, I get the following error:

error[E0277]: the trait bound `gtk::FileChooser: IsImplementable<file_chooser_widget::imp::BetterFileChooserWidget>` is not satisfied
   --> widget/src/file_chooser_widget.rs:110:27
    |
110 |         type Interfaces = (gtk::FileChooser,);
    |                           ^^^^^^^^^^^^^^^^^^^ the trait `IsImplementable<file_chooser_widget::imp::BetterFileChooserWidget>` is not implemented for `gtk::FileChooser`
    |
    = note: required because of the requirements on the impl of `InterfaceList<file_chooser_widget::imp::BetterFileChooserWidget>` for `(gtk::FileChooser,)`
note: required by a bound in `gtk::subclass::prelude::ObjectSubclass::Interfaces`
   --> /home/brian/.cargo/registry/src/proxy-git.cwkhome.fun-1ecc6299db9ec823/glib-0.15.11/src/subclass/types.rs:549:22
    |
549 |     type Interfaces: InterfaceList<Self>;
    |                      ^^^^^^^^^^^^^^^^^^^ required by this bound in `gtk::subclass::prelude::ObjectSubclass::Interfaces`

This seems to be correct; I don't see an IsImplementable implementation for FileChooser. There also isn't a FileChooserImpl trait to implement like I'd expect (though there is FileChooserExt, but my -- perhaps incorrect -- understanding is that is for consumers, not subclassers). Am I missing something here, or is this feature not implemented?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions