ColumnContext

Struct ColumnContext 

Source
pub struct ColumnContext { /* private fields */ }
Expand description

Context for a specific column, providing access to sorting and visibility controls.

This type is passed to TableColumn::render_header and TableColumn::render_cell, allowing columns to interact with table state.

§Sorting

§Column Visibility and Ordering

§Example

impl TableColumn<User> for Col {
    fn column_name(&self) -> String {
        "col".into()
    }

    fn render_header(&self, context: ColumnContext, attributes: Vec<Attribute>) -> Element {
        rsx! {
            th { ..attributes,
                button {
                    onclick: move |_| {
                        // Request ascending sort
                        context.request_sort(SortGesture::AddLast(Sort {
                            direction: SortDirection::Ascending,
                        }));
                    },
                    "Sort"
                }
                // Show sort indicator
                if let Some(info) = context.sort_info() {
                    match info.direction {
                        SortDirection::Ascending => " ↑",
                        SortDirection::Descending => " ↓",
                    }
                }
            }
        }
    }

    fn render_cell(&self, _context: ColumnContext, _row: &User, _attributes: Vec<Attribute>) -> Element {
        rsx! { td {} }
    }
}

Implementations§

Source§

impl ColumnContext

Source

pub fn request_sort(&self, sort: SortGesture)

Requests a sort operation on this column.

Use SortGesture::AddFirst to make this the primary sort, AddLast to add as secondary, Toggle to flip direction, or Cancel to remove.

Source

pub fn sort_info(&self) -> Option<SortInfo>

Returns the sort information for this column, or None if not sorted.

Use SortInfo.priority to show sort order (0 = primary) and SortInfo.direction for the arrow.

Source

pub fn swap_with(&self, other_col: usize)

Swaps this column with another column in the display order.

Source

pub fn hide(&self)

Hides this column from the display.

Source

pub fn show(&self, at_index: Option<usize>)

Shows this column in the display. If at_index is None, appends to the end.

Source

pub fn move_to(&self, new_index: usize)

Moves this column to a specific display position (0-indexed).

Source

pub fn move_forward(&self)

Moves this column one position forward (towards index 0).

Source

pub fn move_backward(&self)

Moves this column one position backward (towards the end).

Source

pub fn is_visible(&self) -> bool

Returns whether this column is currently visible.

Source

pub fn position(&self) -> Option<usize>

Returns the display position (0-indexed), or None if hidden.

Source

pub fn reset_order(&self)

Resets all columns to default visibility and order.

Trait Implementations§

Source§

impl Clone for ColumnContext

Source§

fn clone(&self) -> ColumnContext

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl PartialEq for ColumnContext

Source§

fn eq(&self, other: &ColumnContext) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for ColumnContext

Source§

impl StructuralPartialEq for ColumnContext

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> InitializeFromFunction<T> for T

Source§

fn initialize_from_function(f: fn() -> T) -> T

Create an instance of this type from an initialization function
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<Ret> SpawnIfAsync<(), Ret> for Ret

Source§

fn spawn(self) -> Ret

Spawn the value into the dioxus runtime if it is an async block
Source§

impl<T, O> SuperFrom<T> for O
where O: From<T>,

Source§

fn super_from(input: T) -> O

Convert from a type to another type.
Source§

impl<T, O, M> SuperInto<O, M> for T
where O: SuperFrom<T, M>,

Source§

fn super_into(self) -> O

Convert from a type to another type.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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<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
Source§

impl<T> DependencyElement for T
where T: 'static + PartialEq + Clone,