ServerHandler

Trait ServerHandler 

Source
pub trait ServerHandler<S: Server> {
    type InputStyleArray: AsRef<[InputStyle]>;
    type InputContextData;

    // Required methods
    fn new_ic_data(
        &mut self,
        server: &mut S,
        input_style: InputStyle,
    ) -> Result<Self::InputContextData, ServerError>;
    fn input_styles(&self) -> Self::InputStyleArray;
    fn filter_events(&self) -> u32;
    fn handle_connect(&mut self, server: &mut S) -> Result<(), ServerError>;
    fn handle_create_ic(
        &mut self,
        server: &mut S,
        user_ic: &mut UserInputContext<Self::InputContextData>,
    ) -> Result<(), ServerError>;
    fn handle_destroy_ic(
        &mut self,
        server: &mut S,
        user_ic: UserInputContext<Self::InputContextData>,
    ) -> Result<(), ServerError>;
    fn handle_reset_ic(
        &mut self,
        server: &mut S,
        user_ic: &mut UserInputContext<Self::InputContextData>,
    ) -> Result<String, ServerError>;
    fn handle_set_focus(
        &mut self,
        server: &mut S,
        user_ic: &mut UserInputContext<Self::InputContextData>,
    ) -> Result<(), ServerError>;
    fn handle_unset_focus(
        &mut self,
        server: &mut S,
        user_ic: &mut UserInputContext<Self::InputContextData>,
    ) -> Result<(), ServerError>;
    fn handle_set_ic_values(
        &mut self,
        server: &mut S,
        user_ic: &mut UserInputContext<Self::InputContextData>,
    ) -> Result<(), ServerError>;
    fn handle_forward_event(
        &mut self,
        server: &mut S,
        user_ic: &mut UserInputContext<Self::InputContextData>,
        xev: &S::XEvent,
    ) -> Result<bool, ServerError>;
}

Required Associated Types§

Required Methods§

Source

fn new_ic_data( &mut self, server: &mut S, input_style: InputStyle, ) -> Result<Self::InputContextData, ServerError>

Source

fn input_styles(&self) -> Self::InputStyleArray

Source

fn filter_events(&self) -> u32

Source

fn handle_connect(&mut self, server: &mut S) -> Result<(), ServerError>

Source

fn handle_create_ic( &mut self, server: &mut S, user_ic: &mut UserInputContext<Self::InputContextData>, ) -> Result<(), ServerError>

Source

fn handle_destroy_ic( &mut self, server: &mut S, user_ic: UserInputContext<Self::InputContextData>, ) -> Result<(), ServerError>

Source

fn handle_reset_ic( &mut self, server: &mut S, user_ic: &mut UserInputContext<Self::InputContextData>, ) -> Result<String, ServerError>

Source

fn handle_set_focus( &mut self, server: &mut S, user_ic: &mut UserInputContext<Self::InputContextData>, ) -> Result<(), ServerError>

Source

fn handle_unset_focus( &mut self, server: &mut S, user_ic: &mut UserInputContext<Self::InputContextData>, ) -> Result<(), ServerError>

Source

fn handle_set_ic_values( &mut self, server: &mut S, user_ic: &mut UserInputContext<Self::InputContextData>, ) -> Result<(), ServerError>

Source

fn handle_forward_event( &mut self, server: &mut S, user_ic: &mut UserInputContext<Self::InputContextData>, xev: &S::XEvent, ) -> Result<bool, ServerError>

return false when event back to client if return true it consumed and don’t back to client

Implementors§