1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
//! The DOCUMENT TABS seam — the outcome type the dock reports model-tab clicks
//! through, plus the verifier global describing the open models.
//!
//! # There is no strip here any more
//!
//! The tabs are drawn by `egui_tiles` itself: every open model is a
//! [`crate::panels::dock::PaneKind::Document`] pane, and they all live in one
//! `Tabs` container whose tab bar IS the model switcher. An earlier version drew
//! a hand-rolled strip INSIDE the single viewport pane, which left the pane
//! wearing two stacked bars — the tiles tab bar saying "3D View" above our own
//! row of file names. Making the pane's own bar the document bar is both what a
//! docked editor should look like and less code.
//!
//! Exclusivity — the bar holds 3D views and nothing else — is enforced in
//! `dock.rs` instead of by construction, because `egui_tiles` has no hook to
//! refuse a drop into a container: see `evict_foreign_panes_from_document_group`
//! (nothing else may land in the group) and `is_tile_draggable` (no document may
//! leave it).
use crateDocuments;
use egui;
/// What the user did in the document tab bar this frame. At most one of each —
/// the shell acts on them after the dock's borrows are released.
/// The `__brepDocuments` verifier global: the open tabs (title, raw name, dirty)
/// and which one is active.