Исправил закрытие вкладок редактора и сохранение файла при разделении экрана.
All checks were successful
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 23s
All checks were successful
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 23s
This commit is contained in:
@@ -1378,6 +1378,7 @@ namespace eval Editor {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
set frmText [Editor::EditorWidget $w $fileType $nb]
|
set frmText [Editor::EditorWidget $w $fileType $nb]
|
||||||
|
# puts "Editor::SplitEditorH: w - $w"
|
||||||
$frmText.t insert end [$w.frmText.t get 0.0 end]
|
$frmText.t insert end [$w.frmText.t get 0.0 end]
|
||||||
|
|
||||||
# $w.panelTxt add $w.frmText -weight 0
|
# $w.panelTxt add $w.frmText -weight 0
|
||||||
@@ -1392,7 +1393,7 @@ namespace eval Editor {
|
|||||||
global cfgVariables
|
global cfgVariables
|
||||||
regsub -all {\.|/|\\|\s|:} $fileFullPath "_" itemName
|
regsub -all {\.|/|\\|\s|:} $fileFullPath "_" itemName
|
||||||
set itemName ".frmWork.nbEditor2.$itemName"
|
set itemName ".frmWork.nbEditor2.$itemName"
|
||||||
# puts $itemName
|
puts "Editor::SplitEditoprV: nb item - $itemName"
|
||||||
if {[winfo exists $itemName] == 1} {
|
if {[winfo exists $itemName] == 1} {
|
||||||
.frmWork.nbEditor2 forget $itemName
|
.frmWork.nbEditor2 forget $itemName
|
||||||
destroy $itemName
|
destroy $itemName
|
||||||
|
|||||||
@@ -298,9 +298,13 @@ namespace eval FileOper {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
proc Close {} {
|
proc Close {{nbEditorWindow ""}} {
|
||||||
global nbEditor modified tree editors
|
global nbEditor modified tree editors
|
||||||
set nbItem [$nbEditor select]
|
if {$nbEditorWindow eq ""} {
|
||||||
|
set nbEditorWindow $nbEditor
|
||||||
|
}
|
||||||
|
set nbItem [$nbEditorWindow select]
|
||||||
|
# puts "Procedure FileOper::Close: item - $nbItem"
|
||||||
# puts "close tab $nbItem"
|
# puts "close tab $nbItem"
|
||||||
|
|
||||||
if {$nbItem == ""} {return}
|
if {$nbItem == ""} {return}
|
||||||
@@ -310,14 +314,14 @@ namespace eval FileOper {
|
|||||||
-icon question -type yesnocancel \
|
-icon question -type yesnocancel \
|
||||||
-detail [::msgcat::mc "Do you want to save it?"]]
|
-detail [::msgcat::mc "Do you want to save it?"]]
|
||||||
switch $answer {
|
switch $answer {
|
||||||
yes {Save close}
|
yes {Save close $nbEditorWindow}
|
||||||
no {}
|
no {}
|
||||||
cancel {return "cancel"}
|
cancel {return "cancel"}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if {[$nbEditor select] eq $nbItem} {
|
if {[$nbEditorWindow select] eq $nbItem} {
|
||||||
$nbEditor forget $nbItem
|
$nbEditorWindow forget $nbItem
|
||||||
destroy $nbItem
|
destroy $nbItem
|
||||||
}
|
}
|
||||||
set treeItem "file::[string range $nbItem [expr [string last "." $nbItem] +1] end ]"
|
set treeItem "file::[string range $nbItem [expr [string last "." $nbItem] +1] end ]"
|
||||||
@@ -341,10 +345,11 @@ namespace eval FileOper {
|
|||||||
.frmStatus.lblPosition configure -text ""
|
.frmStatus.lblPosition configure -text ""
|
||||||
.frmStatus.lblEncoding configure -text ""
|
.frmStatus.lblEncoding configure -text ""
|
||||||
.frmStatus.lblSize configure -text ""
|
.frmStatus.lblSize configure -text ""
|
||||||
NB::NextTab $nbEditor 0
|
|
||||||
|
NB::NextTab $nbEditorWindow 0
|
||||||
}
|
}
|
||||||
|
|
||||||
proc Save {{type ""}} {
|
proc Save {{type ""} {nbEditorWindow ""}} {
|
||||||
global nbEditor tree env activeProject dir
|
global nbEditor tree env activeProject dir
|
||||||
|
|
||||||
if [info exists activeProject] {
|
if [info exists activeProject] {
|
||||||
@@ -353,8 +358,15 @@ namespace eval FileOper {
|
|||||||
set dirProject $env(HOME)
|
set dirProject $env(HOME)
|
||||||
}
|
}
|
||||||
|
|
||||||
set nbEditorItem [$nbEditor select]
|
if {$nbEditorWindow eq ""} {
|
||||||
# puts "Saved editor text: $nbEditorItem"
|
set nbEditorWindow $nbEditor
|
||||||
|
set str [split [focus] "."]
|
||||||
|
set nbEditorWindow "[lindex $str 0].[lindex $str 1].[lindex $str 2]"
|
||||||
|
# puts "FileOper::Save: current window $nbEditorWindow"
|
||||||
|
}
|
||||||
|
# puts "FileOper::Save: $nbEditorWindow"
|
||||||
|
set nbEditorItem [$nbEditorWindow select]
|
||||||
|
puts "Saved editor text: $nbEditorItem"
|
||||||
if [string match "*untitled*" $nbEditorItem] {
|
if [string match "*untitled*" $nbEditorItem] {
|
||||||
set filePath [tk_getSaveFile -initialdir $dirProject -filetypes $::types -parent .]
|
set filePath [tk_getSaveFile -initialdir $dirProject -filetypes $::types -parent .]
|
||||||
if {$filePath eq ""} {
|
if {$filePath eq ""} {
|
||||||
@@ -362,7 +374,7 @@ namespace eval FileOper {
|
|||||||
}
|
}
|
||||||
# set fileName [string range $filePath [expr [string last "/" $filePath]+1] end]
|
# set fileName [string range $filePath [expr [string last "/" $filePath]+1] end]
|
||||||
set fileName [file tail $filePath]
|
set fileName [file tail $filePath]
|
||||||
$nbEditor tab $nbEditorItem -text $fileName
|
$nbEditorWindow tab $nbEditorItem -text $fileName
|
||||||
# set treeitem [Tree::InsertItem $tree {} $filePath "file" $fileName]
|
# set treeitem [Tree::InsertItem $tree {} $filePath "file" $fileName]
|
||||||
set lblName "lbl[string range $nbEditorItem [expr [string last "." $nbEditorItem] +1] end]"
|
set lblName "lbl[string range $nbEditorItem [expr [string last "." $nbEditorItem] +1] end]"
|
||||||
$nbEditorItem.header.$lblName configure -text $filePath
|
$nbEditorItem.header.$lblName configure -text $filePath
|
||||||
@@ -375,7 +387,7 @@ namespace eval FileOper {
|
|||||||
puts -nonewline $f $editedText
|
puts -nonewline $f $editedText
|
||||||
# puts "$f was saved"
|
# puts "$f was saved"
|
||||||
close $f
|
close $f
|
||||||
ResetModifiedFlag $nbEditorItem $nbEditor
|
ResetModifiedFlag $nbEditorItem $nbEditorWindow
|
||||||
if {[file tail $filePath] eq "projman.ini"} {
|
if {[file tail $filePath] eq "projman.ini"} {
|
||||||
Config::read $dir(cfg)
|
Config::read $dir(cfg)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,7 +51,8 @@ namespace eval NB {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
if {[$w identify $x $y] == "close_button"} {
|
if {[$w identify $x $y] == "close_button"} {
|
||||||
FileOper::Close
|
# puts "NB::PressTab: w - $w"
|
||||||
|
FileOper::Close $w
|
||||||
} else {
|
} else {
|
||||||
set txt [$w select].frmText.t
|
set txt [$w select].frmText.t
|
||||||
if [winfo exists $txt] {
|
if [winfo exists $txt] {
|
||||||
@@ -63,7 +64,12 @@ namespace eval NB {
|
|||||||
proc NextTab {w step} {
|
proc NextTab {w step} {
|
||||||
global tree
|
global tree
|
||||||
set i [expr [$w index end] - 1]
|
set i [expr [$w index end] - 1]
|
||||||
|
# puts "NB::NextTab $w"
|
||||||
if {[$w select] eq ""} {
|
if {[$w select] eq ""} {
|
||||||
|
# puts "NB::NextTab no items availabels"
|
||||||
|
if {$w eq ".frmWork.nbEditor2"} {
|
||||||
|
.frmWork.panelNB forget .frmWork.nbEditor2
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
set nbItemIndex [$w index [$w select]]
|
set nbItemIndex [$w index [$w select]]
|
||||||
@@ -75,7 +81,6 @@ namespace eval NB {
|
|||||||
$w select [expr $nbItemIndex + $step]
|
$w select [expr $nbItemIndex + $step]
|
||||||
}
|
}
|
||||||
set nbItem [string trimleft [$w select] "$w."]
|
set nbItem [string trimleft [$w select] "$w."]
|
||||||
# puts $nbItem
|
|
||||||
append treeItemName "file" "::" $nbItem
|
append treeItemName "file" "::" $nbItem
|
||||||
Tree::SelectItem $treeItemName
|
Tree::SelectItem $treeItemName
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ exec wish8.6 "$0" -- "$@"
|
|||||||
# Home page: https://nuk-svk.ru
|
# Home page: https://nuk-svk.ru
|
||||||
######################################################
|
######################################################
|
||||||
# Version: 2.0.0
|
# Version: 2.0.0
|
||||||
# Release: alpha21
|
# Release: alpha22
|
||||||
# Build: 03122025180445
|
# Build: 03122025180445
|
||||||
######################################################
|
######################################################
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user