1
0
Fork 0
mirror of synced 2024-06-01 18:19:46 +12:00
czkawka/czkawka_slint_gui/ui/action_buttons.slint
Rafał Mikrut 0be1d3f291 In out
2023-11-01 17:47:45 +01:00

72 lines
2.3 KiB
Plaintext

import { Button, VerticalBox , HorizontalBox, TabWidget, ListView, StandardListView, StandardTableView, CheckBox} from "std-widgets.slint";
import {LeftSidePanel} from "left_side_panel.slint";
import {MainList} from "main_lists.slint";
import {CurrentTab} from "common.slint";
import {BottomPanelVisibility} from "common.slint";
export component VisibilityButton inherits Button {
in-out property <BottomPanelVisibility> button_visibility;
in-out property <BottomPanelVisibility> bottom_panel_visibility;
enabled: bottom_panel_visibility != button-visibility;
height: 30px;
width: 70px;
clicked => {
bottom-panel-visibility = button_visibility;
}
}
export component ActionButtons {
callback deleted;
callback scan_stopping;
callback scan_starting(CurrentTab);
in-out property <BottomPanelVisibility> bottom_panel_visibility: BottomPanelVisibility.Directories;
in-out property <bool> stop_requested: false;
in-out property <bool> scanning;
in-out property <CurrentTab> active-tab;
HorizontalBox {
height: 50px;
scan_button:= Button {
enabled: !scanning;
text: "Scan";
clicked => {
root.scanning = true;
root.scan_starting(active-tab);
}
}
stop_button:= Button {
enabled: scanning && !stop_requested;
text: "Stop";
clicked => {
root.scan_stopping();
root.stop_requested = true;
}
}
delete_button:= Button {
enabled: !scanning;
text: "Delete";
clicked => {
root.deleted();
}
}
VisibilityButton {
button-visibility: BottomPanelVisibility.Directories;
bottom_panel_visibility <=> bottom_panel_visibility;
text: "Dirs";
}
VisibilityButton {
button-visibility: BottomPanelVisibility.NotVisible;
bottom_panel_visibility <=> bottom_panel_visibility;
text: "NotVS";
}
VisibilityButton {
button-visibility: BottomPanelVisibility.TextErrors;
bottom_panel_visibility <=> bottom_panel_visibility;
text: "Text";
}
}
}