/* ENSnano, a 3d graphical application for DNA nanostructures. Copyright (C) 2021 Nicolas Levy and Nicolas Schabanel This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ pub const VIEWER_BINDING_ID: u32 = 0; pub const INSTANCES_BINDING_ID: u32 = 1; pub const LIGHT_BINDING_ID: u32 = 2; pub const TEXTURE_BINDING_ID: u32 = 2; pub const MODEL_BINDING_ID: u32 = 3; pub const VERTEX_POSITION_ADRESS: u32 = 0; pub const VERTEX_NORMAL_ADRESS: u32 = 1; pub const BOUND_RADIUS: f32 = 0.06; pub const BOUND_LENGTH: f32 = 1.; pub const NB_RAY_TUBE: usize = 12; pub const SPHERE_RADIUS: f32 = 0.2; pub const NB_STACK_SPHERE: u16 = 12; pub const NB_SECTOR_SPHERE: u16 = 12; pub const NB_SECTOR_CIRCLE: u16 = 36; pub const SELECT_SCALE_FACTOR: f32 = 1.3; pub const RIGHT_HANDLE_ID: u32 = 0; pub const UP_HANDLE_ID: u32 = 1; pub const DIR_HANDLE_ID: u32 = 2; pub const RIGHT_CIRCLE_ID: u32 = 3; pub const UP_CIRCLE_ID: u32 = 4; pub const FRONT_CIRCLE_ID: u32 = 5; pub const SPHERE_WIDGET_ID: u32 = 6; pub const PHANTOM_RANGE: i32 = 1000; pub const BASIS_SYMBOLS: &[char] = &['A', 'T', 'G', 'C', '*']; pub const NB_BASIS_SYMBOLS: usize = BASIS_SYMBOLS.len(); pub const BASE_SCROLL_SENSITIVITY: f32 = 0.12; pub const SAMPLE_COUNT: u32 = 4; pub const HELIX_BORDER_COLOR: u32 = 0xFF_101010; pub const CANDIDATE_COLOR: u32 = 0xBF_00_FF_00; pub const SELECTED_COLOR: u32 = 0xBF_FF_00_00; pub const SUGGESTION_COLOR: u32 = 0xBF_FF_00_FF; pub const PIVOT_SPHERE_COLOR: u32 = 0xBF_FF_FF_00; pub const FREE_XOVER_COLOR: u32 = 0xBF_00_00_FF; pub const MAX_ZOOM_2D: f32 = 50.0; pub const CIRCLE2D_GREY: u32 = 0xFF_4D4D4D; pub const CIRCLE2D_BLUE: u32 = 0xFF_036992; pub const CIRCLE2D_RED: u32 = 0xFF_920303; pub const CIRCLE2D_GREEN: u32 = 0xFF_0C9203; pub const SCAFFOLD_COLOR: u32 = 0xFF_3498DB; pub const SELECTED_HELIX2D_COLOR: u32 = 0xFF_BF_1E_28; pub const ICON_PHYSICAL_ENGINE: char = '\u{e917}'; pub const ICON_ATGC: char = '\u{e90d}'; pub const ICON_SQUARE_GRID: char = '\u{e90e}'; pub const ICON_HONEYCOMB_GRID: char = '\u{e907}'; pub const ICON_NANOTUBE: char = '\u{e914}'; use iced::Color; pub const fn innactive_color() -> Color { Color::from_rgb(0.6, 0.6, 0.6) } pub const CTRL: &'static str = if cfg!(target_os = "macos") { "\u{2318}" } else { "ctrl" }; pub const ALT: &'static str = if cfg!(target_os = "macos") { "\u{2325}" } else { "alt" }; pub const BACKSPACECHAR: char = '\u{232b}'; pub const SUPPRCHAR: char = '\u{2326}'; pub const SELECTCHAR: char = '\u{e90c}'; pub const HELIXCHAR: char = '\u{e913}'; pub const STRANDCHAR: char = '\u{e901}'; pub const NUCLCHAR: char = '\u{e900}'; pub const SHIFT: char = '\u{21e7}'; pub const MOVECHAR: char = '\u{e904}'; pub const ROTCHAR: char = '\u{e915}'; pub const LCLICK: char = '\u{e918}'; pub const MCLICK: char = '\u{e91b}'; pub const RCLICK: char = '\u{e91a}';