use crate::{WebsitePolicies, ffi};
use glib::{prelude::*, translate::*};
glib::wrapper! {
#[doc(alias = "WebKitPolicyDecision")]
pub struct PolicyDecision(Object<ffi::WebKitPolicyDecision, ffi::WebKitPolicyDecisionClass>);
match fn {
type_ => || ffi::webkit_policy_decision_get_type(),
}
}
impl PolicyDecision {
pub const NONE: Option<&'static PolicyDecision> = None;
}
pub trait PolicyDecisionExt: IsA<PolicyDecision> + 'static {
#[doc(alias = "webkit_policy_decision_download")]
fn download(&self) {
unsafe {
ffi::webkit_policy_decision_download(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "webkit_policy_decision_ignore")]
fn ignore(&self) {
unsafe {
ffi::webkit_policy_decision_ignore(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "webkit_policy_decision_use")]
#[doc(alias = "use")]
fn use_(&self) {
unsafe {
ffi::webkit_policy_decision_use(self.as_ref().to_glib_none().0);
}
}
#[doc(alias = "webkit_policy_decision_use_with_policies")]
fn use_with_policies(&self, policies: &WebsitePolicies) {
unsafe {
ffi::webkit_policy_decision_use_with_policies(
self.as_ref().to_glib_none().0,
policies.to_glib_none().0,
);
}
}
}
impl<O: IsA<PolicyDecision>> PolicyDecisionExt for O {}