Skip to main content

EditorMode

Struct EditorMode 

Source
pub struct EditorMode;
Expand description

Source code, with language features: the mode of crate::input::EditorState.

Trait Implementations§

Source§

impl InputModeKind for EditorMode

Source§

const MULTI_LINE: bool = true

Whether this kind of input spans more than one line. Read more
Source§

const CODE_EDITOR: bool = true

Whether this kind of input is a source-code editor.
Source§

type Extras = EditorExtras

State only this mode needs. Read more
Source§

fn hover_definition_style( state: &InputBaseState<EditorMode>, _cx: &App, ) -> Option<(Range<usize>, HighlightStyle)>

The range highlighted while Cmd-hovering a symbol, with its style.
Source§

fn hover_definition_hitbox( state: &InputBaseState<EditorMode>, window: &mut Window, _cx: &App, ) -> Option<Hitbox>

The hitbox for Cmd-hover, when the mode supports go-to-definition.
Source§

fn reset_language_features(state: &mut InputBaseState<EditorMode>)

Drops cached language-server results, e.g. after the text is replaced.
Source§

fn reset_annotations(state: &mut InputBaseState<EditorMode>)

Drops decorations and hover state when the text is replaced wholesale.
Source§

fn adjust_annotations( state: &mut InputBaseState<EditorMode>, range: &Range<usize>, new_len: usize, )

Slides decoration ranges along with an edit.
Source§

fn refresh_language_features( state: &mut InputBaseState<EditorMode>, window: &mut Window, cx: &mut Context<'_, InputBaseState<EditorMode>>, )

Refreshes language-server state after the text changed.
Source§

fn accept_inline_completion( state: &mut InputBaseState<EditorMode>, window: &mut Window, cx: &mut Context<'_, InputBaseState<EditorMode>>, ) -> bool

Takes the pending inline completion, when Tab should accept it.
Source§

fn has_inline_completion(state: &InputBaseState<EditorMode>) -> bool

Whether an inline completion is waiting to be accepted.
Source§

fn on_click( state: &mut InputBaseState<EditorMode>, event: &MouseDownEvent, offset: usize, window: &mut Window, cx: &mut Context<'_, InputBaseState<EditorMode>>, ) -> bool

Reacts to a click, for Cmd-click go-to-definition.
Source§

fn clear_hover_state( state: &mut InputBaseState<EditorMode>, cx: &mut Context<'_, InputBaseState<EditorMode>>, )

Drops hover state when the pointer leaves or focus moves.
Source§

fn on_text_typed( state: &mut InputBaseState<EditorMode>, range: &Range<usize>, text: &str, window: &mut Window, cx: &mut Context<'_, InputBaseState<EditorMode>>, )

Offers freshly typed text to the completion engine.
Source§

fn clear_inline_completion( state: &mut InputBaseState<EditorMode>, cx: &mut Context<'_, InputBaseState<EditorMode>>, )

Drops any inline completion after the text or cursor moved.
Source§

fn hide_context_menu( state: &mut InputBaseState<EditorMode>, cx: &mut Context<'_, InputBaseState<EditorMode>>, )

Closes any open completion or code-action menu.
Source§

fn is_context_menu_open(state: &InputBaseState<EditorMode>, cx: &App) -> bool

Whether a completion or code-action menu is currently open.
Source§

fn handle_context_menu_action( state: &mut InputBaseState<EditorMode>, action: Box<dyn Action>, window: &mut Window, cx: &mut Context<'_, InputBaseState<EditorMode>>, ) -> bool

Lets an open menu consume the action first. Returns true when it did.
Source§

fn on_hover_definition( state: &mut InputBaseState<EditorMode>, offset: usize, window: &mut Window, cx: &mut Context<'_, InputBaseState<EditorMode>>, )

Highlights the symbol under the pointer for go-to-definition. Read more
Source§

fn on_mouse_move( state: &mut InputBaseState<EditorMode>, offset: usize, event: &MouseMoveEvent, window: &mut Window, cx: &mut Context<'_, InputBaseState<EditorMode>>, )

Reacts to the pointer moving, for the hover popover.
Source§

fn drive_highlighter( highlighter: &Rc<RefCell<Option<Box<dyn InputHighlighter>>>>, edit: InputEdit, text: &Rope, folding: bool, window: &mut Window, cx: &mut Context<'_, InputBaseState<EditorMode>>, )

Drives the syntax highlighter after the text changed. Read more
Source§

fn register_actions( element: Stateful<Div>, entity: &Entity<InputBaseState<EditorMode>>, window: &mut Window, ) -> Stateful<Div>

Registers the actions that only this mode handles.
Source§

impl MultiLineMode for EditorMode

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more