Исправил скрипт сборки пакета. Добавил .gitignore
7
.gitignore
vendored
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
debian/.debhelper
|
||||||
|
debian/projman
|
||||||
|
debian/source
|
||||||
|
debian/update-desktop-database
|
||||||
|
debian/projman.substvars
|
||||||
|
debian/files
|
||||||
|
debian/projman.debhelper.log
|
2
debian/compat
vendored
|
@ -1 +1 @@
|
||||||
8
|
10
|
||||||
|
|
86
debian/projman.debhelper.log
vendored
|
@ -1,86 +0,0 @@
|
||||||
dh_prep
|
|
||||||
dh_installdirs
|
|
||||||
dh_prep
|
|
||||||
dh_installdirs
|
|
||||||
dh_prep
|
|
||||||
dh_installdirs
|
|
||||||
dh_install
|
|
||||||
dh_prep
|
|
||||||
dh_installdirs
|
|
||||||
dh_install
|
|
||||||
dh_prep
|
|
||||||
dh_installdirs
|
|
||||||
dh_prep
|
|
||||||
dh_installdirs
|
|
||||||
dh_prep
|
|
||||||
dh_installdirs
|
|
||||||
dh_install
|
|
||||||
dh_installdocs
|
|
||||||
dh_installchangelogs
|
|
||||||
dh_compress
|
|
||||||
dh_makeshlibs
|
|
||||||
dh_installdeb
|
|
||||||
dh_shlibdeps
|
|
||||||
dh_gencontrol
|
|
||||||
dh_md5sums
|
|
||||||
dh_builddeb
|
|
||||||
dh_prep
|
|
||||||
dh_installdirs
|
|
||||||
dh_install
|
|
||||||
dh_installdocs
|
|
||||||
dh_installchangelogs
|
|
||||||
dh_compress
|
|
||||||
dh_makeshlibs
|
|
||||||
dh_installdeb
|
|
||||||
dh_shlibdeps
|
|
||||||
dh_gencontrol
|
|
||||||
dh_md5sums
|
|
||||||
dh_builddeb
|
|
||||||
dh_prep
|
|
||||||
dh_installdirs
|
|
||||||
dh_install
|
|
||||||
dh_installdocs
|
|
||||||
dh_installchangelogs
|
|
||||||
dh_compress
|
|
||||||
dh_makeshlibs
|
|
||||||
dh_installdeb
|
|
||||||
dh_shlibdeps
|
|
||||||
dh_gencontrol
|
|
||||||
dh_md5sums
|
|
||||||
dh_builddeb
|
|
||||||
dh_prep
|
|
||||||
dh_installdirs
|
|
||||||
dh_install
|
|
||||||
dh_installdocs
|
|
||||||
dh_installchangelogs
|
|
||||||
dh_compress
|
|
||||||
dh_makeshlibs
|
|
||||||
dh_installdeb
|
|
||||||
dh_shlibdeps
|
|
||||||
dh_gencontrol
|
|
||||||
dh_md5sums
|
|
||||||
dh_builddeb
|
|
||||||
dh_prep
|
|
||||||
dh_installdirs
|
|
||||||
dh_install
|
|
||||||
dh_installdocs
|
|
||||||
dh_installchangelogs
|
|
||||||
dh_compress
|
|
||||||
dh_makeshlibs
|
|
||||||
dh_installdeb
|
|
||||||
dh_shlibdeps
|
|
||||||
dh_gencontrol
|
|
||||||
dh_md5sums
|
|
||||||
dh_builddeb
|
|
||||||
dh_prep
|
|
||||||
dh_installdirs
|
|
||||||
dh_install
|
|
||||||
dh_installdocs
|
|
||||||
dh_installchangelogs
|
|
||||||
dh_compress
|
|
||||||
dh_makeshlibs
|
|
||||||
dh_installdeb
|
|
||||||
dh_shlibdeps
|
|
||||||
dh_gencontrol
|
|
||||||
dh_md5sums
|
|
||||||
dh_builddeb
|
|
10
debian/projman/DEBIAN/control
vendored
|
@ -1,10 +0,0 @@
|
||||||
Package: projman
|
|
||||||
Version: 2.0.0-alpha
|
|
||||||
Architecture: amd64
|
|
||||||
Maintainer: Sergey Kalinin svk@nuk-svk.ru
|
|
||||||
Installed-Size: 1563
|
|
||||||
Depends: tcl (>= 8.6), tk (>= 8.6), tcllib, tklib
|
|
||||||
Section: Develop
|
|
||||||
Priority: optional
|
|
||||||
Homepage: https://nuk-svk.ru
|
|
||||||
Description: Projman is a yet another editor
|
|
1188
debian/projman/DEBIAN/md5sums
vendored
113
debian/projman/usr/bin/projman
vendored
|
@ -1,113 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# Tcl ignores the next line -*- tcl -*- \
|
|
||||||
exec wish "$0" -- "$@"
|
|
||||||
|
|
||||||
######################################################
|
|
||||||
# Tcl/Tk Project manager 2.0
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svl.ru
|
|
||||||
# Home page: https://nuk-svk.ru
|
|
||||||
######################################################
|
|
||||||
# Version: 2.0.0
|
|
||||||
# Release: alpha
|
|
||||||
######################################################
|
|
||||||
|
|
||||||
# определим текущую версию и релиз
|
|
||||||
set f [open [info script] "RDONLY"]
|
|
||||||
while {[gets $f line] >=0} {
|
|
||||||
if [regexp -nocase -all -- {version:\s+([0-9]+?.[0-9]+?.[0-9]+?)} $line match v1] {
|
|
||||||
|
|
||||||
|
|
||||||
set projmanVersion $v1
|
|
||||||
}
|
|
||||||
if [regexp -nocase -all -- {release:\s+([a-z0-9]+?)} $line match v1] {
|
|
||||||
set projmanRelease $v1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
close $f
|
|
||||||
|
|
||||||
puts "Projman version $projmanVersion-$projmanRelease"
|
|
||||||
|
|
||||||
|
|
||||||
if { $::argc > 0 } {
|
|
||||||
foreach arg $::argv {
|
|
||||||
lappend opened $arg
|
|
||||||
}
|
|
||||||
puts $opened
|
|
||||||
}
|
|
||||||
package require msgcat
|
|
||||||
package require inifile
|
|
||||||
package require ctext
|
|
||||||
|
|
||||||
# Устанавливаем текущий каталог
|
|
||||||
set dir(root) /usr/share/projman
|
|
||||||
|
|
||||||
set dir(doc) [file join $dir(root) doc]
|
|
||||||
|
|
||||||
# Устанавливаем рабочий каталог, если его нет то создаём.
|
|
||||||
# Согласно спецификации XDG проверяем наличие переменных и каталогов
|
|
||||||
if [info exists env(XDG_CONFIG_HOME)] {
|
|
||||||
set dir(cfg) [file join $env(XDG_CONFIG_HOME) projman]
|
|
||||||
} elseif [file exists [file join $env(HOME) .config]] {
|
|
||||||
set dir(cfg) [file join $env(HOME) .config projman]
|
|
||||||
} else {
|
|
||||||
set dir(cfg) [file join $env(HOME) .projman]
|
|
||||||
}
|
|
||||||
|
|
||||||
if {[file exists $dir(cfg)] == 0} {
|
|
||||||
file mkdir $dir(cfg)
|
|
||||||
}
|
|
||||||
|
|
||||||
puts "Config dir is $dir(cfg)"
|
|
||||||
|
|
||||||
# каталог с модулями
|
|
||||||
set dir(lib) /usr/share/projman/lib ;# /usr/share/projman/lib ;# /usr/share/projman/lib ;# /usr/share/projman/lib ;# /usr/share/projman/lib ;# /usr/share/projman/lib ;# /usr/share/projman/lib ;# /usr/share/projman/lib ;# /usr/share/projman/lib ;# /usr/share/projman/lib ;# /usr/share/projman/lib ;# /usr/share/projman/lib ;# /usr/share/projman/lib ;# "[file join $dir(root) lib]"
|
|
||||||
|
|
||||||
source [file join $dir(lib) config.tcl]
|
|
||||||
|
|
||||||
foreach modFile [lsort [glob -nocomplain [file join $dir(lib) *.tcl]]] {
|
|
||||||
if {[file tail $modFile] ne "gui.tcl" && [file tail $modFile] ne "config.tcl"} {
|
|
||||||
source $modFile
|
|
||||||
puts "Loading module $modFile"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# TTK Theme loading
|
|
||||||
set dir(theme) "[file join $dir(root) theme]"
|
|
||||||
foreach modFile [lsort [glob -nocomplain [file join $dir(theme) *]]] {
|
|
||||||
if [file isdirectory $modFile] {
|
|
||||||
source $modFile/[file tail $modFile].tcl
|
|
||||||
puts "Loading theme $modFile.tcl"
|
|
||||||
} elseif {[file extension $modFile] eq ".tcl"} {
|
|
||||||
source $modFile
|
|
||||||
puts "Loading theme $modFile"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# загружаем пользовательский конфиг, если он отсутствует, то копируем дефолтный
|
|
||||||
if {[file exists [file join $dir(cfg) projman.ini]] ==0} {
|
|
||||||
Config::create $dir(cfg)
|
|
||||||
}
|
|
||||||
Config::read $dir(cfg)
|
|
||||||
|
|
||||||
::msgcat::mclocale $cfgVariables(locale)
|
|
||||||
|
|
||||||
if [::msgcat::mcload [file join $dir(lib) msgs]] {
|
|
||||||
puts "Load locale messages... OK"
|
|
||||||
}
|
|
||||||
puts "Setting the locale... [::msgcat::mclocale]"
|
|
||||||
|
|
||||||
source [file join $dir(lib) gui.tcl]
|
|
||||||
|
|
||||||
# Open the PATH if command line argument has been setting
|
|
||||||
if [info exists opened] {
|
|
||||||
puts $opened
|
|
||||||
foreach path $opened {
|
|
||||||
if [file isdirectory $path] {
|
|
||||||
FileOper::ReadFolder $path
|
|
||||||
} elseif [file exists $path] {
|
|
||||||
ResetModifiedFlag [FileOper::Edit $path]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,11 +0,0 @@
|
||||||
[Desktop Entry]
|
|
||||||
Name=ProjMan
|
|
||||||
GenericName=Text Editor
|
|
||||||
Comment=A source editor with syntax highlighting and procedure navigation, a context-sensitive help system, and much more.
|
|
||||||
Exec=projman %F
|
|
||||||
Terminal=false
|
|
||||||
Type=Application
|
|
||||||
StartupNotify=true
|
|
||||||
MimeType=text/plain;
|
|
||||||
Categories=Development;TextEditor;
|
|
||||||
Icon=projman-48
|
|
|
@ -1,6 +0,0 @@
|
||||||
######################################################
|
|
||||||
# Tcl/Tk Project manager 2.0
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svl.ru
|
|
||||||
# Home page: https://nuk-svk.ru
|
|
||||||
######################################################
|
|
8
debian/projman/usr/share/doc/projman/TODO
vendored
|
@ -1,8 +0,0 @@
|
||||||
######################################################
|
|
||||||
# Tcl/Tk Project manager 2.0
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svl.ru
|
|
||||||
# Home page: https://nuk-svk.ru
|
|
||||||
######################################################
|
|
||||||
|
|
||||||
2. Подстветку текущей вкладки и элемента в дереве
|
|
BIN
debian/projman/usr/share/doc/projman/changelog.gz
vendored
15
debian/projman/usr/share/doc/projman/copyright
vendored
|
@ -1,15 +0,0 @@
|
||||||
Projman is a yet another editor
|
|
||||||
|
|
||||||
Copyright: GPL
|
|
||||||
|
|
||||||
Information from the binary package:
|
|
||||||
Name : projman Relocations: (not relocatable)
|
|
||||||
Version : 1.0.3 Vendor: SVK
|
|
||||||
Release : 1 Build Date: Пн 17 сен 2018 11:49:36
|
|
||||||
Install date: (not installed) Build Host: alt-ws.localdomain
|
|
||||||
Group : System
|
|
||||||
Size : License: GPL
|
|
||||||
URL : https://bitbucket.org/svk28/rac-gui
|
|
||||||
Summary : Projman is a yet another editor
|
|
||||||
Description :
|
|
||||||
Projman is a yet another editor
|
|
BIN
debian/projman/usr/share/pixmaps/projman-48.png
vendored
Before Width: | Height: | Size: 5.0 KiB |
82
debian/projman/usr/share/projman/lib/config.tcl
vendored
|
@ -1,82 +0,0 @@
|
||||||
######################################################
|
|
||||||
# ProjMan 2
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svk.ru
|
|
||||||
# Copyright (c) "", 2022, https://nuk-svk.ru
|
|
||||||
######################################################
|
|
||||||
# The config file procedures
|
|
||||||
# create
|
|
||||||
# copy
|
|
||||||
# save
|
|
||||||
######################################################
|
|
||||||
|
|
||||||
namespace eval Config {} {
|
|
||||||
variable cfgINISections
|
|
||||||
variable cfgVariables
|
|
||||||
}
|
|
||||||
|
|
||||||
if [info exists env(LANG)] {
|
|
||||||
set locale $env(LANG)
|
|
||||||
} else {
|
|
||||||
set locale "en"
|
|
||||||
}
|
|
||||||
|
|
||||||
set ::configDefault "\[General\]
|
|
||||||
locale=$locale
|
|
||||||
cfgModifyDate=''
|
|
||||||
\[GUI\]
|
|
||||||
theme=dark
|
|
||||||
toolBarShow=true
|
|
||||||
menuShow=true
|
|
||||||
filesPanelShow=true
|
|
||||||
geometry=1024x768
|
|
||||||
\[Editor\]
|
|
||||||
autoFormat=true
|
|
||||||
font=courier 10 normal roman
|
|
||||||
fontBold=courier 10 bold roman
|
|
||||||
backGround=#333333
|
|
||||||
foreground=#cccccc
|
|
||||||
selectbg=#10a410a410a4
|
|
||||||
nbNormal=#000000
|
|
||||||
nbModify=#ffff5d705d70
|
|
||||||
lineNumberFG=#a9a9a9
|
|
||||||
selectBorder=0
|
|
||||||
# must be: none, word or char
|
|
||||||
editorWrap=word
|
|
||||||
lineNumberShow=true
|
|
||||||
tabSize=4
|
|
||||||
"
|
|
||||||
proc Config::create {dir} {
|
|
||||||
set cfgFile [open [file join $dir projman.ini] "w+"]
|
|
||||||
puts $cfgFile $::configDefault
|
|
||||||
close $cfgFile
|
|
||||||
}
|
|
||||||
|
|
||||||
proc Config::read {dir} {
|
|
||||||
set cfgFile [ini::open [file join $dir projman.ini] "r"]
|
|
||||||
foreach section [ini::sections $cfgFile] {
|
|
||||||
foreach key [ini::keys $cfgFile $section] {
|
|
||||||
lappend ::cfgINIsections($section) $key
|
|
||||||
set ::cfgVariables($key) [ini::value $cfgFile $section $key]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
ini::close $cfgFile
|
|
||||||
}
|
|
||||||
|
|
||||||
proc Config::write {dir} {
|
|
||||||
set cfgFile [ini::open [file join $dir projman.ini] "w"]
|
|
||||||
foreach section [array names ::cfgINIsections] {
|
|
||||||
foreach key $::cfgINIsections($section) {
|
|
||||||
ini::set $cfgFile $section $key $::cfgVariables($key)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
set systemTime [clock seconds]
|
|
||||||
# Set a config modify time (i don't know why =))'
|
|
||||||
ini::set $cfgFile "General" cfgModifyDate [clock format $systemTime -format "%D %H:%M:%S"]
|
|
||||||
|
|
||||||
# Save an top level window geometry into config
|
|
||||||
ini::set $cfgFile "GUI" geometry [wm geometry .]
|
|
||||||
|
|
||||||
ini::commit $cfgFile
|
|
||||||
ini::close $cfgFile
|
|
||||||
}
|
|
443
debian/projman/usr/share/projman/lib/editor.tcl
vendored
|
@ -1,443 +0,0 @@
|
||||||
######################################################
|
|
||||||
# ProjMan 2
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svk.ru
|
|
||||||
# Copyright (c) "SVK", 2022, https://nuk-svk.ru
|
|
||||||
######################################################
|
|
||||||
# Editor module
|
|
||||||
######################################################
|
|
||||||
|
|
||||||
namespace eval Editor {
|
|
||||||
variable selectionTex
|
|
||||||
proc Comment {txt} {
|
|
||||||
set selIndex [$txt tag ranges sel]
|
|
||||||
set pos [$txt index insert]
|
|
||||||
set lineNum [lindex [split $pos "."] 0]
|
|
||||||
set PosNum [lindex [split $pos "."] 1]
|
|
||||||
puts "Select : $selIndex"
|
|
||||||
if {$selIndex != ""} {
|
|
||||||
set lineBegin [lindex [split [lindex $selIndex 0] "."] 0]
|
|
||||||
set lineEnd [lindex [split [lindex $selIndex 1] "."] 0]
|
|
||||||
set posBegin [lindex [split [lindex $selIndex 1] "."] 0]
|
|
||||||
set posEnd [lindex [split [lindex $selIndex 1] "."] 1]
|
|
||||||
if {$lineEnd == $lineNum || $posEnd == 0} {
|
|
||||||
set lineEnd [expr $lineEnd - 1]
|
|
||||||
}
|
|
||||||
for {set i $lineBegin} {$i <=$lineEnd} {incr i} {
|
|
||||||
#$txt insert $i.0 "# "
|
|
||||||
regexp -nocase -indices -- {^(\s*)(.*?)} [$txt get $i.0 $i.end] match v1 v2
|
|
||||||
$txt insert $i.[lindex [split $v2] 0] "# "
|
|
||||||
}
|
|
||||||
$txt tag add comments $lineBegin.0 $lineEnd.end
|
|
||||||
$txt tag raise comments
|
|
||||||
} else {
|
|
||||||
regexp -nocase -indices -- {^(\s*)(.*?)} [$txt get $lineNum.0 $lineNum.end] match v1 v2
|
|
||||||
$txt insert $lineNum.[lindex [split $v2] 0] "# "
|
|
||||||
$txt tag add comments $lineNum.0 $lineNum.end
|
|
||||||
$txt tag raise comments
|
|
||||||
}
|
|
||||||
}
|
|
||||||
proc Uncomment {txt} {
|
|
||||||
set selIndex [$txt tag ranges sel]
|
|
||||||
set pos [$txt index insert]
|
|
||||||
set lineNum [lindex [split $pos "."] 0]
|
|
||||||
set posNum [lindex [split $pos "."] 1]
|
|
||||||
if {$selIndex != ""} {
|
|
||||||
set lineBegin [lindex [split [lindex $selIndex 0] "."] 0]
|
|
||||||
set lineEnd [lindex [split [lindex $selIndex 1] "."] 0]
|
|
||||||
set posBegin [lindex [split [lindex $selIndex 1] "."] 0]
|
|
||||||
set posEnd [lindex [split [lindex $selIndex 1] "."] 1]
|
|
||||||
if {$lineEnd == $lineNum || $posEnd == 0} {
|
|
||||||
set lineEnd [expr $lineEnd - 1]
|
|
||||||
}
|
|
||||||
for {set i $lineBegin} {$i <=$lineEnd} {incr i} {
|
|
||||||
set str [$txt get $i.0 $i.end]
|
|
||||||
if {[regexp -nocase -indices -- {(^| )(#\s)(.+)} $str match v1 v2 v3]} {
|
|
||||||
$txt delete $i.[lindex [split $v2] 0] $i.[lindex [split $v3] 0]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$txt tag remove comments $lineBegin.0 $lineEnd.end
|
|
||||||
$txt tag add sel $lineBegin.0 $lineEnd.end
|
|
||||||
$txt highlight $lineBegin.0 $lineEnd.end
|
|
||||||
} else {
|
|
||||||
#set posNum [lindex [split $pos "."] 1]
|
|
||||||
set str [$txt get $lineNum.0 $lineNum.end]
|
|
||||||
if {[regexp -nocase -indices -- {(^| )(#\s)(.+)} $str match v1 v2 v3]} {
|
|
||||||
puts ">>>>> $v1, $v2, $v3"
|
|
||||||
$txt delete $lineNum.[lindex [split $v2] 0] $lineNum.[lindex [split $v3] 0]
|
|
||||||
#$txt insert $i.0 $v3
|
|
||||||
}
|
|
||||||
$txt tag remove comments $lineNum.0 $lineNum.end
|
|
||||||
$txt highlight $lineNum.0 $lineNum.end
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc InsertTabular {txt} {
|
|
||||||
global cfgVariables
|
|
||||||
set selIndex [$txt tag ranges sel]
|
|
||||||
set pos [$txt index insert]
|
|
||||||
set lineNum [lindex [split $pos "."] 0]
|
|
||||||
|
|
||||||
puts "Select : $selIndex"
|
|
||||||
for {set i 0} {$i < $cfgVariables(tabSize)} { incr i} {
|
|
||||||
append tabInsert " "
|
|
||||||
}
|
|
||||||
puts ">$tabInsert<"
|
|
||||||
if {$selIndex != ""} {
|
|
||||||
set lineBegin [lindex [split [lindex $selIndex 0] "."] 0]
|
|
||||||
set lineEnd [lindex [split [lindex $selIndex 1] "."] 0]
|
|
||||||
set posBegin [lindex [split [lindex $selIndex 1] "."] 0]
|
|
||||||
set posEnd [lindex [split [lindex $selIndex 1] "."] 1]
|
|
||||||
# if {$lineBegin == $lineNum} {
|
|
||||||
# set lineBegin [expr $lineBegin + 1]
|
|
||||||
# }
|
|
||||||
if {$lineEnd == $lineNum || $posEnd == 0} {
|
|
||||||
set lineEnd [expr $lineEnd - 1]
|
|
||||||
}
|
|
||||||
puts "Pos: $pos, Begin: $lineBegin, End: $lineEnd"
|
|
||||||
for {set i $lineBegin} {$i <=$lineEnd} {incr i} {
|
|
||||||
#$txt insert $i.0 "# "
|
|
||||||
regexp -nocase -indices -- {^(\s*)(.*?)} [$txt get $i.0 $i.end] match v1 v2
|
|
||||||
$txt insert $i.[lindex [split $v2] 0] $tabInsert
|
|
||||||
}
|
|
||||||
$txt tag remove sel $lineBegin.$posBegin $lineEnd.$posEnd
|
|
||||||
$txt tag add sel $lineBegin.0 $lineEnd.end
|
|
||||||
$txt highlight $lineBegin.0 $lineEnd.end
|
|
||||||
} else {
|
|
||||||
# set pos [$txt index insert]
|
|
||||||
# set lineNum [lindex [split $pos "."] 0]
|
|
||||||
regexp -nocase -indices -- {^(\s*)(.*?)} [$txt get $lineNum.0 $lineNum.end] match v1 v2
|
|
||||||
puts "$v1<>$v2"
|
|
||||||
$txt insert $lineNum.[lindex [split $v2] 0] $tabInsert
|
|
||||||
}
|
|
||||||
}
|
|
||||||
proc DeleteTabular {txt} {
|
|
||||||
global cfgVariables
|
|
||||||
set selIndex [$txt tag ranges sel]
|
|
||||||
set pos [$txt index insert]
|
|
||||||
set lineNum [lindex [split $pos "."] 0]
|
|
||||||
if {$selIndex != ""} {
|
|
||||||
set lineBegin [lindex [split [lindex $selIndex 0] "."] 0]
|
|
||||||
set lineEnd [lindex [split [lindex $selIndex 1] "."] 0]
|
|
||||||
set posBegin [lindex [split [lindex $selIndex 1] "."] 0]
|
|
||||||
set posEnd [lindex [split [lindex $selIndex 1] "."] 1]
|
|
||||||
if {$lineEnd == $lineNum && $posEnd == 0} {
|
|
||||||
set lineEnd [expr $lineEnd - 1]
|
|
||||||
}
|
|
||||||
for {set i $lineBegin} {$i <=$lineEnd} {incr i} {
|
|
||||||
set str [$txt get $i.0 $i.end]
|
|
||||||
if {[regexp -nocase -indices -- {(^\s*)(.*?)} $str match v1 v2]} {
|
|
||||||
set posBegin [lindex [split $v1] 0]
|
|
||||||
set posEnd [lindex [split $v1] 1]
|
|
||||||
if {[expr $posEnd + 1] >= $cfgVariables(tabSize)} {
|
|
||||||
$txt delete $i.$posBegin $i.$cfgVariables(tabSize)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$txt tag remove sel $lineBegin.$posBegin $lineEnd.$posEnd
|
|
||||||
$txt tag add sel $lineBegin.0 $lineEnd.end
|
|
||||||
$txt highlight $lineBegin.0 $lineEnd.end
|
|
||||||
} else {
|
|
||||||
set str [$txt get $lineNum.0 $lineNum.end]
|
|
||||||
if {[regexp -nocase -indices -- {(^\s*)(.*?)} $str match v1]} {
|
|
||||||
set posBegin [lindex [split $v1] 0]
|
|
||||||
set posEnd [lindex [split $v1] 1]
|
|
||||||
if {[expr $posEnd + 1] >= $cfgVariables(tabSize)} {
|
|
||||||
$txt delete $lineNum.$posBegin $lineNum.$cfgVariables(tabSize)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
## TABULAR INSERT (auto indent)##
|
|
||||||
proc Indent {txt} {
|
|
||||||
global cfgVariables
|
|
||||||
# set tabSize 4
|
|
||||||
set indentSize $cfgVariables(tabSize)
|
|
||||||
set pos [$txt index insert]
|
|
||||||
set lineNum [lindex [split $pos "."] 0]
|
|
||||||
set posNum [lindex [split $pos "."] 1]
|
|
||||||
puts "$pos"
|
|
||||||
if {$lineNum > 1} {
|
|
||||||
# get current text
|
|
||||||
set curText [$txt get $lineNum.0 "$lineNum.0 lineend"]
|
|
||||||
#get text of prev line
|
|
||||||
set prevLineNum [expr {$lineNum - 1}]
|
|
||||||
set prevText [$txt get $prevLineNum.0 "$prevLineNum.0 lineend"]
|
|
||||||
#count first spaces in current line
|
|
||||||
set spaces ""
|
|
||||||
regexp "^| *" $curText spaces
|
|
||||||
#count first spaces in prev line
|
|
||||||
set prevSpaces ""
|
|
||||||
regexp "^( |\t)*" $prevText prevSpaces
|
|
||||||
set len [string length $prevSpaces]
|
|
||||||
set shouldBeSpaces 0
|
|
||||||
for {set i 0} {$i < $len} {incr i} {
|
|
||||||
if {[string index $prevSpaces $i] == "\t"} {
|
|
||||||
incr shouldBeSpaces $tabSize
|
|
||||||
} else {
|
|
||||||
incr shouldBeSpaces
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#see last symbol in the prev String.
|
|
||||||
set lastSymbol [string index $prevText [expr {[string length $prevText] - 1}]]
|
|
||||||
# is it open brace?
|
|
||||||
if {$lastSymbol == ":" || $lastSymbol == "\\"} {
|
|
||||||
incr shouldBeSpaces $indentSize
|
|
||||||
}
|
|
||||||
if {$lastSymbol == "\{"} {
|
|
||||||
incr shouldBeSpaces $indentSize
|
|
||||||
}
|
|
||||||
set a ""
|
|
||||||
regexp "^| *\}" $curText a
|
|
||||||
if {$a != ""} {
|
|
||||||
# make unindent
|
|
||||||
if {$shouldBeSpaces >= $indentSize} {
|
|
||||||
set shouldBeSpaces [expr {$shouldBeSpaces - $indentSize}]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if {$lastSymbol == "\["} {
|
|
||||||
incr shouldBeSpaces $indentSize
|
|
||||||
}
|
|
||||||
set a ""
|
|
||||||
regexp "^| *\]" $curText a
|
|
||||||
if {$a != ""} {
|
|
||||||
# make unindent
|
|
||||||
if {$shouldBeSpaces >= $indentSize} {
|
|
||||||
set shouldBeSpaces [expr {$shouldBeSpaces - $indentSize}]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if {$lastSymbol == "\("} {
|
|
||||||
incr shouldBeSpaces $indentSize
|
|
||||||
}
|
|
||||||
set a ""
|
|
||||||
regexp {^| *\)} $curText a
|
|
||||||
if {$a != ""} {
|
|
||||||
# make unindent
|
|
||||||
if {$shouldBeSpaces >= $indentSize} {
|
|
||||||
set shouldBeSpaces [expr {$shouldBeSpaces - $indentSize}]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
set spaceNum [string length $spaces]
|
|
||||||
if {$shouldBeSpaces > $spaceNum} {
|
|
||||||
#insert spaces
|
|
||||||
set deltaSpace [expr {$shouldBeSpaces - $spaceNum}]
|
|
||||||
set incSpaces ""
|
|
||||||
for {set i 0} {$i < $deltaSpace} {incr i} {
|
|
||||||
append incSpaces " "
|
|
||||||
}
|
|
||||||
$txt insert $lineNum.0 $incSpaces
|
|
||||||
} elseif {$shouldBeSpaces < $spaceNum} {
|
|
||||||
#delete spaces
|
|
||||||
set deltaSpace [expr {$spaceNum - $shouldBeSpaces}]
|
|
||||||
$txt delete $lineNum.0 $lineNum.$deltaSpace
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
proc SelectionPaste {txt} {
|
|
||||||
set selBegin [lindex [$txt tag ranges sel] 0]
|
|
||||||
set selEnd [lindex [$txt tag ranges sel] 1]
|
|
||||||
if {$selBegin ne ""} {
|
|
||||||
$txt delete $selBegin $selEnd
|
|
||||||
$txt highlight $selBegin $selEnd
|
|
||||||
#tk_textPaste $txt
|
|
||||||
}
|
|
||||||
}
|
|
||||||
proc SelectionGet {txt} {
|
|
||||||
variable selectionText
|
|
||||||
|
|
||||||
set selBegin [lindex [$txt tag ranges sel] 0]
|
|
||||||
set selEnd [lindex [$txt tag ranges sel] 1]
|
|
||||||
if {$selBegin ne "" && $selEnd ne ""} {
|
|
||||||
set selectionText [$txt get $selBegin $selEnd]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
proc ReleaseKey {k txt} {
|
|
||||||
switch $k {
|
|
||||||
Return {
|
|
||||||
set pos [$txt index insert]
|
|
||||||
set lineNum [lindex [split $pos "."] 0]
|
|
||||||
set posNum [lindex [split $pos "."] 1]
|
|
||||||
regexp {^(\s*)} [$txt get [expr $lineNum - 1].0 [expr $lineNum - 1].end] -> spaceStart
|
|
||||||
# puts "$pos, $lineNum, $posNum, >$spaceStart<"
|
|
||||||
$txt insert insert $spaceStart
|
|
||||||
Editor::Indent $txt
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
proc PressKey {k txt} {
|
|
||||||
# puts [Editor::Key $k]
|
|
||||||
switch $k {
|
|
||||||
apostrophe {
|
|
||||||
QuotSelection $txt {'}
|
|
||||||
}
|
|
||||||
quotedbl {
|
|
||||||
QuotSelection $txt {"}
|
|
||||||
}
|
|
||||||
grave {
|
|
||||||
QuotSelection $txt {`}
|
|
||||||
}
|
|
||||||
parenleft {
|
|
||||||
# QuotSelection $txt {)}
|
|
||||||
}
|
|
||||||
bracketleft {
|
|
||||||
# QuotSelection $txt {]}
|
|
||||||
}
|
|
||||||
braceleft {
|
|
||||||
# {QuotSelection} $txt {\}}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
## GET KEYS CODE ##
|
|
||||||
proc Key {key str} {
|
|
||||||
puts "Pressed key code: $key, $str"
|
|
||||||
if {$key >= 10 && $key <= 22} {return "true"}
|
|
||||||
if {$key >= 24 && $key <= 36} {return "true"}
|
|
||||||
if {$key >= 38 && $key <= 50} {return "true"}
|
|
||||||
if {$key >= 51 && $key <= 61 && $key != 58} {return "true"}
|
|
||||||
if {$key >= 79 && $key <= 91} {return "true"}
|
|
||||||
if {$key == 63 || $key == 107 || $key == 108 || $key == 112} {return "true"}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc BindKeys {w} {
|
|
||||||
global cfgVariables
|
|
||||||
# variable txt
|
|
||||||
set txt $w.frmText.t
|
|
||||||
bind $txt <KeyRelease> "Editor::ReleaseKey %K $txt"
|
|
||||||
bind $txt <KeyPress> "Editor::PressKey %K $txt"
|
|
||||||
# bind $txt <KeyRelease> "Editor::Key %k %K"
|
|
||||||
#$txt tag bind Sel <Control-/> {puts ">>>>>>>>>>>>>>>>>>>"}
|
|
||||||
#bind $txt <Control-slash> {puts "/////////////////"}
|
|
||||||
# #bind $txt <Control-g> GoToLine
|
|
||||||
# bind $txt <Control-g> {focus .frmTool.frmGoto.entGoTo; .frmTool.frmGoto.entGoTo delete 0 end}
|
|
||||||
# bind $txt <Control-agrave> Find
|
|
||||||
# bind $txt <Control-f> Find
|
|
||||||
# bind $txt <F3> {FindNext $w.text 1}
|
|
||||||
# bind $txt <Control-ecircumflex> ReplaceDialog
|
|
||||||
# bind $txt <Control-r> ReplaceDialog
|
|
||||||
# bind $txt <F4> {ReplaceCommand $w.text 1}
|
|
||||||
# bind $txt <Control-ucircumflex> {FileDialog [$noteBookFiles raise] save}
|
|
||||||
# bind $txt <Control-s> {FileDialog [$noteBookFiles raise] save}
|
|
||||||
# bind $txt <Control-ocircumflex> {FileDialog [$noteBookFiles raise] save_as}
|
|
||||||
# bind $txt <Shift-Control-s> {FileDialog [$noteBookFiles raise] save_as}
|
|
||||||
bind $txt <Control-odiaeresis> FileOper::Close
|
|
||||||
bind $txt <Control-w> FileOper::Close
|
|
||||||
# bind $txt <Control-division> "tk_textCut $w.text;break"
|
|
||||||
# bind $txt <Control-x> "tk_textCut $w.text;break"
|
|
||||||
# bind $txt <Control-ntilde> "tk_textCopy $txt"
|
|
||||||
# bind $txt <Control-c> "tk_textCopy $txt"
|
|
||||||
bind $txt <Control-igrave> "Editor::SelectionPaste $txt"
|
|
||||||
bind $txt <Control-v> "Editor::SelectionPaste $txt"
|
|
||||||
|
|
||||||
#bind $txt <Control-adiaeresis> "auto_completition $txt"
|
|
||||||
#bind $txt <Control-l> "auto_completition $txt"
|
|
||||||
bind $txt <Control-icircumflex> "auto_completition_proc $txt"
|
|
||||||
bind $txt <Control-j> "auto_completition_proc $txt"
|
|
||||||
bind $txt <Control-i> "ImageBase64Encode $txt"
|
|
||||||
|
|
||||||
bind $txt <Control-bracketleft> "Editor::InsertTabular $txt"
|
|
||||||
bind $txt <Control-bracketright> "Editor::DeleteTabular $txt"
|
|
||||||
|
|
||||||
bind $txt <Control-comma> "Editor::Comment $txt"
|
|
||||||
bind $txt <Control-period> "Editor::Uncomment $txt"
|
|
||||||
bind $txt <Control-eacute> Find
|
|
||||||
#bind . <Control-m> PageTab
|
|
||||||
#bind . <Control-udiaeresis> PageTab
|
|
||||||
bind $txt <Insert> {OverWrite}
|
|
||||||
bind $txt <ButtonRelease-1> []
|
|
||||||
bind $txt <Button-3> {catch [PopupMenuEditor %X %Y]}
|
|
||||||
bind $txt <Button-4> "%W yview scroll -3 units"
|
|
||||||
bind $txt <Button-5> "%W yview scroll 3 units"
|
|
||||||
#bind $txt <Shift-Button-4> "%W xview scroll -2 units"
|
|
||||||
#bind $txt <Shift-Button-5> "%W xview scroll 2 units"
|
|
||||||
bind $txt <<Modified>> "SetModifiedFlag $w"
|
|
||||||
bind $txt <<Selection>> "Editor::SelectionGet $txt"
|
|
||||||
}
|
|
||||||
|
|
||||||
proc QuotSelection {txt symbol} {
|
|
||||||
variable selectionText
|
|
||||||
set selIndex [$txt tag ranges sel]
|
|
||||||
set pos [$txt index insert]
|
|
||||||
set lineNum [lindex [split $pos "."] 0]
|
|
||||||
set posNum [lindex [split $pos "."] 1]
|
|
||||||
set symbol [string trim [string trimleft $symbol "\\"]]
|
|
||||||
# puts "Selindex : $selIndex, cursor position: $pos"
|
|
||||||
if {$selIndex != ""} {
|
|
||||||
set lineBegin [lindex [split [lindex $selIndex 0] "."] 0]
|
|
||||||
set posBegin [lindex [split [lindex $selIndex 0] "."] 1]
|
|
||||||
set lineEnd [lindex [split [lindex $selIndex 1] "."] 0]
|
|
||||||
set posEnd [lindex [split [lindex $selIndex 1] "."] 1]
|
|
||||||
# set selText [$txt get $lineBegin.$posBegin $lineEnd.$posEnd]
|
|
||||||
set selText $selectionText
|
|
||||||
puts "Selected text: $selText, pos: $pos, lineBegin: $lineBegin, posBegin: $posBegin, pos end: $posEnd"
|
|
||||||
if {$posNum == $posEnd} {
|
|
||||||
$txt insert $lineBegin.$posBegin "$symbol"
|
|
||||||
}
|
|
||||||
if {$posNum == $posBegin} {
|
|
||||||
$txt insert $lineBegin.$posEnd "$symbol"
|
|
||||||
}
|
|
||||||
$txt highlight $lineBegin.$posBegin $lineEnd.end
|
|
||||||
# $txt insert $lineBegin.[expr $posBegin + 1] "$symbol"
|
|
||||||
} else {
|
|
||||||
$txt insert $lineNum.[expr $posNum + 1] "$symbol"
|
|
||||||
$txt mark set insert $lineNum.[expr $posNum - 1]
|
|
||||||
# $txt see $lineNum.[expr $posNum - 1]
|
|
||||||
$txt see insert
|
|
||||||
$txt highlight $lineNum.$posNum $lineNum.end
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# Create editor for new file (Ctrl+N)
|
|
||||||
proc New {} {
|
|
||||||
global nbEditor tree untitledNumber
|
|
||||||
if [info exists untitledNumber] {
|
|
||||||
incr untitledNumber 1
|
|
||||||
} else {
|
|
||||||
set untitledNumber 0
|
|
||||||
}
|
|
||||||
set filePath untitled-$untitledNumber
|
|
||||||
set fileName untitled-$untitledNumber
|
|
||||||
set fileFullPath untitled-$untitledNumber
|
|
||||||
#puts [Tree::InsertItem $tree {} $fileFullPath "file" $fileName]
|
|
||||||
set nbEditorItem [NB::InsertItem $nbEditor $fileFullPath "file"]
|
|
||||||
puts "$nbEditorItem, $nbEditor"
|
|
||||||
Editor $fileFullPath $nbEditor $nbEditorItem
|
|
||||||
}
|
|
||||||
proc Editor {fileFullPath nb itemName} {
|
|
||||||
global cfgVariables
|
|
||||||
set fr $itemName
|
|
||||||
if ![string match "*untitled*" $itemName] {
|
|
||||||
set lblName "lbl[string range $itemName [expr [string last "." $itemName] +1] end]"
|
|
||||||
ttk::label $fr.$lblName -text $fileFullPath
|
|
||||||
pack $fr.$lblName -side top -anchor w -fill x
|
|
||||||
}
|
|
||||||
|
|
||||||
set frmText [ttk::frame $fr.frmText -border 1]
|
|
||||||
set txt $frmText.t
|
|
||||||
|
|
||||||
pack $frmText -side top -expand true -fill both
|
|
||||||
pack [ttk::scrollbar $frmText.s -command "$frmText.t yview"] -side right -fill y
|
|
||||||
ctext $txt -yscrollcommand "$frmText.s set" -font $cfgVariables(font) -linemapfg $cfgVariables(lineNumberFG) \
|
|
||||||
-tabs "[expr {4 * [font measure $cfgVariables(font) 0]}] left" -tabstyle tabular -undo true
|
|
||||||
pack $txt -fill both -expand 1
|
|
||||||
puts ">>>>>>> [bindtags $txt]"
|
|
||||||
if {$cfgVariables(lineNumberShow) eq "false"} {
|
|
||||||
$txt configure -linemap 0
|
|
||||||
}
|
|
||||||
set fileType [string toupper [string trimleft [file extension $fileFullPath] "."]]
|
|
||||||
|
|
||||||
if {[info procs Highlight::$fileType] ne ""} {
|
|
||||||
Highlight::$fileType $txt
|
|
||||||
} else {
|
|
||||||
Highlight::Default $txt
|
|
||||||
}
|
|
||||||
|
|
||||||
BindKeys $itemName
|
|
||||||
# bind $txt <Return> {
|
|
||||||
# regexp {^(\s*)} [%W get "insert linestart" end] -> spaceStart
|
|
||||||
# %W insert insert "\n$spaceStart"
|
|
||||||
# break
|
|
||||||
# }
|
|
||||||
|
|
||||||
return $fr
|
|
||||||
}
|
|
||||||
}
|
|
180
debian/projman/usr/share/projman/lib/files.tcl
vendored
|
@ -1,180 +0,0 @@
|
||||||
######################################################
|
|
||||||
# ProjMan 2
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svk.ru
|
|
||||||
# Copyright (c) "", 2022, https://nuk-svk.ru
|
|
||||||
######################################################
|
|
||||||
# Working with files module
|
|
||||||
######################################################
|
|
||||||
|
|
||||||
|
|
||||||
namespace eval FileOper {
|
|
||||||
variable types
|
|
||||||
|
|
||||||
set ::types {
|
|
||||||
{"All files" *}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc OpenDialog {} {
|
|
||||||
global env
|
|
||||||
set dir $env(HOME)
|
|
||||||
set fullPath [tk_getOpenFile -initialdir $dir -filetypes $::types -parent .]
|
|
||||||
set file [string range $fullPath [expr [string last "/" $fullPath]+1] end]
|
|
||||||
regsub -all "." $file "_" node
|
|
||||||
set dir [file dirname $fullPath]
|
|
||||||
set file [file tail $fullPath]
|
|
||||||
set name [file rootname $file]
|
|
||||||
set ext [string range [file extension $file] 1 end]
|
|
||||||
if {$fullPath != ""} {
|
|
||||||
puts $fullPath
|
|
||||||
return $fullPath
|
|
||||||
} else {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc OpenFolderDialog {} {
|
|
||||||
global env
|
|
||||||
#global tree node types dot env noteBook fontNormal fontBold fileList noteBook projDir activeProject imgDir editor rootDir
|
|
||||||
# set dir $projDir
|
|
||||||
set dir $env(HOME)
|
|
||||||
set fullPath [tk_chooseDirectory -initialdir $dir -parent .]
|
|
||||||
set file [string range $fullPath [expr [string last "/" $fullPath]+1] end]
|
|
||||||
regsub -all "." $file "_" node
|
|
||||||
set dir [file dirname $fullPath]
|
|
||||||
# EditFile .frmBody.frmCat.noteBook.ffiles.frmTreeFiles.treeFiles $node $fullPath
|
|
||||||
puts $fullPath
|
|
||||||
|
|
||||||
return $fullPath
|
|
||||||
}
|
|
||||||
|
|
||||||
proc Close {} {
|
|
||||||
global nbEditor modified tree
|
|
||||||
set nbItem [$nbEditor select]
|
|
||||||
if {$nbItem == ""} {return}
|
|
||||||
if {$modified($nbItem) eq "true"} {
|
|
||||||
Save
|
|
||||||
}
|
|
||||||
$nbEditor forget $nbItem
|
|
||||||
destroy $nbItem
|
|
||||||
set treeItem "file::[string range $nbItem [expr [string last "." $nbItem] +1] end ]"
|
|
||||||
if {[$tree parent $treeItem] eq "" } {
|
|
||||||
$tree delete $treeItem
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc Save {} {
|
|
||||||
global nbEditor tree env
|
|
||||||
set nbEditorItem [$nbEditor select]
|
|
||||||
puts "Saved editor text: $nbEditorItem"
|
|
||||||
if [string match "*untitled*" $nbEditorItem] {
|
|
||||||
set filePath [tk_getSaveFile -initialdir $env(HOME) -filetypes $::types -parent .]
|
|
||||||
if {$filePath eq ""} {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
set fileName [string range $filePath [expr [string last "/" $filePath]+1] end]
|
|
||||||
puts "$filePath, $fileName"
|
|
||||||
set treeitem [Tree::InsertItem $tree {} $filePath "file" $fileName]
|
|
||||||
} else {
|
|
||||||
set treeItem "file::[string range $nbEditorItem [expr [string last "." $nbEditorItem] +1] end ]"
|
|
||||||
set filePath [Tree::GetItemID $tree $treeItem]
|
|
||||||
}
|
|
||||||
set editedText [$nbEditorItem.frmText.t get 0.0 end]
|
|
||||||
set f [open $filePath "w+"]
|
|
||||||
puts -nonewline $f $editedText
|
|
||||||
puts "$f was saved"
|
|
||||||
close $f
|
|
||||||
ResetModifiedFlag $nbEditorItem
|
|
||||||
}
|
|
||||||
|
|
||||||
proc SaveAll {} {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
proc Delete {} {
|
|
||||||
set node [$tree selection get]
|
|
||||||
set fullPath [$tree itemcget $node -data]
|
|
||||||
set dir [file dirname $fullPath]
|
|
||||||
set file [file tail $fullPath]
|
|
||||||
set answer [tk_messageBox -message "[::msgcat::mc "Delete file"] \"$file\"?"\
|
|
||||||
-type yesno -icon question -default yes]
|
|
||||||
case $answer {
|
|
||||||
yes {
|
|
||||||
FileDialog $tree close
|
|
||||||
file delete -force "$fullPath"
|
|
||||||
$tree delete $node
|
|
||||||
$tree configure -redraw 1
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc ReadFolder {dir} {
|
|
||||||
global tree
|
|
||||||
puts "Read the folder $dir"
|
|
||||||
set rList ""
|
|
||||||
if {[catch {cd $dir}] != 0} {
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
set parent [Tree::InsertItem $tree {} $dir "directory" $dir]
|
|
||||||
# if {[ $tree item $parent -open] eq "false"} {
|
|
||||||
# $tree item $parent -open true
|
|
||||||
# } else {
|
|
||||||
# $tree item $parent -open false
|
|
||||||
# }
|
|
||||||
# Getting an files and directorues lists
|
|
||||||
foreach file [glob -nocomplain *] {
|
|
||||||
lappend rList [list [file join $dir $file]]
|
|
||||||
if [file isdirectory $file] {
|
|
||||||
lappend lstDir $file
|
|
||||||
} else {
|
|
||||||
lappend lstFiles $file
|
|
||||||
}
|
|
||||||
}
|
|
||||||
# Sort lists and insert into tree
|
|
||||||
if {[info exists lstDir] && [llength $lstDir] > 0} {
|
|
||||||
foreach f [lsort $lstDir] {
|
|
||||||
puts " Tree insert item: [Tree::InsertItem $tree $parent [file join $dir $f] "directory" $f]"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if {[info exists lstFiles] && [llength $lstFiles] > 0} {
|
|
||||||
foreach f [lsort $lstFiles] {
|
|
||||||
puts "Tree insert item: [Tree::InsertItem $tree $parent [file join $dir $f] "file" $f]"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc ReadFile {fileFullPath itemName} {
|
|
||||||
set txt $itemName.frmText.t
|
|
||||||
if ![string match "*untitled*" $itemName] {
|
|
||||||
set file [open "$fileFullPath" r]
|
|
||||||
$txt insert end [chan read -nonewline $file]
|
|
||||||
close $file
|
|
||||||
}
|
|
||||||
# Delete emty last line
|
|
||||||
if {[$txt get {end-1 line} end] eq "\n" || [$txt get {end-1 line} end] eq "\r\n"} {
|
|
||||||
$txt delete {end-1 line} end
|
|
||||||
puts ">[$txt get {end-1 line} end]<"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc Edit {fileFullPath} {
|
|
||||||
global nbEditor tree
|
|
||||||
set filePath [file dirname $fileFullPath]
|
|
||||||
set fileName [file tail $fileFullPath]
|
|
||||||
regsub -all {\.|/|\\|\s} $fileFullPath "_" itemName
|
|
||||||
set itemName "$nbEditor.$itemName"
|
|
||||||
puts [Tree::InsertItem $tree {} $fileFullPath "file" $fileName]
|
|
||||||
if {[winfo exists $itemName] == 0} {
|
|
||||||
NB::InsertItem $nbEditor $fileFullPath "file"
|
|
||||||
Editor::Editor $fileFullPath $nbEditor $itemName
|
|
||||||
ReadFile $fileFullPath $itemName
|
|
||||||
$itemName.frmText.t highlight 1.0 end
|
|
||||||
ResetModifiedFlag $itemName
|
|
||||||
}
|
|
||||||
$nbEditor select $itemName
|
|
||||||
focus -force $itemName.frmText.t
|
|
||||||
|
|
||||||
return $itemName
|
|
||||||
}
|
|
||||||
}
|
|
164
debian/projman/usr/share/projman/lib/gui.tcl
vendored
|
@ -1,164 +0,0 @@
|
||||||
######################################################
|
|
||||||
# ProjMan 2
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svk.ru
|
|
||||||
# Copyright (c) "", 2022, https://nuk-svk.ru
|
|
||||||
######################################################
|
|
||||||
# GUI module
|
|
||||||
#######################################################
|
|
||||||
|
|
||||||
if {[info exists cfgVariables(geometry)]} {
|
|
||||||
wm geometry . $cfgVariables(geometry)
|
|
||||||
} else {
|
|
||||||
wm geometry . 1024x768
|
|
||||||
}
|
|
||||||
# Заголовок окна
|
|
||||||
wm title . "ProjMan \($projmanVersion-$projmanRelease\)"
|
|
||||||
wm iconname . "ProjMan"
|
|
||||||
# иконка окна (берется из файла lib/imges.tcl)
|
|
||||||
wm iconphoto . projman
|
|
||||||
wm protocol . WM_DELETE_WINDOW Quit
|
|
||||||
wm overrideredirect . 0
|
|
||||||
#wm positionfrom . user
|
|
||||||
|
|
||||||
bind . <Control-q> Quit
|
|
||||||
bind . <Control-Q> Quit
|
|
||||||
bind . <Control-eacute> Quit
|
|
||||||
bind . <Insert> Add
|
|
||||||
bind . <Delete> Del
|
|
||||||
bind . <Control-Return> Edit
|
|
||||||
bind . <F1> ShowHelpDialog
|
|
||||||
bind . <Control-n> Editor::New
|
|
||||||
bind . <Control-N> Editor::New
|
|
||||||
bind . <Control-o> {
|
|
||||||
set filePath [FileOper::OpenDialog]
|
|
||||||
if {$filePath != ""} {
|
|
||||||
FileOper::Edit $filePath
|
|
||||||
}
|
|
||||||
}
|
|
||||||
bind . <Control-O> {
|
|
||||||
set filePath [FileOper::OpenDialog]
|
|
||||||
if {$filePath != ""} {
|
|
||||||
FileOper::Edit $filePath
|
|
||||||
}
|
|
||||||
}
|
|
||||||
bind . <Control-k> {
|
|
||||||
set folderPath [FileOper::OpenFolderDialog]
|
|
||||||
if {$folderPath != ""} {
|
|
||||||
FileOper::ReadFolder $folderPath
|
|
||||||
}
|
|
||||||
}
|
|
||||||
bind . <Control-K> {
|
|
||||||
set folderPath [FileOper::OpenFolderDialog]
|
|
||||||
if {$folderPath != ""} {
|
|
||||||
FileOper::ReadFolder $folderPath
|
|
||||||
}
|
|
||||||
}
|
|
||||||
bind . <Control-s> {FileOper::Save}
|
|
||||||
bind . <Control-S> {FileOper::Save}
|
|
||||||
#ttk::style configure TPanedwindow -background blue
|
|
||||||
#ttk::style configure Sash -sashthickness 5
|
|
||||||
#ttk::style configure TButton -padding 60 -relief flat -bg black
|
|
||||||
#ttk::style configure Custom.Treeview -foreground red
|
|
||||||
#ttk::style configure Custom.Treeview -rowheight 20
|
|
||||||
|
|
||||||
if [info exists cfgVariables(theme)] {
|
|
||||||
ttk::style theme use $cfgVariables(theme)
|
|
||||||
}
|
|
||||||
|
|
||||||
frame .frmMenu -border 1 -relief raised -highlightthickness 0
|
|
||||||
frame .frmBody -border 1 -relief raised -highlightthickness 0
|
|
||||||
frame .frmStatus -border 1 -relief sunken
|
|
||||||
pack .frmMenu -side top -padx 1 -fill x
|
|
||||||
pack .frmBody -side top -padx 1 -fill both -expand true
|
|
||||||
pack .frmStatus -side top -padx 1 -fill x
|
|
||||||
|
|
||||||
# pack .panel -expand true -fill both
|
|
||||||
# pack propagate .panel false
|
|
||||||
#pack [label .frmMenu.lbl -text "ddd"]
|
|
||||||
pack [label .frmStatus.lbl2 -text "ddd"]
|
|
||||||
|
|
||||||
menubutton .frmMenu.mnuFile -text [::msgcat::mc "File"] -menu .frmMenu.mnuFile.m
|
|
||||||
GetFileMenu [menu .frmMenu.mnuFile.m]
|
|
||||||
|
|
||||||
menubutton .frmMenu.mnuEdit -text [::msgcat::mc "Edit"] -menu .frmMenu.mnuEdit.m
|
|
||||||
GetEditMenu [menu .frmMenu.mnuEdit.m]
|
|
||||||
|
|
||||||
menubutton .frmMenu.mnuView -text [::msgcat::mc "View"] -menu .frmMenu.mnuView.m
|
|
||||||
GetViewMenu [menu .frmMenu.mnuView.m]
|
|
||||||
|
|
||||||
pack .frmMenu.mnuFile .frmMenu.mnuEdit .frmMenu.mnuView -side left
|
|
||||||
|
|
||||||
menubutton .frmMenu.mnuHelp -text [::msgcat::mc "Help"] -menu .frmMenu.mnuHelp.m
|
|
||||||
pack .frmMenu.mnuHelp -side right
|
|
||||||
|
|
||||||
|
|
||||||
set frmTool [ttk::frame .frmBody.frmTool]
|
|
||||||
ttk::panedwindow .frmBody.panel -orient horizontal -style TPanedwindow
|
|
||||||
pack propagate .frmBody.panel false
|
|
||||||
|
|
||||||
pack .frmBody.frmTool -side left -fill y
|
|
||||||
pack .frmBody.panel -side left -fill both -expand true
|
|
||||||
|
|
||||||
ttk::button $frmTool.btn_tree -command ViewFilesTree -image tree_32x32
|
|
||||||
|
|
||||||
pack $frmTool.btn_tree -side top -padx 1 -pady 1
|
|
||||||
# #label $frmTool.lbl_logo -image tcl
|
|
||||||
# pack $frmTool.btn_quit -side bottom -padx 5 -pady 5
|
|
||||||
# #pack $frmTool.lbl_logo -side bottom -padx 5 -pady 5
|
|
||||||
#
|
|
||||||
# # Дерево с полосами прокрутки
|
|
||||||
set frmTree [ttk::frame .frmBody.frmTree]
|
|
||||||
|
|
||||||
ttk::scrollbar $frmTree.hsb1 -orient horizontal -command {$frmTree.tree xview}
|
|
||||||
ttk::scrollbar $frmTree.vsb1 -orient vertical -command [list $frmTree.tree yview]
|
|
||||||
set tree [ttk::treeview $frmTree.tree -show tree \
|
|
||||||
-xscrollcommand {$frmTree.hsb1 set} -yscrollcommand [list $frmTree.vsb1 set]]
|
|
||||||
|
|
||||||
bind $tree <Double-ButtonPress-1> {Tree::DoublePressItem $tree}
|
|
||||||
bind $tree <ButtonRelease> {Tree::PressItem $tree}
|
|
||||||
|
|
||||||
grid $tree -row 0 -column 0 -sticky nsew
|
|
||||||
grid $frmTree.vsb1 -row 0 -column 1 -sticky nsew
|
|
||||||
grid $frmTree.hsb1 -row 1 -column 0 -sticky nsew
|
|
||||||
grid columnconfigure $frmTree 0 -weight 1
|
|
||||||
grid rowconfigure $frmTree 0 -weight 1
|
|
||||||
|
|
||||||
set frm_work [ttk::frame .frm_work]
|
|
||||||
|
|
||||||
set nbEditor [ttk::notebook $frm_work.nbEditor]
|
|
||||||
|
|
||||||
#grid $nbEditor -row 0 -column 0 -sticky nsew
|
|
||||||
pack $nbEditor -fill both -expand true
|
|
||||||
|
|
||||||
# Create an image CLOSE for tab
|
|
||||||
ttk::style element create close_button image close_10x10 -height 12 -width 12 -sticky e -padding {10 0}
|
|
||||||
|
|
||||||
ttk::style layout TNotebook.Tab {
|
|
||||||
Notebook.tab -sticky nswe -children {
|
|
||||||
Notebook.padding -expand 1 -sticky nswe -children {
|
|
||||||
Notebook.label
|
|
||||||
-expand 1 -sticky nesw -side left close_button -side right
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bind TNotebook <Button-1> "NB::CloseTab %W %x %y\;[bind TNotebook <Button-1>]"
|
|
||||||
|
|
||||||
# ttk::scrollbar $nbEditor.hsb1 -orient horizontal -command [list $frm_tree.work xview]
|
|
||||||
# ttk::scrollbar $fbEditor.vsb1 -orient vertical -command [list $frm_tree.work yview]
|
|
||||||
# set tree [ttk::treeview $frm_tree.tree -show tree \
|
|
||||||
# -xscrollcommand [list $frm_tree.hsb1 set] -yscrollcommand [list $frm_tree.vsb1 set]]
|
|
||||||
#
|
|
||||||
|
|
||||||
# # назначение обработчика нажатия кнопкой мыши
|
|
||||||
# #bind $frm_tree.tree <ButtonRelease> "TreePress %x %y %X %Y $frm_tree.tree"
|
|
||||||
# bind $frm_tree.tree <ButtonRelease> "TreePress $frm_tree.tree"
|
|
||||||
|
|
||||||
#.panel add $frmTool -weight 1
|
|
||||||
if {$cfgVariables(toolBarShow) eq "true"} {
|
|
||||||
.frmBody.panel add $frmTree -weight 0
|
|
||||||
}
|
|
||||||
.frmBody.panel add $frm_work -weight 1
|
|
||||||
# #
|
|
||||||
|
|
|
@ -1,44 +0,0 @@
|
||||||
######################################################
|
|
||||||
# ProjMan 2
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svk.ru
|
|
||||||
# Copyright (c) "", 2022, https://nuk-svk.ru
|
|
||||||
######################################################
|
|
||||||
namespace eval Highlight {} {
|
|
||||||
proc TCL {txt} {
|
|
||||||
ctext::addHighlightClass $txt widgets purple [list ctext button label text frame toplevel scrollbar checkbutton canvas listbox menu menubar menubutton radiobutton scale entry message tk_chooseDir tk_getSaveFile tk_getOpenFile tk_chooseColor tk_optionMenu]
|
|
||||||
ctext::addHighlightClassForRegexp $txt flags orange {\s-[a-zA-Z]+}
|
|
||||||
ctext::addHighlightClass $txt stackControl #19a2a6 [info commands]
|
|
||||||
ctext::addHighlightClassWithOnlyCharStart $txt vars #4471ca "\$"
|
|
||||||
ctext::addHighlightClass $txt variable_funcs gold {set global variable unset}
|
|
||||||
ctext::addHighlightClassForSpecialChars $txt brackets green {[]{}()}
|
|
||||||
ctext::addHighlightClassForRegexp $txt paths lightblue {\.[a-zA-Z0-9\_\-]+}
|
|
||||||
ctext::addHighlightClassForRegexp $txt comments #666666 {(#|//)[^\n\r]*}
|
|
||||||
ctext::addHighlightClassForRegexp $txt namespaces #4f64ff {::}
|
|
||||||
ctext::addHighlightClassForSpecialChars $txt qoute #b84a0c {"'`}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc Default {txt} {
|
|
||||||
ctext::addHighlightClassForRegexp $txt flags orange {\s-[a-zA-Z\-_]+}
|
|
||||||
ctext::addHighlightClass $txt stackControl #19a2a6 [info commands]
|
|
||||||
ctext::addHighlightClassWithOnlyCharStart $txt vars #4471ca "\$"
|
|
||||||
ctext::addHighlightClass $txt variable_funcs gold {set global variable unset}
|
|
||||||
ctext::addHighlightClassForSpecialChars $txt brackets green {[]{}()}
|
|
||||||
ctext::addHighlightClassForRegexp $txt paths lightblue {\.[a-zA-Z0-9\_\-]+}
|
|
||||||
ctext::addHighlightClassForRegexp $txt comments #666666 {(#|//)[^\n\r]*}
|
|
||||||
ctext::addHighlightClassForRegexp $txt namespaces #4f64ff {::}
|
|
||||||
ctext::addHighlightClassForSpecialChars $txt qoute #b84a0c {"'`}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc SH {txt} {
|
|
||||||
ctext::addHighlightClassForRegexp $txt flags orange {-+[a-zA-Z\-_]+}
|
|
||||||
ctext::addHighlightClass $txt stackControl #19a2a6 {if fi else elseif then while case esac do in exit source echo}
|
|
||||||
ctext::addHighlightClassWithOnlyCharStart $txt vars #4471ca "\$"
|
|
||||||
ctext::addHighlightClassForRegexp $txt vars_extended #4471ca {\$\{[a-zA-Z0-9\_\-:\./\$\{\}]+\}}
|
|
||||||
ctext::addHighlightClass $txt variable_funcs gold {set export}
|
|
||||||
ctext::addHighlightClassForSpecialChars $txt brackets green {[]{}()}
|
|
||||||
ctext::addHighlightClassForRegexp $txt paths lightblue {\.[a-zA-Z0-9\_\-]+}
|
|
||||||
ctext::addHighlightClassForRegexp $txt comments #666666 {(#|//)[^\n\r]*}
|
|
||||||
ctext::addHighlightClassForSpecialChars $txt qoute #b84a0c {"'`}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,126 +0,0 @@
|
||||||
######################################################
|
|
||||||
# ProjMan 2
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svk.ru
|
|
||||||
# Copyright (c) "", 2022, https://nuk-svk.ru
|
|
||||||
######################################################
|
|
||||||
# Base64 encoded Images library
|
|
||||||
######################################################
|
|
||||||
image create photo projman -data {
|
|
||||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
|
|
||||||
WXMAAAsSAAALEgHS3X78AAAAB3RJTUUH1AsFAhA0bYcHMAAACoFJREFUeNqlV1uMG9UZ/uZiz9ge
|
|
||||||
X9drr51dZ7037SUkQEJIwqUh3BTRClqREBWqVmorpbxQIaU8UGiloraqVKlPqA/QBwRFItA2AcqG
|
|
||||||
hGwgLNmEvWSzt6zjvXl37V2P7+OxZ8Yzc/qAF6WwCUj80pFGo3P5znf+833nZ3DjoABQkoTogQN4
|
|
||||||
7e23Ecvl8ODu3XidYcBOTGAEAMF3DHaTf0y9WQBQ4+PY2t8P8fnnYVy4gIeeeQZ/TiTQX+9rqc9B
|
|
||||||
Xzderzfz2wD8EsCbb77JBoPBTofg+BVrYY/QFN0IALHYGVXTzlxsbLz8+DvvrOcTCbwLQBIE4anD
|
|
||||||
hw//5mdHn+urKAZ1ZagfU+Oj4pX40MupheR8Xqp+Yph0RleNSh3MzQE4HA6PKIo/Hx4bfprneYbj
|
|
||||||
ObAsC0J4rrXt7ntNkuqIxSpvsGyV0XWdGR0dzw5cKTuf/usVKpeT0C3E9YP7dzbced+uF8+dOp4f
|
|
||||||
Gp44zXENr1to22eiKEqiKNZwA7o3GNBPnjy5vpxYFhbmFxxyWRZsNhsjCB5YOTtY+lPnxUvNwbJU
|
|
||||||
Hnnttdcc/VeYt196dWLLyloZUmFNWbr06pnFpbgS6WgL7Lprvz0a8fccfOiePXff+313SswWlhbm
|
|
||||||
CgCMrx4Lc903MQyjpKpqvCyVEzWttsVmtwVC4RDNsgpSq59h7DIlyLJ8ded9P378L28s7imVNcBQ
|
|
||||||
DKTPDpHixB+kUunq3t2LdzU00I4tLXvo7X1DvunZYM/E1KSQTq7NmqZZBoh+IwAAYKiqmiuXy/Fo
|
|
||||||
NOpzu907g6EgBzKHhfkcHEIX7XQ3No+kWm+bSyo8ANDSldi+aP7lUx+8Fz954sT0wYO5aGJZ2p7M
|
|
||||||
bIG4No9MzmWXq9neQlp0GZqxrhtG5nommI0EfOGFF3p9Pp9x/vx5FYC2bdu22yJbI3fb7XY+uXoV
|
|
||||||
lQoPl7uZKmqCEMuHBKliUABgYdR8c+/Dfbd1Cg9IxYzSu8P2RDrf2jA5kcf4qIjmLRF0tbWzJUmM
|
|
||||||
EJN1NLZERFVVipqiaAAIAwChUMjP2/j+7p7uHQcOHGAbGhpYp8v5WLQjesvq6iqbzarYseMeWKxW
|
|
||||||
rEkeamSBZQioLyhjPA2J9Up4T2vB7fI473X7klsHP+VINpXO5dLZheRqknO4vFzPjl32/fvv74m2
|
|
||||||
R++iaMqYi12LAdBYANTIyAjH2/jOnbt2RvyN/l3bd2yfTa2ltjMMw2UyGfR296GpKYyavgxJMxmT
|
|
||||||
UP+fybW07vdtc+n0Mn3+4zLy6ZqsVMqfrKVSo5Zc/nuc4L73wbaodfut2zkrQ3WtLi7+GsA5ACoL
|
|
||||||
APPz86aiKgu6oW/p7OrsKsvljmBTkMplcxRLs+ju7sZKcgU2uw2SUvmCeloHAQ3dpHHfbT7Llctj
|
|
||||||
WFq+gMQyyalq4ezl0bHjtVot1traSovp1I7pyZlGmmaBikSPjAxnAfgBJBgAlKqqRlkqLxWLRVex
|
|
||||||
UGxXNZVpCjVR2UwWglMAZ+VQ02vgrBxG4jWs5lmEbSlSMZwUMXXcfwuN8cH3sZTIV0Ux078wv9Cv
|
|
||||||
KMowgBWapsVMOu2TZblXKkv0mVOnZhcWFj/WNe0igPQGlzRN026n09nqEByPCoLwADFJr1SWlI7O
|
|
||||||
Dtbv97v27ttrafQ30v/4r4jPZikc6DNw5qoXHmYdW9R+rC5MZmqGcbZSrR4nhEwASABQAXAAoizL
|
|
||||||
PsuwrEdT1Y8IITMApgDkN5TQNE2zVCwWY4qivC6X5UsWi2VfoVAwCoWClWGYplKxdPevn31uq26B
|
|
||||||
hSezcPt6AVRglwZRKiUqxXL5HCHkQwATAFYBKPWrpgJY1HX9b7quewHkAaQBFAAY15uRAUBWVXVR
|
|
||||||
VdUUgDEAnK7rAMAllhJ9M4vS74dmtFu22BSAdQCoov3Op+ArvZtPnvzXR4ZhXLpu5xuKZwKoAJit
|
|
||||||
S78JoLbhD5u5oV4Ho25YMgAmEAjwuVxJA4CAh4Ws6HUzUREO+b19fX1NsVhMVRRFv4H51Opzk2+y
|
|
||||||
Y9Q76QBw4j//cSwtLfV8Pjh4jFVSfYAPNitBtQ7AQkqIbI3YXR7XD/iP+KmpyamsLMvFjfGbzIub
|
|
||||||
SfFXg24Lhbq9Xu9LPp/voJ2z8h9OUugKlM2i3kClcjqi7jQ6W2xoCjW5/X5/WNO0SjaTTdZqNfVm
|
|
||||||
NvxNDOB3L77oCTU17bk6On50fGz0e01NQS6VyYHRWwjPO2RNNpwAwBNRp+BmOY6zR9uj+wlIl91u
|
|
||||||
bxv8dPCVcrmcrh/lDWNTBo48eYRTZPkQTchvu9rb9hk1jT/x3vsYHR+vUt5bSWvIKqtwOZKiTCLs
|
|
||||||
lTmXYGObI828aZoQBEGw2WxdlUpFLBaLq5qmyTdj4msAfvmLX3jvuH3n407e/idxLdWRTK0y07EY
|
|
||||||
puNzmUw2+4GreZ816LNZaM7rXEnM5Z98bG9+avzCBGflvH6/3w4KlMfrcbrd7ls5K8dmM9m4qqrV
|
|
||||||
emLfHMCx547xlGkeLmSyx1rCoSjPWvDhwDlcGB4pVxXl1NGjR7OLebcGYoT9jUHXzCrN5AoSI+jz
|
|
||||||
b128eHE20BjoCIVCgklMOJ1OwWazdaiqmq/IlWSlUilvxsSXAH7y1I+9DR7f4a0tkT9qcrV1cmoC
|
|
||||||
ly6PkWtzS2lFUc7ohv7WoUOH9IVy8zOLy2ul7o5m1+SiyvQ0rC2m5i69MjkxeTp+LZ6NRCK3+hv9
|
|
||||||
DpqmKbfH7RQEYZuFtXDFQnFOUZQqIcT4GoCf/PQptjkcPlIUs8fsVmur4OBxaewyGbk8XiqVpbOE
|
|
||||||
kFMEZDiTyYwEwu27F1Ny8I5tIX4sVqB2BuYHBs+fPW6a5rokSSsVucL5fL72YDAo6LoOh8Mh8Da+
|
|
||||||
VVXUgizLSVmW/48JBgBFE9LRGYm86eGFSCwWw7kLg2Qqdm1d1WoDuq6/RUCGASyvra2VutvDH2s6
|
|
||||||
ae1pbwpfmx5Lzwz983eqqk4B0ADI6XQ6lkwmS/5G/zaO5xxaTaMb/Y0ul8vVx7KsNZvJziqKUt3Q
|
|
||||||
CQYAU5ErT9/e0/sIx/OIxeNkOh4v5fKFAdM0TxFChgEkAVQBmLGZy4WC4R995J5o52cD/36/lF35
|
|
||||||
V133NzylWiqVkpqm8V6Pt9XldDm1moYGf4Ngs9vaqpVqtpAvJFRVLW+8iFgATzgczl2p9XUyOTuz
|
|
||||||
XlHVjxRFOV5fPLGx+JdyJsULTx75kd/nZCeGh4dnv/quNE1TSq+n46IoFsPh8DZBEISZ6RlaKklO
|
|
||||||
wSFEsplsvFAoJADUGAA0z/NFQtPNiZWEWK3VLhQKhTOEkNHrd/7V7H344YcbS6WSa2hoaHqT22Ua
|
|
||||||
hlEplUpJVVO5QCDQpqqq0NXZhUAw4FpeXl5fWVkZA1BhAZiKogzPzc89W6vVvDRNK6Zprtct84Zy
|
|
||||||
2tLSkpmcnAzUzYpsovmKpmlLw58Pvz4/N7/10cce/SGhCDMxPsGpihoG4AIgsnW0VcMw4gCshmGY
|
|
||||||
9YTSblbbMQyT5jhud/0IazcwnpphGHOZTObv5wbOdZ8+fbrX6/HmRVFMbNSO1CYV8beqeA8dOsRm
|
|
||||||
Mpm9AwMDn1+XhJsaGgA7gCiArQBsANbrL6IC9R2ra8tmHn8DEDYAjjpjCgAJgP4/zJqKdgq3EfoA
|
|
||||||
AAAASUVORK5CYII=
|
|
||||||
}
|
|
||||||
image create photo folder -data {
|
|
||||||
R0lGODlhEAANAOMMAAAAABwcHC4uLlxcXGpqant7e4ODg4aGhqGhoaioqLCwsLe3t///////////
|
|
||||||
/////yH5BAEKAA8ALAAAAAAQAA0AAAQ48Ell6pA4v5WqKYSGKZ33HUiKhA9ivp4AtDAs07V5u3k8
|
|
||||||
8z3DLlgZEo3BG0HAbDqZgdkDQK1arREAOw==
|
|
||||||
}
|
|
||||||
image create photo imgFile -data {
|
|
||||||
R0lGODlhCwANAPcAAAAAAAEBAQICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4O
|
|
||||||
Dg8PDxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEh
|
|
||||||
ISIiIiMjIyQkJCUlJSYmJicnJygoKCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0
|
|
||||||
NDU1NTY2Njc3Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZGRkdH
|
|
||||||
R0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpa
|
|
||||||
WltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1t
|
|
||||||
bW5ubm9vb3BwcHFxcXJycnNzc3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3x8fH19fX5+fn9/f4CA
|
|
||||||
gIGBgYKCgoODg4SEhIWFhYaGhoeHh4iIiImJiYqKiouLi4yMjI2NjY6Ojo+Pj5CQkJGRkZKSkpOT
|
|
||||||
k5SUlJWVlZaWlpeXl5iYmJmZmZqampubm5ycnJ2dnZ6enp+fn6CgoKGhoaKioqOjo6SkpKWlpaam
|
|
||||||
pqenp6ioqKmpqaqqqqurq6ysrK2tra6urq+vr7CwsLGxsbKysrOzs7S0tLW1tba2tre3t7i4uLm5
|
|
||||||
ubq6uru7u7y8vL29vb6+vr+/v8DAwMHBwcLCwsPDw8TExMXFxcbGxsfHx8jIyMnJycrKysvLy8zM
|
|
||||||
zM3Nzc7Ozs/Pz9DQ0NHR0dLS0tPT09TU1NXV1dbW1tfX19jY2NnZ2dra2tvb29zc3N3d3d7e3t/f
|
|
||||||
3+Dg4OHh4eLi4uPj4+Tk5OXl5ebm5ufn5+jo6Onp6erq6uvr6+zs7O3t7e7u7u/v7/Dw8PHx8fLy
|
|
||||||
8vPz8/T09PX19fb29vf39/j4+Pn5+fr6+vv7+/z8/P39/f7+/v///yH5BAEAAKoALAAAAAALAA0A
|
|
||||||
AAg5AFUJHEhQIICDCA8OBPCvoUOGBh0+VMgw4UNVDCVerHhQIgCMGjf+S5jxY8aQJkdaHAkyJEuS
|
|
||||||
JAMCADs=
|
|
||||||
}
|
|
||||||
image create photo tree_32x32 -data {
|
|
||||||
iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAABhGlDQ1BJQ0MgcHJvZmlsZQAAKJF9
|
|
||||||
kT1Iw1AUhU9TpaIVBzuIdMhQnSyIFXHUKhShQqgVWnUweekfNDEkKS6OgmvBwZ/FqoOLs64OroIg
|
|
||||||
+APi6OSk6CIl3pcUWsT44PI+znvncN99gNCoMs3qGgc03TYzqaSYy6+IoVeE0EcVRUJmljErSWn4
|
|
||||||
rq97BPh+F+dZ/vf+XP1qwWJAQCSeYYZpE68TT23aBud94ggryyrxOfGYSQ0SP3Jd8fiNc8llgWdG
|
|
||||||
zGxmjjhCLJY6WOlgVjY14knimKrplC/kPFY5b3HWqjXW6pO/MFzQl5e4ThVFCgtYhAQRCmqooAob
|
|
||||||
cdp1Uixk6Dzp4x92/RK5FHJVwMgxjw1okF0/+B/8nq1VTEx4SeEk0P3iOB8jQGgXaNYd5/vYcZon
|
|
||||||
QPAZuNLb/o0GMP1Jer2txY6AgW3g4rqtKXvA5Q4w9GTIpuxKQSqhWATez+ib8sDgLdC76s2tdY7T
|
|
||||||
ByBLs0rfAAeHwGiJstd83t3TObd/77Tm9wNyw3KnzSNOGAAAAAZiS0dEAJ8AMACxMhhtNAAAAAlw
|
|
||||||
SFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+YHCwkONjcAirYAAAAZdEVYdENvbW1lbnQAQ3JlYXRl
|
|
||||||
ZCB3aXRoIEdJTVBXgQ4XAAAAyklEQVRYw+2VMQ7DIAxFf9KcoVfIKdrJUm6TnqU9Ry8QiY0DdPaW
|
|
||||||
OXvndmFAWQDVtdzKlhBCIPiY7wfg8WPR5YMQwkv6ACLqWtb31jI0KJwxp34BwBYydErt2OyhvZeI
|
|
||||||
6C4o7AYg/p2HGMBa8/YVwRKCtrRRNFVlmnwaCkKu2h7qC7e4ENH5i3yaAYytVTZp8qnGQ2uWpWl/
|
|
||||||
I9Uny8o1prZZ+8sWAA9hDfyJIBaCpHPIOeQccg45h5xDziHnkBUOmYtDYX5Ma55agt4p2lAY80lC
|
|
||||||
JwAAAABJRU5ErkJggg==
|
|
||||||
}
|
|
||||||
image create photo close_12x12 -data {
|
|
||||||
iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAABhGlDQ1BJQ0MgcHJvZmlsZQAAKJF9
|
|
||||||
kT1Iw1AUhU9TpaIVBzuIdMhQnSyIFXHUKhShQqgVWnUweekfNDEkKS6OgmvBwZ/FqoOLs64OroIg
|
|
||||||
+APi6OSk6CIl3pcUWsT44PI+znvncN99gNCoMs3qGgc03TYzqaSYy6+IoVeE0EcVRUJmljErSWn4
|
|
||||||
rq97BPh+F+dZ/vf+XP1qwWJAQCSeYYZpE68TT23aBud94ggryyrxOfGYSQ0SP3Jd8fiNc8llgWdG
|
|
||||||
zGxmjjhCLJY6WOlgVjY14knimKrplC/kPFY5b3HWqjXW6pO/MFzQl5e4ThVFCgtYhAQRCmqooAob
|
|
||||||
cdp1Uixk6Dzp4x92/RK5FHJVwMgxjw1okF0/+B/8nq1VTEx4SeEk0P3iOB8jQGgXaNYd5/vYcZon
|
|
||||||
QPAZuNLb/o0GMP1Jer2txY6AgW3g4rqtKXvA5Q4w9GTIpuxKQSqhWATez+ib8sDgLdC76s2tdY7T
|
|
||||||
ByBLs0rfAAeHwGiJstd83t3TObd/77Tm9wNyw3KnzSNOGAAAAAZiS0dEAJ8AMACxMhhtNAAAAAlw
|
|
||||||
SFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+YHCww0DNJuT5YAAAAZdEVYdENvbW1lbnQAQ3JlYXRl
|
|
||||||
ZCB3aXRoIEdJTVBXgQ4XAAAATUlEQVQoz52QQQ4AMQgCR9/rc/xv99SkIdWN5QgoqGXmAogIo8H2
|
|
||||||
uRKdGcCU0CTVrBIqrtx24ky1ru+tojPEe6XR0aO3dubbkP+ZVfsAVVNBhh3Rb78AAAAASUVORK5C
|
|
||||||
YII=
|
|
||||||
}
|
|
||||||
image create photo close_10x10 -data {
|
|
||||||
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAABhGlDQ1BJQ0MgcHJvZmlsZQAAKJF9
|
|
||||||
kT1Iw1AUhU9TpaIVBzuIdMhQnSyIFXHUKhShQqgVWnUweekfNDEkKS6OgmvBwZ/FqoOLs64OroIg
|
|
||||||
+APi6OSk6CIl3pcUWsT44PI+znvncN99gNCoMs3qGgc03TYzqaSYy6+IoVeE0EcVRUJmljErSWn4
|
|
||||||
rq97BPh+F+dZ/vf+XP1qwWJAQCSeYYZpE68TT23aBud94ggryyrxOfGYSQ0SP3Jd8fiNc8llgWdG
|
|
||||||
zGxmjjhCLJY6WOlgVjY14knimKrplC/kPFY5b3HWqjXW6pO/MFzQl5e4ThVFCgtYhAQRCmqooAob
|
|
||||||
cdp1Uixk6Dzp4x92/RK5FHJVwMgxjw1okF0/+B/8nq1VTEx4SeEk0P3iOB8jQGgXaNYd5/vYcZon
|
|
||||||
QPAZuNLb/o0GMP1Jer2txY6AgW3g4rqtKXvA5Q4w9GTIpuxKQSqhWATez+ib8sDgLdC76s2tdY7T
|
|
||||||
ByBLs0rfAAeHwGiJstd83t3TObd/77Tm9wNyw3KnzSNOGAAAAAZiS0dEAJ8AMACxMhhtNAAAAAlw
|
|
||||||
SFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+YHCww2COc16Q0AAAAZdEVYdENvbW1lbnQAQ3JlYXRl
|
|
||||||
ZCB3aXRoIEdJTVBXgQ4XAAAARElEQVQY05WPwQ0AIAgDr2zNBIytLxPToNE+j9KCMnMAVJVotObh
|
|
||||||
oDMByMFKdqZb4r6oU5XfHTzqr/rpmc7UtcTJ5GwCGLsw4txYqA4AAAAASUVORK5CYII=
|
|
||||||
}
|
|
64
debian/projman/usr/share/projman/lib/menu.tcl
vendored
|
@ -1,64 +0,0 @@
|
||||||
#!/usr/bin/wish
|
|
||||||
######################################################
|
|
||||||
# ProjMan 2
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svk.ru
|
|
||||||
# Copyright (c) "", 2022, https://nuk-svk.ru
|
|
||||||
######################################################
|
|
||||||
# Generate menu module
|
|
||||||
######################################################
|
|
||||||
|
|
||||||
proc GetFileMenu {m} {
|
|
||||||
$m add command -label [::msgcat::mc "New file"] -command Editor::New\
|
|
||||||
-accelerator "Ctrl+N"
|
|
||||||
$m add command -label [::msgcat::mc "Open file"] -accelerator "Ctrl+O" -command {
|
|
||||||
set filePath [FileOper::OpenDialog]
|
|
||||||
if {$filePath != ""} {
|
|
||||||
FileOper::Edit $filePath
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$m add command -label [::msgcat::mc "Open folder"] -accelerator "Ctrl+K" -command {
|
|
||||||
set folderPath [FileOper::OpenFolderDialog]
|
|
||||||
if {$folderPath != ""} {
|
|
||||||
FileOper::ReadFolder $folderPath
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$m add command -label [::msgcat::mc "Save file"] -command {FileOper::Save}\
|
|
||||||
-accelerator "Ctrl+S"
|
|
||||||
#$m add command -label [::msgcat::mc "Open"] -command {FileDialog $tree open}\
|
|
||||||
#-font $fontNormal -accelerator "Ctrl+O" -state disable
|
|
||||||
$m add separator
|
|
||||||
$m add command -label [::msgcat::mc "Exit"] -command Quit -accelerator "Ctrl+Q"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
proc GetEditMenu {m} {
|
|
||||||
$m add command -label [::msgcat::mc "Undo"] -command Undo\
|
|
||||||
-accelerator "Ctrl+Z"
|
|
||||||
$m add command -label [::msgcat::mc "Redo"] -command Redo\
|
|
||||||
-accelerator "Ctrl+Y"
|
|
||||||
$m add separator
|
|
||||||
$m add command -label [::msgcat::mc "Copy"] -command Copy\
|
|
||||||
-accelerator "Ctrl+C"
|
|
||||||
$m add command -label [::msgcat::mc "Paste"] -command Paste\
|
|
||||||
-accelerator "Ctrl+V"
|
|
||||||
$m add command -label [::msgcat::mc "Cut"] -command Cut\
|
|
||||||
-accelerator "Ctrl+Z"
|
|
||||||
$m add separator
|
|
||||||
$m add command -label [::msgcat::mc "Find"] -command Find\
|
|
||||||
-accelerator "Ctrl+F"
|
|
||||||
$m add command -label [::msgcat::mc "Replace"] -command Replace\
|
|
||||||
-accelerator "Ctrl+R"
|
|
||||||
$m add separator
|
|
||||||
$m add command -label [::msgcat::mc "Find in files"] -command File::Find\
|
|
||||||
-accelerator "Ctrl+Shift+F"
|
|
||||||
$m add command -label [::msgcat::mc "Replace in files"] -command File::Replace\
|
|
||||||
-accelerator "Ctrl+Shift+RV"
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
proc GetViewMenu {m} {
|
|
||||||
$m add command -label [::msgcat::mc "View files tree"] -command ViewFilesTree
|
|
||||||
$m add command -label [::msgcat::mc "View line numbers"] -command ViewLineNumbers
|
|
||||||
}
|
|
||||||
|
|
133
debian/projman/usr/share/projman/lib/msgs/de.msg
vendored
|
@ -1,133 +0,0 @@
|
||||||
###########################################################
|
|
||||||
# Tcl/Tk Project Manager #
|
|
||||||
# Copyright (c) "Sergey Kalinin", 2001, http://nuk-svk.ru #
|
|
||||||
# Author: Sergey Kalinin banzaj28@yandex.ru #
|
|
||||||
###########################################################
|
|
||||||
# german messages file #
|
|
||||||
# Author: Roman Schaller <r.schaller@gmx.ch> #
|
|
||||||
###########################################################
|
|
||||||
|
|
||||||
::msgcat::mcset de "About ..." "Über ..."
|
|
||||||
::msgcat::mcset de "Add to project" "Zu Projekt hinzufügen"
|
|
||||||
::msgcat::mcset de "Author" "Autor"
|
|
||||||
::msgcat::mcset de "Text autoformat" "Text autoformat"
|
|
||||||
::msgcat::mcset de "Cancel" "Abbrechen"
|
|
||||||
::msgcat::mcset de "Can't found file:" "Datei nicht gefunden:"
|
|
||||||
::msgcat::mcset de "Close" "Schliessen"
|
|
||||||
::msgcat::mcset de "Close all" "Alles Schliessen"
|
|
||||||
::msgcat::mcset de "Close Project Manager?" "Project Manager Schliessen?"
|
|
||||||
::msgcat::mcset de "Company" "Firma"
|
|
||||||
::msgcat::mcset de "Contents" "Inhalt"
|
|
||||||
::msgcat::mcset de "Copy" "Kopieren"
|
|
||||||
::msgcat::mcset de "Copy into clipboard" "In Zwischenablage kopieren"
|
|
||||||
::msgcat::mcset de "Create backup files" "Backup-Dateien erstellen"
|
|
||||||
::msgcat::mcset de "Create new project" "Neuse Projekt erstellen"
|
|
||||||
::msgcat::mcset de "Create new file" "Neue Datei erstellen"
|
|
||||||
::msgcat::mcset de "Create directory" "Verzeichnis erstelle"
|
|
||||||
::msgcat::mcset de "Curent directory" "Aktuelles Verzeichnis"
|
|
||||||
::msgcat::mcset de "Cut" "Ausschneiden"
|
|
||||||
::msgcat::mcset de "Cut into clipboard" "In Zwischenablage ausschneiden"
|
|
||||||
::msgcat::mcset de "CVS commit"
|
|
||||||
::msgcat::mcset de "CVS update"
|
|
||||||
::msgcat::mcset de "Delete" "Löschen"
|
|
||||||
::msgcat::mcset de "Delete backup files" "Backup-Dateien löschen"
|
|
||||||
::msgcat::mcset de "Delete project" "Projekt löschen"
|
|
||||||
::msgcat::mcset de "Delete from project" "Von Projekt entfernen"
|
|
||||||
::msgcat::mcset de "Docs dir" "Dok Verzeichnis"
|
|
||||||
::msgcat::mcset de "Don't selected file"
|
|
||||||
::msgcat::mcset de "E-mail"
|
|
||||||
::msgcat::mcset de "Edit" "Bearbeiten"
|
|
||||||
::msgcat::mcset de "Editor font" "Editor Schriftart"
|
|
||||||
::msgcat::mcset de "Editor font bold Editor Schriftart fett"
|
|
||||||
::msgcat::mcset de "Error open URL"
|
|
||||||
::msgcat::mcset de "Exit" "Beenden"
|
|
||||||
::msgcat::mcset de "File" "Datei"
|
|
||||||
::msgcat::mcset de "File already exists. Overwrite?" "Datei besteht bereits. Überschreiben?"
|
|
||||||
::msgcat::mcset de "File modify" "Datei bearbeiten"
|
|
||||||
::msgcat::mcset de "File was modifyed. Close?" "Datei wurde geändert. Trotzdem schliessen?"
|
|
||||||
::msgcat::mcset de "File was modifyed. Save?" "Datei wurde geändert. Jetzt speichern?"
|
|
||||||
::msgcat::mcset de "File saved" "Datei gespeichert"
|
|
||||||
::msgcat::mcset de "Find" "Suchen"
|
|
||||||
::msgcat::mcset de "Font normal" "Schrift normal"
|
|
||||||
::msgcat::mcset de "Font bold" "Schrift fett"
|
|
||||||
::msgcat::mcset de "Goto line" "Gehezu Zeile"
|
|
||||||
::msgcat::mcset de "Help" "Hilfe"
|
|
||||||
::msgcat::mcset de "Home dir" "Home Verzeichnis"
|
|
||||||
::msgcat::mcset de "Home page" "Homepage"
|
|
||||||
::msgcat::mcset de "Image dir" "Image Verzeichnis"
|
|
||||||
::msgcat::mcset de "Insert" "Einfügen"
|
|
||||||
::msgcat::mcset de "Interface language" "Interface Sprache"
|
|
||||||
::msgcat::mcset de "Install Tcl/Tk Project Manager" "Tcl/Tk Project Manager installieren"
|
|
||||||
::msgcat::mcset de "Line number" "Zeilennummer"
|
|
||||||
::msgcat::mcset de "Make RPM" "RPM erstellen"
|
|
||||||
::msgcat::mcset de "Make archive" "Archiv erstellen"
|
|
||||||
::msgcat::mcset de "Make backup files" "Backup-Dateien erstellen"
|
|
||||||
::msgcat::mcset de "Must be one file select!" "Eine Datei muss ausgewählt sein!"
|
|
||||||
::msgcat::mcset de "Must be one or two file select!" "Eine oder zwei Dateien müssen ausgewählt sein!"
|
|
||||||
::msgcat::mcset de "Modifying the Registry..."
|
|
||||||
::msgcat::mcset de "Modules" "Module"
|
|
||||||
::msgcat::mcset de "New" "Neu"
|
|
||||||
::msgcat::mcset de "New file" "Neue Datei"
|
|
||||||
::msgcat::mcset de "New project" "Neues Projekt"
|
|
||||||
::msgcat::mcset de "Not implemented yet" "Noch nicht implementiert"
|
|
||||||
::msgcat::mcset de "Not found active project" "Kein aktives Projekt gefunden"
|
|
||||||
::msgcat::mcset de "Open" "Öffnen"
|
|
||||||
::msgcat::mcset de "Open file" "Datei öffnen"
|
|
||||||
::msgcat::mcset de "Open project" "Projekt öffnen"
|
|
||||||
::msgcat::mcset de "Opened file in progress" "Geöffnete Datei in Bearbeitung"
|
|
||||||
::msgcat::mcset de "Overwrite" "Überschreiben"
|
|
||||||
::msgcat::mcset de "Paste" "Einfügen"
|
|
||||||
::msgcat::mcset de "Paste from clipboard" "Von Zwischenablage einfügen"
|
|
||||||
::msgcat::mcset de "Print ..." "Drucken ..."
|
|
||||||
::msgcat::mcset de "Print" "Drucken"
|
|
||||||
::msgcat::mcset de "Print command" "Druck-Befehl"
|
|
||||||
::msgcat::mcset de "Print selected text" "Markierter Text drucken"
|
|
||||||
::msgcat::mcset de "Program finished successfully" "Programm wurde erfolgreich beendet"
|
|
||||||
::msgcat::mcset de "Program failed" "Ausführung fehlgeschlagen"
|
|
||||||
::msgcat::mcset de "Programm output" "Programm Ausgabe"
|
|
||||||
::msgcat::mcset de "Project" "Projekt"
|
|
||||||
::msgcat::mcset de "Projects" "Projekte"
|
|
||||||
::msgcat::mcset de "Project settings" "Projekt einstellungen"
|
|
||||||
::msgcat::mcset de "Project name" "Projekt-Name"
|
|
||||||
::msgcat::mcset de "Project file" "Projekt-Datei"
|
|
||||||
::msgcat::mcset de "Project dir" "Projekt-Verzeichnis"
|
|
||||||
::msgcat::mcset de "Question" "Frage"
|
|
||||||
::msgcat::mcset de "Quit without saving?" "Beenden ohne zu speichern?"
|
|
||||||
::msgcat::mcset de "Redo" "Wiederherstellen"
|
|
||||||
::msgcat::mcset de "Refresh" "Auffrischen"
|
|
||||||
::msgcat::mcset de "Replace" "Ersetzen"
|
|
||||||
::msgcat::mcset de "Replace with" "Ersetzen mit"
|
|
||||||
::msgcat::mcset de "Replace all" "Alles ersetzen"
|
|
||||||
::msgcat::mcset de "Release"
|
|
||||||
::msgcat::mcset de "RPM dir" "RPM Verzeichnis"
|
|
||||||
::msgcat::mcset de "RPM file mask" "RPM Datei Maske"
|
|
||||||
::msgcat::mcset de "Run" "Ausführen"
|
|
||||||
::msgcat::mcset de "Running project" "Projekt ausführen"
|
|
||||||
::msgcat::mcset de "Running file"
|
|
||||||
::msgcat::mcset de "Save" "Speichern"
|
|
||||||
::msgcat::mcset de "Save as" "Speichern unter"
|
|
||||||
::msgcat::mcset de "Save file" "Datei speichern"
|
|
||||||
::msgcat::mcset de "Save file as" "Datei speichern unter"
|
|
||||||
::msgcat::mcset de "Save all" "Alles speichern"
|
|
||||||
::msgcat::mcset de "Search" "Suchen"
|
|
||||||
::msgcat::mcset de "Select" "Auswählen"
|
|
||||||
::msgcat::mcset de "Select directory" "Verzeichnis auswählen"
|
|
||||||
::msgcat::mcset de "Selected directory" "Ausgewähltes Verzeichnis"
|
|
||||||
::msgcat::mcset de "Settings" "Einstellungen"
|
|
||||||
::msgcat::mcset de "Show backup files" "Backup-Dateien anzeigen"
|
|
||||||
::msgcat::mcset de "Interpretator" "Interpreter"
|
|
||||||
::msgcat::mcset de "TGZ dir" "TGZ Verzeichnis"
|
|
||||||
::msgcat::mcset de "TGZ file mask" "TGZ Datei Maske"
|
|
||||||
::msgcat::mcset de "Thanks" "Danksagung"
|
|
||||||
::msgcat::mcset de "Toolbar" "Symbolleiste"
|
|
||||||
::msgcat::mcset de "Undo" "Rückgängig"
|
|
||||||
::msgcat::mcset de "Update"
|
|
||||||
::msgcat::mcset de "Version"
|
|
||||||
::msgcat::mcset de "View" "Ansicht"
|
|
||||||
::msgcat::mcset de "Warning" "Warnung"
|
|
||||||
::msgcat::mcset de "Was replacement"
|
|
||||||
::msgcat::mcset de "Work dir" "Arbeitsverzeichnis"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
188
debian/projman/usr/share/projman/lib/msgs/en.msg
vendored
|
@ -1,188 +0,0 @@
|
||||||
###########################################################
|
|
||||||
# Tcl/Tk Project Manager #
|
|
||||||
# english messages file #
|
|
||||||
# Copyright (c) "Sergey Kalinin", 2001, http://nuk-svk.ru #
|
|
||||||
# Author: Sergey Kalinin banzaj28@yandex.ru #
|
|
||||||
###########################################################
|
|
||||||
|
|
||||||
::msgcat::mcset en "About ..."
|
|
||||||
::msgcat::mcset en "Add as new project"
|
|
||||||
::msgcat::mcset en "Add to existing project"
|
|
||||||
::msgcat::mcset en "Add to project"
|
|
||||||
::msgcat::mcset en "Archive dir"
|
|
||||||
::msgcat::mcset en "Archive file mask"
|
|
||||||
::msgcat::mcset en "Author"
|
|
||||||
::msgcat::mcset en "Braces"
|
|
||||||
::msgcat::mcset en "Quad braces"
|
|
||||||
::msgcat::mcset en "Braces background"
|
|
||||||
::msgcat::mcset en "Braces foreground"
|
|
||||||
::msgcat::mcset en "Cancel"
|
|
||||||
::msgcat::mcset en "Can't found file:"
|
|
||||||
::msgcat::mcset en "Close"
|
|
||||||
::msgcat::mcset en "Close all"
|
|
||||||
::msgcat::mcset en "Close Project Manager?"
|
|
||||||
::msgcat::mcset en "Comments"
|
|
||||||
::msgcat::mcset en "Comment selected"
|
|
||||||
::msgcat::mcset en "Uncomment selected"
|
|
||||||
::msgcat::mcset en "Company"
|
|
||||||
::msgcat::mcset en "Compiler"
|
|
||||||
::msgcat::mcset en "Compile"
|
|
||||||
::msgcat::mcset en "Compile project"
|
|
||||||
::msgcat::mcset en "Compile file"
|
|
||||||
::msgcat::mcset en "Contents"
|
|
||||||
::msgcat::mcset en "Copy"
|
|
||||||
::msgcat::mcset en "Copy into clipboard"
|
|
||||||
::msgcat::mcset en "Create backup files"
|
|
||||||
::msgcat::mcset en "Create new project"
|
|
||||||
::msgcat::mcset en "Create new file"
|
|
||||||
::msgcat::mcset en "Create directory"
|
|
||||||
::msgcat::mcset en "Curent directory"
|
|
||||||
::msgcat::mcset en "Cut"
|
|
||||||
::msgcat::mcset en "Cut into clipboard"
|
|
||||||
::msgcat::mcset en "CVS commit"
|
|
||||||
::msgcat::mcset en "CVS update"
|
|
||||||
::msgcat::mcset en "Delete"
|
|
||||||
::msgcat::mcset en "Delete backup files"
|
|
||||||
::msgcat::mcset en "Delete project"
|
|
||||||
::msgcat::mc "with all files"
|
|
||||||
::msgcat::mc "If press \"Yes\" will deleted all files!"
|
|
||||||
::msgcat::mc "If press \"No\" will deleted only proj-file"
|
|
||||||
::msgcat::mcset en "Delete from project"
|
|
||||||
::msgcat::mcset en "Docs dir"
|
|
||||||
::msgcat::mcset en "Don't selected file"
|
|
||||||
::msgcat::mcset en "E-mail"
|
|
||||||
::msgcat::mcset en "Edit"
|
|
||||||
::msgcat::mcset en "Editor"
|
|
||||||
::msgcat::mcset en "Editor background"
|
|
||||||
::msgcat::mcset en "Editor foreground"
|
|
||||||
::msgcat::mcset en "Editor font"
|
|
||||||
::msgcat::mcset en "Editor font bold"
|
|
||||||
::msgcat::mcset en "Error open URL"
|
|
||||||
::msgcat::mcset en "Editor settings"
|
|
||||||
::msgcat::mcset en "Exit"
|
|
||||||
::msgcat::mcset en "File"
|
|
||||||
::msgcat::mcset en "File already exists. Overwrite?"
|
|
||||||
::msgcat::mcset en "File modify"
|
|
||||||
::msgcat::mcset en "File was modifyed. Close?"
|
|
||||||
::msgcat::mcset en "File was modifyed. Save?"
|
|
||||||
::msgcat::mcset en "File saved"
|
|
||||||
::msgcat::mcset en "Files"
|
|
||||||
::msgcat::mcset en "Find"
|
|
||||||
::msgcat::mcset en "Font normal"
|
|
||||||
::msgcat::mcset en "Font bold"
|
|
||||||
::msgcat::mcset en "FTP server"
|
|
||||||
::msgcat::mcset en "FTP user"
|
|
||||||
::msgcat::mcset en "FTP password"
|
|
||||||
::msgcat::mcset en "Goto line"
|
|
||||||
::msgcat::mcset en "Help"
|
|
||||||
::msgcat::mcset en "Home dir"
|
|
||||||
::msgcat::mcset en "Home page"
|
|
||||||
::msgcat::mcset en "Image dir"
|
|
||||||
::msgcat::mcset en "Indent foreground"
|
|
||||||
::msgcat::mcset en "Indent background"
|
|
||||||
::msgcat::mcset en "Interface language"
|
|
||||||
::msgcat::mcset en "Insert image"
|
|
||||||
::msgcat::mcset en "Install Tcl/Tk Project Manager"
|
|
||||||
::msgcat::mcset en "Input file name"
|
|
||||||
::msgcat::mcset en "Key bindings"
|
|
||||||
::msgcat::mcset en "Label"
|
|
||||||
::msgcat::mcset en "Language"
|
|
||||||
::msgcat::mcset en "Line number"
|
|
||||||
::msgcat::mcset en "Main"
|
|
||||||
::msgcat::mcset en "Make RPM"
|
|
||||||
::msgcat::mcset en "Make archive"
|
|
||||||
::msgcat::mcset en "Make backup files"
|
|
||||||
::msgcat::mcset en "Main settings"
|
|
||||||
::msgcat::mcset en "Modifying the Registry..."
|
|
||||||
::msgcat::mcset en "Must be one file select!"
|
|
||||||
::msgcat::mcset en "Must be one or two file select!"
|
|
||||||
::msgcat::mcset en "Modules"
|
|
||||||
::msgcat::mcset en "Network"
|
|
||||||
::msgcat::mcset en "New"
|
|
||||||
::msgcat::mcset en "New directory"
|
|
||||||
::msgcat::mcset en "New file"
|
|
||||||
::msgcat::mcset en "New project"
|
|
||||||
::msgcat::mcset en "Not implemented yet"
|
|
||||||
::msgcat::mcset en "Not found active project"
|
|
||||||
::msgcat::mcset en "Open"
|
|
||||||
::msgcat::mcset en "Open file"
|
|
||||||
::msgcat::mcset en "Open project"
|
|
||||||
::msgcat::mcset en "Opened file in progress"
|
|
||||||
::msgcat::mcset en "Operators"
|
|
||||||
::msgcat::mcset en "Overwrite"
|
|
||||||
::msgcat::mcset en "Parameters"
|
|
||||||
::msgcat::mcset en "Subparameters"
|
|
||||||
::msgcat::mcset en "Paste"
|
|
||||||
::msgcat::mcset en "Paste from clipboard"
|
|
||||||
::msgcat::mcset en "Percent"
|
|
||||||
::msgcat::mcset en "Print ..."
|
|
||||||
::msgcat::mcset en "Print"
|
|
||||||
::msgcat::mcset en "Print command"
|
|
||||||
::msgcat::mcset en "Print selected text"
|
|
||||||
::msgcat::mcset en "Program finished successfully"
|
|
||||||
::msgcat::mcset en "Procedure name"
|
|
||||||
::msgcat::mcset en "Procedure name complit"
|
|
||||||
::msgcat::mcset en "Program failed"
|
|
||||||
::msgcat::mcset en "Programm output"
|
|
||||||
::msgcat::mcset en "Project"
|
|
||||||
::msgcat::mcset en "Projects"
|
|
||||||
::msgcat::mcset en "Project settings"
|
|
||||||
::msgcat::mcset en "Project name"
|
|
||||||
::msgcat::mcset en "Project file"
|
|
||||||
::msgcat::mcset en "Project dir"
|
|
||||||
::msgcat::mcset en "Project type"
|
|
||||||
::msgcat::mcset en "Question"
|
|
||||||
::msgcat::mcset en "Quit without saving?"
|
|
||||||
::msgcat::mcset en "Quote string"
|
|
||||||
::msgcat::mcset en "Redo"
|
|
||||||
::msgcat::mcset en "Refresh"
|
|
||||||
::msgcat::mcset en "Replace"
|
|
||||||
::msgcat::mcset en "Replace with"
|
|
||||||
::msgcat::mcset en "Replace all"
|
|
||||||
::msgcat::mcset en "Release"
|
|
||||||
::msgcat::mcset en "RPM directory"
|
|
||||||
::msgcat::mcset en "RPM file mask"
|
|
||||||
::msgcat::mcset en "Run"
|
|
||||||
::msgcat::mcset en "Running project"
|
|
||||||
::msgcat::mcset en "Running file"
|
|
||||||
::msgcat::mcset en "Run file"
|
|
||||||
::msgcat::mcset en "Save"
|
|
||||||
::msgcat::mcset en "Save as"
|
|
||||||
::msgcat::mcset en "Save file"
|
|
||||||
::msgcat::mcset en "Save file as"
|
|
||||||
::msgcat::mcset en "Save all"
|
|
||||||
::msgcat::mcset en "Search"
|
|
||||||
::msgcat::mcset en "Select"
|
|
||||||
::msgcat::mcset en "Select all"
|
|
||||||
::msgcat::mcset en "Select directory"
|
|
||||||
::msgcat::mcset en "Selected directory"
|
|
||||||
::msgcat::mcset en "Selection color"
|
|
||||||
::msgcat::mcset en "Settings"
|
|
||||||
::msgcat::mcset en "Show backup files"
|
|
||||||
::msgcat::mcset en "Show dot files"
|
|
||||||
::msgcat::mcset en "Show the Menu"
|
|
||||||
::msgcat::mcset en "Split edit window"
|
|
||||||
::msgcat::mcset en "SQL commands"
|
|
||||||
::msgcat::mcset en "Interpretator"
|
|
||||||
::msgcat::mcset en "Text autoformat"
|
|
||||||
::msgcat::mcset en "Thanks"
|
|
||||||
::msgcat::mcset en "Title normal"
|
|
||||||
::msgcat::mcset en "Title modify"
|
|
||||||
::msgcat::mcset en "Toolbar"
|
|
||||||
::msgcat::mcset en "Undo"
|
|
||||||
::msgcat::mcset en "Update"
|
|
||||||
::msgcat::mcset en "Variables"
|
|
||||||
::msgcat::mcset en "Version"
|
|
||||||
::msgcat::mcset en "View"
|
|
||||||
::msgcat::mcset en "Warning"
|
|
||||||
::msgcat::mcset en "Was replacement"
|
|
||||||
::msgcat::mcset en "Word wrapping"
|
|
||||||
::msgcat::mcset en "Work dir"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
135
debian/projman/usr/share/projman/lib/msgs/fr.msg
vendored
|
@ -1,135 +0,0 @@
|
||||||
###########################################################
|
|
||||||
# Tcl/Tk Project Manager #
|
|
||||||
# french messages file #
|
|
||||||
# Copyright (c) "Sergey Kalinin", 2001, http://nuk-svk.ru #
|
|
||||||
# Author: Sergey Kalinin banzaj28@yandex.ru #
|
|
||||||
# Traduction: Michel SALVAGNIAC michel.salvagniac@free.fr #
|
|
||||||
###########################################################
|
|
||||||
# french messages file #
|
|
||||||
# Author: Michel SALVAGNIAC <michel.salvagniac@free.fr> #
|
|
||||||
###########################################################
|
|
||||||
|
|
||||||
::msgcat::mcset fr "About ..." "A propos..."
|
|
||||||
::msgcat::mcset fr "Add to project" "Ajouter au projet"
|
|
||||||
::msgcat::mcset fr "Author" "Auteur"
|
|
||||||
::msgcat::mcset fr "Text autoformat" "Autoformatage du texte"
|
|
||||||
::msgcat::mcset fr "Cancel" "Annuler"
|
|
||||||
::msgcat::mcset fr "Can't found file:" "Ne peut trouver le fichier:"
|
|
||||||
::msgcat::mcset fr "Close" "Fermer"
|
|
||||||
::msgcat::mcset fr "Close all" "Tout fermer"
|
|
||||||
::msgcat::mcset fr "Close Project Manager?" "Fermer Project Manager?"
|
|
||||||
::msgcat::mcset fr "Company" "Compagnie"
|
|
||||||
::msgcat::mcset fr "Contents" "Contenu"
|
|
||||||
::msgcat::mcset fr "Copy" "Copier"
|
|
||||||
::msgcat::mcset fr "Copy into clipboard" "Copier dans le Presse-papiers"
|
|
||||||
::msgcat::mcset fr "Create backup files" "Créer une copie de sauvegarde"
|
|
||||||
::msgcat::mcset fr "Create new project" "Créer nouveau projet"
|
|
||||||
::msgcat::mcset fr "Create new file" "Créer nouveau fichier"
|
|
||||||
::msgcat::mcset fr "Create directory" "Créer répertoire"
|
|
||||||
::msgcat::mcset fr "Curent directory" "Répertoire courant"
|
|
||||||
::msgcat::mcset fr "Cut" "Couper"
|
|
||||||
::msgcat::mcset fr "Cut into clipboard" "Couper dans le Presse-papiers"
|
|
||||||
::msgcat::mcset fr "CVS commit" "Ecriture CVS"
|
|
||||||
::msgcat::mcset fr "CVS update" "Mise à jour CVS"
|
|
||||||
::msgcat::mcset fr "Delete" "Effacer"
|
|
||||||
::msgcat::mcset fr "Delete backup files" "Effacer les fichiers de sauvegarde"
|
|
||||||
::msgcat::mcset fr "Delete project" "Effacer projet"
|
|
||||||
::msgcat::mcset fr "Delete from project" "Effacer du projet"
|
|
||||||
::msgcat::mcset fr "Docs dir" "Répertoire de la doc"
|
|
||||||
::msgcat::mcset fr "Don't selected file" "Fichier non sélectionné"
|
|
||||||
::msgcat::mcset fr "E-mail" "E-mail"
|
|
||||||
::msgcat::mcset fr "Edit" "Editer"
|
|
||||||
::msgcat::mcset fr "Editor font" "Police"
|
|
||||||
::msgcat::mcset fr "Editor font bold" "Police gras"
|
|
||||||
::msgcat::mcset fr "Error open URL" "Erreur à l'ouverture de l'URL"
|
|
||||||
::msgcat::mcset fr "Exit" "Quitter"
|
|
||||||
::msgcat::mcset fr "File" "Fichier"
|
|
||||||
::msgcat::mcset fr "File already exists. Overwrite?" "Le fichier existe déja. Ecraser?"
|
|
||||||
::msgcat::mcset fr "File modify" "Modification de fichier"
|
|
||||||
::msgcat::mcset fr "File was modifyed. Close?" "Le fichier a été modifié. Fermer?"
|
|
||||||
::msgcat::mcset fr "File was modifyed. Save?" "Le fichier a été modifié. Enregistrer?"
|
|
||||||
::msgcat::mcset fr "File saved" "Fichier enregistré"
|
|
||||||
::msgcat::mcset fr "Find" "Trouver"
|
|
||||||
::msgcat::mcset fr "Font normal" "Police normale"
|
|
||||||
::msgcat::mcset fr "Font bold" "Police grasse"
|
|
||||||
::msgcat::mcset fr "Goto line" "Aller à la ligne"
|
|
||||||
::msgcat::mcset fr "Help" "Aide"
|
|
||||||
::msgcat::mcset fr "Home dir" "Répertoire Home"
|
|
||||||
::msgcat::mcset fr "Home page" "Page d'accueil"
|
|
||||||
::msgcat::mcset fr "Image dir" "Répertoire des images"
|
|
||||||
::msgcat::mcset fr "Insert" "Insérer"
|
|
||||||
::msgcat::mcset fr "Interface language" "Langage d'interface"
|
|
||||||
::msgcat::mcset fr "Install Tcl/Tk Project Manager" "Installer Tcl/Tk Project Manager"
|
|
||||||
::msgcat::mcset fr "Line number" "Ligne numéro"
|
|
||||||
::msgcat::mcset fr "Make RPM" "Construire RPM"
|
|
||||||
::msgcat::mcset fr "Make archive" "Construire archive"
|
|
||||||
::msgcat::mcset fr "Make backup files" "Faire des sauvegardes"
|
|
||||||
::msgcat::mcset fr "Must be one file select!" "Vous devez choisir un fichier!"
|
|
||||||
::msgcat::mcset fr "Must be one or two file select!" "Vous devez choisir un ou deux fichiers!"
|
|
||||||
::msgcat::mcset fr "Modifying the Registry..."
|
|
||||||
::msgcat::mcset fr "Modules" "Modules"
|
|
||||||
::msgcat::mcset fr "New" "Nouveau"
|
|
||||||
::msgcat::mcset fr "New file" "Nouveau fichier"
|
|
||||||
::msgcat::mcset fr "New project" "Nouveau projet"
|
|
||||||
::msgcat::mcset fr "Not implemented yet" "Pas encore implémenté..."
|
|
||||||
::msgcat::mcset fr "Not found active project" "Pas de projet actif"
|
|
||||||
::msgcat::mcset fr "Open" "Ouvrir"
|
|
||||||
::msgcat::mcset fr "Open file" "Ouvrir fichier"
|
|
||||||
::msgcat::mcset fr "Open project" "Ouvrir projet"
|
|
||||||
::msgcat::mcset fr "Opened file in progress" "Ouverture en cours"
|
|
||||||
::msgcat::mcset fr "Overwrite" "Ecraser"
|
|
||||||
::msgcat::mcset fr "Paste" "Coller"
|
|
||||||
::msgcat::mcset fr "Paste from clipboard" "Coller du Presse-papiers"
|
|
||||||
::msgcat::mcset fr "Print ..." "Imprimer..."
|
|
||||||
::msgcat::mcset fr "Print" "Imprimer"
|
|
||||||
::msgcat::mcset fr "Print command" "Commande d'impression"
|
|
||||||
::msgcat::mcset fr "Print selected text" "Imprimer le texte sélectionné"
|
|
||||||
::msgcat::mcset fr "Program finished successfully" "Programme terminé avec succès"
|
|
||||||
::msgcat::mcset fr "Program failed" "Programme a échoué"
|
|
||||||
::msgcat::mcset fr "Programm output" "Sortie du programme"
|
|
||||||
::msgcat::mcset fr "Project" "Projet"
|
|
||||||
::msgcat::mcset fr "Projects" "Projets"
|
|
||||||
::msgcat::mcset fr "Project settings" "Réglages du projet"
|
|
||||||
::msgcat::mcset fr "Project name" "Nom du projet"
|
|
||||||
::msgcat::mcset fr "Project file" "Fichier projet"
|
|
||||||
::msgcat::mcset fr "Project dir" "Répertoire du projet"
|
|
||||||
::msgcat::mcset fr "Question" "Question"
|
|
||||||
::msgcat::mcset fr "Quit without saving?" "Quitter sans sauvegarder?"
|
|
||||||
::msgcat::mcset fr "Redo" "Refaire"
|
|
||||||
::msgcat::mcset fr "Refresh" "Rafraichir"
|
|
||||||
::msgcat::mcset fr "Releace" "Remplacer"
|
|
||||||
::msgcat::mcset fr "Replace with" "Remplacer avec"
|
|
||||||
::msgcat::mcset fr "Replace all" "Remplacer tout"
|
|
||||||
::msgcat::mcset fr "Release" "Révision"
|
|
||||||
::msgcat::mcset fr "RPM dir" "Répertoire RPM"
|
|
||||||
::msgcat::mcset fr "RPM file mask" "fichiers RPM"
|
|
||||||
::msgcat::mcset fr "Run" "Executer"
|
|
||||||
::msgcat::mcset fr "Running project" "Exécute le projet"
|
|
||||||
::msgcat::mcset fr "Save" "Enregistrer"
|
|
||||||
::msgcat::mcset fr "Save as" "Enregistrer sous"
|
|
||||||
::msgcat::mcset fr "Save file" "Enregistrer fichier"
|
|
||||||
::msgcat::mcset fr "Save file as" "Enregistrer fichier sous"
|
|
||||||
::msgcat::mcset fr "Save all" "Tout enregistrer"
|
|
||||||
::msgcat::mcset fr "Search" "Rechercher"
|
|
||||||
::msgcat::mcset fr "Select" "Choisir"
|
|
||||||
::msgcat::mcset fr "Select directory" "Choisir un répertoire"
|
|
||||||
::msgcat::mcset fr "Selected directory" "Répertoire choisi"
|
|
||||||
::msgcat::mcset fr "Settings" "Paramètres"
|
|
||||||
::msgcat::mcset fr "Show backup files" "Montrer fichiers de sauvegarde"
|
|
||||||
::msgcat::mcset fr "Interpretator" "Interpréteur"
|
|
||||||
::msgcat::mcset fr "TGZ dir" "Répertoire TGZ"
|
|
||||||
::msgcat::mcset fr "TGZ file mask" "fichiers TGZ"
|
|
||||||
::msgcat::mcset fr "Thanks" "Remerciements"
|
|
||||||
::msgcat::mcset fr "Toolbar" "Barre d'outils"
|
|
||||||
::msgcat::mcset fr "Undo" "Défaire"
|
|
||||||
::msgcat::mcset fr "Update" "Mise à jour"
|
|
||||||
::msgcat::mcset fr "Version" "Version"
|
|
||||||
::msgcat::mcset fr "View" "Vue"
|
|
||||||
::msgcat::mcset fr "Warning" "Avertissement"
|
|
||||||
::msgcat::mcset fr "Was replacement" "A été remplacé"
|
|
||||||
::msgcat::mcset fr "Work dir" "Répertoire de travail"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
192
debian/projman/usr/share/projman/lib/msgs/ru.msg
vendored
|
@ -1,192 +0,0 @@
|
||||||
###########################################################
|
|
||||||
# Tcl/Tk Project Manager #
|
|
||||||
# russian messages file #
|
|
||||||
# Copyright (c) "Sergey Kalinin", 2001, http://nuk-svk.ru #
|
|
||||||
# Author: Sergey Kalinin banzaj28@yandex.ru #
|
|
||||||
###########################################################
|
|
||||||
|
|
||||||
::msgcat::mcset ru "About ..." "О программе"
|
|
||||||
::msgcat::mcset ru "Add as new project" "Добавить как Новый Проект"
|
|
||||||
::msgcat::mcset ru "Add to existing project" "Добавить в существующий проект"
|
|
||||||
::msgcat::mcset ru "Add to project" "Добавить в проект"
|
|
||||||
::msgcat::mcset ru "Archive created in" "Архив помещен в"
|
|
||||||
::msgcat::mcset ru "Archive directory" "Каталог c архивами"
|
|
||||||
::msgcat::mcset ru "Archive file mask" "Маска архива"
|
|
||||||
::msgcat::mcset ru "Author" "Автор"
|
|
||||||
::msgcat::mcset ru "Braces" "Скобки"
|
|
||||||
::msgcat::mcset ru "Quad braces" "Квадратные скобки"
|
|
||||||
::msgcat::mcset ru "Braces background" "Фон скобки"
|
|
||||||
::msgcat::mcset ru "Braces foreground" "Цвет скобки"
|
|
||||||
::msgcat::mcset ru "Cancel" "Отмена"
|
|
||||||
::msgcat::mcset ru "Can't found file:" "Не найден файл:"
|
|
||||||
::msgcat::mcset ru "Close" "Закрыть"
|
|
||||||
::msgcat::mcset ru "Close all" "Закрыть все"
|
|
||||||
::msgcat::mcset ru "Close Project Manager?" "Выйти из программы?"
|
|
||||||
::msgcat::mcset ru "Comments" "Коментарии"
|
|
||||||
::msgcat::mcset ru "Comment selected" "Закоментировать"
|
|
||||||
::msgcat::mcset ru "Uncomment selected" "Раскоментировать"
|
|
||||||
::msgcat::mcset ru "Company" "Компания"
|
|
||||||
::msgcat::mcset ru "Compiler" "Компилятор"
|
|
||||||
::msgcat::mcset ru "Compile" "Компиляция"
|
|
||||||
::msgcat::mcset ru "Compile project" "Компиляция проекта"
|
|
||||||
::msgcat::mcset ru "Compile file" "Компиляция файла"
|
|
||||||
::msgcat::mcset ru "Contents" "Содержание"
|
|
||||||
::msgcat::mcset ru "Copy" "Скопировать"
|
|
||||||
::msgcat::mcset ru "Copy into clipboard" "Скопировать в буфер"
|
|
||||||
::msgcat::mcset ru "Create" "Создать"
|
|
||||||
::msgcat::mcset ru "Create new project" "Создать новый проект"
|
|
||||||
::msgcat::mcset ru "Create new file" "Создать новый файл"
|
|
||||||
::msgcat::mcset ru "Create directory" "Создать директорию"
|
|
||||||
::msgcat::mcset ru "Create backup files" "Создавать временные файлы"
|
|
||||||
::msgcat::mcset ru "Curent directory" "Текущий каталог"
|
|
||||||
::msgcat::mcset ru "Cut" "Вырезать"
|
|
||||||
::msgcat::mcset ru "Cut into clipboard" "Вырезать в буфер"
|
|
||||||
::msgcat::mcset ru "CVS commit" "Поместить в CVS"
|
|
||||||
::msgcat::mcset ru "CVS update" "Обновить из CVS"
|
|
||||||
::msgcat::mcset ru "Delete" "Удалить"
|
|
||||||
::msgcat::mcset ru "Delete file" "Удалить файл"
|
|
||||||
::msgcat::mcset ru "Delete backup files" "Удалять временные файлы"
|
|
||||||
::msgcat::mcset ru "Delete project" "Удалить проект"
|
|
||||||
::msgcat::mcset ru "with all files" "вместе с файлами"
|
|
||||||
::msgcat::mcset ru "If press \"Yes\" will deleted all files!" "Если нажать \"Да\" будут удалены все файлы"
|
|
||||||
::msgcat::mcset ru "If press \"No\" will deleted only proj-file" "Если нажать \"Нет\" будет удалён только файл проекта"
|
|
||||||
::msgcat::mcset ru "Delete from project" "Удалить из проекта"
|
|
||||||
::msgcat::mcset ru "Docs dir" "Каталог документации"
|
|
||||||
::msgcat::mcset ru "Don't selected file" "Не определен файл"
|
|
||||||
::msgcat::mcset ru "E-mail" "Эл. почта"
|
|
||||||
::msgcat::mcset ru "Edit" "Редактирование"
|
|
||||||
::msgcat::mcset ru "Editor" "Редактор"
|
|
||||||
::msgcat::mcset ru "Editor background" "Цвет фона"
|
|
||||||
::msgcat::mcset ru "Editor foreground" "Цвет шрифта"
|
|
||||||
::msgcat::mcset ru "Editor font" "Шрифт редактора"
|
|
||||||
::msgcat::mcset ru "Editor font bold" "Шрифт редактора жирный"
|
|
||||||
::msgcat::mcset ru "Editor settings" "Настройки редактора"
|
|
||||||
::msgcat::mcset ru "Encode" "Перекодировка"
|
|
||||||
::msgcat::mcset ru "Error open URL" "Ошибка открытия URL"
|
|
||||||
::msgcat::mcset ru "Exit" "Выход"
|
|
||||||
::msgcat::mcset ru "File" "Файл"
|
|
||||||
::msgcat::mcset ru "Files" "Файлы"
|
|
||||||
::msgcat::mcset ru "File already exists. Overwrite?" "Файл уже существует. Переписать?"
|
|
||||||
::msgcat::mcset ru "File was modifyed. Close?" "Файл был изменен. Закрыть?"
|
|
||||||
::msgcat::mcset ru "File was modifyed. Save?" "Файл был изменен. Сохранить?"
|
|
||||||
::msgcat::mcset ru "File modify" "Файл изменен"
|
|
||||||
::msgcat::mcset ru "File saved" "Файл сохранен"
|
|
||||||
::msgcat::mcset ru "Find" "Найти"
|
|
||||||
::msgcat::mcset ru "Find in files" "Найти в файлах"
|
|
||||||
::msgcat::mcset ru "Font normal" "Нормальный шрифт"
|
|
||||||
::msgcat::mcset ru "Font bold" "Жирный шрифт"
|
|
||||||
::msgcat::mcset ru "FTP password" "FTP пароль"
|
|
||||||
::msgcat::mcset ru "FTP server" "FTP сервер"
|
|
||||||
::msgcat::mcset ru "FTP user" "FTP пользователь"
|
|
||||||
::msgcat::mcset ru "Goto line" "Перейти к ..."
|
|
||||||
::msgcat::mcset ru "Help" "Помощь"
|
|
||||||
::msgcat::mcset ru "Home dir" "Домашний каталог"
|
|
||||||
::msgcat::mcset ru "Home page" "Домашняя страница"
|
|
||||||
::msgcat::mcset ru "Image dir" "Каталог изображений"
|
|
||||||
::msgcat::mcset ru "Indent foreground" "Подсветка отступа"
|
|
||||||
::msgcat::mcset ru "Indent background" "Подсветка отступа"
|
|
||||||
::msgcat::mcset ru "Insert" "Вставка"
|
|
||||||
::msgcat::mcset ru "Insert image" "Вставить изображение"
|
|
||||||
::msgcat::mcset ru "Interface language" "Язык интерфейса"
|
|
||||||
::msgcat::mcset ru "Interpetator" "Интерпретатор"
|
|
||||||
::msgcat::mcset ru "Install Tcl/Tk Project Manager" "Установка Tcl/Tk Project Manager"
|
|
||||||
::msgcat::mcset ru "Input file name" "Введите имя файла"
|
|
||||||
::msgcat::mcset ru "Key bindings" "Назначения клавиш"
|
|
||||||
::msgcat::mcset ru "Label" "Метка"
|
|
||||||
::msgcat::mcset ru "Language" "Язык"
|
|
||||||
::msgcat::mcset ru "Line number" "Номер строки"
|
|
||||||
::msgcat::mcset ru "Make RPM" "Создать RPM"
|
|
||||||
::msgcat::mcset ru "Make archive" "Создать архив"
|
|
||||||
::msgcat::mcset ru "Make backup files" "Создавать временные файлы"
|
|
||||||
::msgcat::mcset ru "Main" "Общие"
|
|
||||||
::msgcat::mcset ru "Main settings" "Общие настройки"
|
|
||||||
::msgcat::mcset ru "Modules" "Модули"
|
|
||||||
::msgcat::mcset ru "Modifying the Registry..." "Внесение изменений в реестр"
|
|
||||||
::msgcat::mcset ru "Must be one file select!" "Вы должны выбрать только один файл"
|
|
||||||
::msgcat::mcset ru "Must be one or two file select!" "Вы должны выбрать один или два файла"
|
|
||||||
::msgcat::mcset ru "Network" "Сеть"
|
|
||||||
::msgcat::mcset ru "New" "Новый"
|
|
||||||
::msgcat::mcset ru "New directory" "Новый каталог"
|
|
||||||
::msgcat::mcset ru "New file" "Новый файл"
|
|
||||||
::msgcat::mcset ru "New project" "Новый проект"
|
|
||||||
::msgcat::mcset ru "Not implemented yet" "Данная функция пока не реализована"
|
|
||||||
::msgcat::mcset ru "Not found active project" "Не определен активный проект"
|
|
||||||
::msgcat::mcset ru "Open" "Открыть"
|
|
||||||
::msgcat::mcset ru "Open file" "Открыть файл"
|
|
||||||
::msgcat::mcset ru "Open folder" "Открыть папку"
|
|
||||||
::msgcat::mcset ru "Open project" "Открыть проект"
|
|
||||||
::msgcat::mcset ru "Opened file in progress" "Открытие файла"
|
|
||||||
::msgcat::mcset ru "Operators" "Операторы"
|
|
||||||
::msgcat::mcset ru "Overwrite" "Замена"
|
|
||||||
::msgcat::mcset ru "Parameters" "Параметры"
|
|
||||||
::msgcat::mcset ru "Subparameters" "Субпараметры"
|
|
||||||
::msgcat::mcset ru "Paste" "Вставить"
|
|
||||||
::msgcat::mcset ru "Paste from clipboard" "Вставить из буфера"
|
|
||||||
::msgcat::mcset ru "Percent" "Знак процента"
|
|
||||||
::msgcat::mcset ru "Print ..." "Печать ..."
|
|
||||||
::msgcat::mcset ru "Print" "Печать"
|
|
||||||
::msgcat::mcset ru "Print command" "Команда печати"
|
|
||||||
::msgcat::mcset ru "Print selected text" "Печатать выделенный текст"
|
|
||||||
::msgcat::mcset ru "Procedure name" "Имя процедуры"
|
|
||||||
::msgcat::mcset ru "Procedure name complit" "Автодобивка процедуры"
|
|
||||||
::msgcat::mcset ru "Program finished successfully" "Выполнение завершено"
|
|
||||||
::msgcat::mcset ru "Program failed" "Ошибка выполнения"
|
|
||||||
::msgcat::mcset ru "Programm output" "Вывод программы"
|
|
||||||
::msgcat::mcset ru "Project" "Проект"
|
|
||||||
::msgcat::mcset ru "Projects" "Проекты"
|
|
||||||
::msgcat::mcset ru "Project settings" "Установки проекта"
|
|
||||||
::msgcat::mcset ru "Project name" "Название проекта"
|
|
||||||
::msgcat::mcset ru "Project file" "Файл проекта"
|
|
||||||
::msgcat::mcset ru "Project dir" "Каталог проекта"
|
|
||||||
::msgcat::mcset ru "Project type" "Тип проекта"
|
|
||||||
::msgcat::mcset ru "Quit without saving?" "Выйти без сохранения?"
|
|
||||||
::msgcat::mcset ru "Question" "Вопрос"
|
|
||||||
::msgcat::mcset ru "Quote string" "Строка в кавычках"
|
|
||||||
::msgcat::mcset ru "Redo" "Повторить"
|
|
||||||
::msgcat::mcset ru "Refresh" "Обновить"
|
|
||||||
::msgcat::mcset ru "Replace" "Замена"
|
|
||||||
::msgcat::mcset ru "Replace in files" "Заменить в файлах"
|
|
||||||
::msgcat::mcset ru "Replace with" "Заменить на"
|
|
||||||
::msgcat::mcset ru "Replace all" "Заменить все"
|
|
||||||
::msgcat::mcset ru "Release" "Выпуск"
|
|
||||||
::msgcat::mcset ru "RPM directory" "Каталог RPM"
|
|
||||||
::msgcat::mcset ru "RPM file mask" "Маска RPM"
|
|
||||||
::msgcat::mcset ru "Run" "Выполнить"
|
|
||||||
::msgcat::mcset ru "Run file" "Запустить файл"
|
|
||||||
::msgcat::mcset ru "Running project" "Выполнение проекта"
|
|
||||||
::msgcat::mcset ru "Running file" "Выполнение файла"
|
|
||||||
::msgcat::mcset ru "Save" "Сохранить"
|
|
||||||
::msgcat::mcset ru "Save file" "Сохранить файл"
|
|
||||||
::msgcat::mcset ru "Save file as" "Сохранить файл как ..."
|
|
||||||
::msgcat::mcset ru "Save as" "Сохранить как ..."
|
|
||||||
::msgcat::mcset ru "Save all" "Сохранить все"
|
|
||||||
::msgcat::mcset ru "Search" "Поиск"
|
|
||||||
::msgcat::mcset ru "Select" "Выбрать"
|
|
||||||
::msgcat::mcset ru "Select all" "Выделить все"
|
|
||||||
::msgcat::mcset ru "Select directory" "Выбор директории"
|
|
||||||
::msgcat::mcset ru "Selected directory" "Директория"
|
|
||||||
::msgcat::mcset ru "Selection color" "Цвет выделения"
|
|
||||||
::msgcat::mcset ru "Settings" "Установки"
|
|
||||||
::msgcat::mcset ru "Show backup files" "Показывать временные файлы"
|
|
||||||
::msgcat::mcset ru "Show the Menu" "Показывать меню"
|
|
||||||
::msgcat::mcset ru "Show dot files" "Показывать скрытые файлы"
|
|
||||||
::msgcat::mcset ru "Split edit window" "Разделить окно редактора"
|
|
||||||
::msgcat::mcset ru "SQL commands" "SQL команды"
|
|
||||||
::msgcat::mcset ru "Text autoformat" "Автоформат текста"
|
|
||||||
::msgcat::mcset ru "Thanks" "Благодарности"
|
|
||||||
::msgcat::mcset ru "Title normal" "Файл нормальный"
|
|
||||||
::msgcat::mcset ru "Title modify" "Файл изменен"
|
|
||||||
::msgcat::mcset ru "Toolbar" "Панель инструментов"
|
|
||||||
::msgcat::mcset ru "Undo" "Отменить"
|
|
||||||
::msgcat::mcset ru "Update" "Обновить"
|
|
||||||
::msgcat::mcset ru "Variables" "Переменные"
|
|
||||||
::msgcat::mcset ru "Version" "Версия"
|
|
||||||
::msgcat::mcset ru "View" "Вид"
|
|
||||||
::msgcat::mcset ru "View files tree" "Показывать дерево файлов"
|
|
||||||
::msgcat::mcset ru "View line numers" "Показывать номера строк"
|
|
||||||
::msgcat::mcset ru "Warning" "Внимание"
|
|
||||||
::msgcat::mcset ru "Was replacement" "Было заменено"
|
|
||||||
::msgcat::mcset ru "Word wrapping" "Перенос слов"
|
|
||||||
::msgcat::mcset ru "Work dir" "Рабочий каталог"
|
|
||||||
|
|
||||||
|
|
|
@ -1,38 +0,0 @@
|
||||||
######################################################
|
|
||||||
# ProjMan 2
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svk.ru
|
|
||||||
# Copyright (c) "", 2022, https://nuk-svk.ru
|
|
||||||
######################################################
|
|
||||||
#
|
|
||||||
# Operation with NoteBook widget module
|
|
||||||
#
|
|
||||||
######################################################
|
|
||||||
|
|
||||||
namespace eval NB {
|
|
||||||
|
|
||||||
proc InsertItem {nb item type} {
|
|
||||||
switch $type {
|
|
||||||
file {
|
|
||||||
regsub -all {\.|/|\\|\s} $item "_" itemName
|
|
||||||
if [winfo exists $nb.$itemName] {
|
|
||||||
set fm $nb.$itemName
|
|
||||||
} else {
|
|
||||||
set fm [ttk::frame $nb.$itemName]
|
|
||||||
pack $fm -side top -expand true -fill both
|
|
||||||
$nb add $fm -text [file tail $item];# -image close_12x12 -compound right
|
|
||||||
$nb select $fm
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
puts "NB item - $fm"
|
|
||||||
return $fm
|
|
||||||
}
|
|
||||||
proc CloseTab {w x y} {
|
|
||||||
if {[$w identify $x $y] == "close_button"} {
|
|
||||||
puts "Hurrah! Close tab [$w index @$x,$y] plz."
|
|
||||||
FileOper::Close
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,73 +0,0 @@
|
||||||
######################################################
|
|
||||||
# ProjMan 2
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svk.ru
|
|
||||||
# Copyright (c) "", 2022, https://nuk-svk.ru
|
|
||||||
######################################################
|
|
||||||
#
|
|
||||||
# All procedures module
|
|
||||||
#
|
|
||||||
######################################################
|
|
||||||
|
|
||||||
proc Quit {} {
|
|
||||||
global dir
|
|
||||||
Config::write $dir(cfg)
|
|
||||||
exit
|
|
||||||
}
|
|
||||||
|
|
||||||
proc ViewFilesTree {} {
|
|
||||||
global cfgVariables
|
|
||||||
if {$cfgVariables(toolBarShow) eq "true"} {
|
|
||||||
.frmBody.panel forget .frmBody.frmTree
|
|
||||||
set cfgVariables(toolBarShow) false
|
|
||||||
} else {
|
|
||||||
.frmBody.panel insert 0 .frmBody.frmTree
|
|
||||||
set cfgVariables(toolBarShow) true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# Enable/Disabled line numbers in editor
|
|
||||||
proc ViewLineNumbers {} {
|
|
||||||
global cfgVariables nbEditor
|
|
||||||
# Changed global settigs
|
|
||||||
if {$cfgVariables(lineNumberShow) eq "true"} {
|
|
||||||
set cfgVariables(lineNumberShow) false
|
|
||||||
} else {
|
|
||||||
set cfgVariables(lineNumberShow) true
|
|
||||||
}
|
|
||||||
# apply changes for opened tabs
|
|
||||||
foreach node [$nbEditor tabs] {
|
|
||||||
$node.frmText.t configure -linemap $cfgVariables(lineNumberShow)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc Del {} {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
proc YScrollCommand {txt canv} {
|
|
||||||
$txt yview
|
|
||||||
$canv yview"
|
|
||||||
}
|
|
||||||
|
|
||||||
proc ResetModifiedFlag {w} {
|
|
||||||
global modified nbEditor
|
|
||||||
$w.frmText.t edit modified false
|
|
||||||
set modified($w) "false"
|
|
||||||
set lbl [string trimleft [$nbEditor tab $w -text] "* "]
|
|
||||||
puts "ResetModifiedFlag: $lbl"
|
|
||||||
$nbEditor tab $w -text $lbl
|
|
||||||
}
|
|
||||||
proc SetModifiedFlag {w} {
|
|
||||||
global modified nbEditor
|
|
||||||
#$w.frmText.t edit modified false
|
|
||||||
set modified($w) "true"
|
|
||||||
set lbl [$nbEditor tab $w -text]
|
|
||||||
puts "SetModifiedFlag: $w; $modified($w); >$lbl<"
|
|
||||||
if {[regexp -nocase -all -- {^\*} $lbl match] == 0} {
|
|
||||||
set lbl "* $lbl"
|
|
||||||
}
|
|
||||||
$nbEditor tab $w -text $lbl
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
86
debian/projman/usr/share/projman/lib/tree.tcl
vendored
|
@ -1,86 +0,0 @@
|
||||||
#!/usr/bin/wish
|
|
||||||
######################################################
|
|
||||||
# ProjMan 2
|
|
||||||
# Distributed under GNU Public License
|
|
||||||
# Author: Sergey Kalinin svk@nuk-svk.ru
|
|
||||||
# Copyright (c) "", 2022, https://nuk-svk.ru
|
|
||||||
######################################################
|
|
||||||
#
|
|
||||||
# Tree widget working module
|
|
||||||
#
|
|
||||||
######################################################
|
|
||||||
|
|
||||||
|
|
||||||
namespace eval Tree {
|
|
||||||
proc InsertItem {tree parent item type text} {
|
|
||||||
# set img [GetImage $fileName]
|
|
||||||
set dot "_"
|
|
||||||
puts "$tree $parent $item $type $text"
|
|
||||||
switch $type {
|
|
||||||
file {
|
|
||||||
regsub -all {\.|/|\\|\s} $item "_" subNode
|
|
||||||
puts $subNode
|
|
||||||
set image imgFile
|
|
||||||
}
|
|
||||||
directory {
|
|
||||||
regsub -all {\.|/|\\|\s} $item "_" subNode
|
|
||||||
puts $subNode
|
|
||||||
set image folder
|
|
||||||
}
|
|
||||||
}
|
|
||||||
append id $type "::" $subNode
|
|
||||||
puts $id
|
|
||||||
if ![$tree exists $id] {
|
|
||||||
$tree insert $parent end -id "$id" -text $text -values "$item" -image $image
|
|
||||||
}
|
|
||||||
return "$id"
|
|
||||||
}
|
|
||||||
proc DoublePressItem {tree} {
|
|
||||||
set id [$tree selection]
|
|
||||||
$tree tag remove selected
|
|
||||||
$tree item $id -tags selected
|
|
||||||
|
|
||||||
set values [$tree item $id -values]
|
|
||||||
set key [lindex [split $id "::"] 0]
|
|
||||||
if {$values eq "" || $key eq ""} {return}
|
|
||||||
|
|
||||||
puts "$key $tree $values"
|
|
||||||
switch $key {
|
|
||||||
directory {
|
|
||||||
FileOper::ReadFolder $values
|
|
||||||
}
|
|
||||||
file {
|
|
||||||
FileOper::Edit $values
|
|
||||||
# $tree item $id -open false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc PressItem {tree} {
|
|
||||||
set id [$tree selection]
|
|
||||||
$tree tag remove selected
|
|
||||||
$tree item $id -tags selected
|
|
||||||
|
|
||||||
set values [$tree item $id -values]
|
|
||||||
set key [lindex [split $id "::"] 0]
|
|
||||||
if {$values eq "" || $key eq ""} {return}
|
|
||||||
|
|
||||||
puts "$key $tree $values"
|
|
||||||
switch $key {
|
|
||||||
directory {
|
|
||||||
FileOper::ReadFolder $values
|
|
||||||
# $tree item $id -open false
|
|
||||||
}
|
|
||||||
file {
|
|
||||||
FileOper::Edit $values
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#
|
|
||||||
}
|
|
||||||
|
|
||||||
proc GetItemID {tree item} {
|
|
||||||
if [$tree exists $item] {
|
|
||||||
return [$tree item $item -values]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,192 +0,0 @@
|
||||||
# SVG Image License
|
|
||||||
|
|
||||||
This License applies to the PNG images, built from the SVG images in the
|
|
||||||
adapta theme using `tool/svg.py`, ONLY! This License does not cover
|
|
||||||
`adapta.tcl`, which is covered by GNU GPLv3 as it is derived from
|
|
||||||
`equilux.tcl`, which is derived from `arc.tcl`.
|
|
||||||
|
|
||||||
[CC BY-SA is one-way compatible with GNU GPLv3](https://wiki.creativecommons.org/wiki/ShareAlike_compatibility:_GPLv3),
|
|
||||||
and thus theme `adapta` can be used as if it were licensed under
|
|
||||||
`GNU GPLv3`.
|
|
||||||
|
|
||||||
Note that the `adapta`-theme code/markup files are licensed under GNU
|
|
||||||
GPLv2, which is incompatible with GNU GPLv3 (as it does not specify
|
|
||||||
`Or at your option, any later version`), but no files covered by only
|
|
||||||
GPLv2 from the `adapta` theme are included, so it does NOT apply.
|
|
||||||
|
|
||||||
Original Theme [`adapta-gtk-theme`](https://github.com/adapta-project/adapta-gtk-theme)
|
|
||||||
|
|
||||||
**Authors**: `@tista500` and others
|
|
||||||
|
|
||||||
|
|
||||||
# Attribution-ShareAlike 4.0 International
|
|
||||||
|
|
||||||
Creative Commons Corporation (“Creative Commons”) is not a law firm and does not provide legal services or legal advice. Distribution of Creative Commons public licenses does not create a lawyer-client or other relationship. Creative Commons makes its licenses and related information available on an “as-is” basis. Creative Commons gives no warranties regarding its licenses, any material licensed under their terms and conditions, or any related information. Creative Commons disclaims all liability for damages resulting from their use to the fullest extent possible.
|
|
||||||
|
|
||||||
### Using Creative Commons Public Licenses
|
|
||||||
|
|
||||||
Creative Commons public licenses provide a standard set of terms and conditions that creators and other rights holders may use to share original works of authorship and other material subject to copyright and certain other rights specified in the public license below. The following considerations are for informational purposes only, are not exhaustive, and do not form part of our licenses.
|
|
||||||
|
|
||||||
* __Considerations for licensors:__ Our public licenses are intended for use by those authorized to give the public permission to use material in ways otherwise restricted by copyright and certain other rights. Our licenses are irrevocable. Licensors should read and understand the terms and conditions of the license they choose before applying it. Licensors should also secure all rights necessary before applying our licenses so that the public can reuse the material as expected. Licensors should clearly mark any material not subject to the license. This includes other CC-licensed material, or material used under an exception or limitation to copyright. [More considerations for licensors](http://wiki.creativecommons.org/Considerations_for_licensors_and_licensees#Considerations_for_licensors).
|
|
||||||
|
|
||||||
* __Considerations for the public:__ By using one of our public licenses, a licensor grants the public permission to use the licensed material under specified terms and conditions. If the licensor’s permission is not necessary for any reason–for example, because of any applicable exception or limitation to copyright–then that use is not regulated by the license. Our licenses grant only permissions under copyright and certain other rights that a licensor has authority to grant. Use of the licensed material may still be restricted for other reasons, including because others have copyright or other rights in the material. A licensor may make special requests, such as asking that all changes be marked or described. Although not required by our licenses, you are encouraged to respect those requests where reasonable. [More considerations for the public](http://wiki.creativecommons.org/Considerations_for_licensors_and_licensees#Considerations_for_licensees).
|
|
||||||
|
|
||||||
## Creative Commons Attribution-ShareAlike 4.0 International Public License
|
|
||||||
|
|
||||||
By exercising the Licensed Rights (defined below), You accept and agree to be bound by the terms and conditions of this Creative Commons Attribution-ShareAlike 4.0 International Public License ("Public License"). To the extent this Public License may be interpreted as a contract, You are granted the Licensed Rights in consideration of Your acceptance of these terms and conditions, and the Licensor grants You such rights in consideration of benefits the Licensor receives from making the Licensed Material available under these terms and conditions.
|
|
||||||
|
|
||||||
### Section 1 – Definitions.
|
|
||||||
|
|
||||||
a. __Adapted Material__ means material subject to Copyright and Similar Rights that is derived from or based upon the Licensed Material and in which the Licensed Material is translated, altered, arranged, transformed, or otherwise modified in a manner requiring permission under the Copyright and Similar Rights held by the Licensor. For purposes of this Public License, where the Licensed Material is a musical work, performance, or sound recording, Adapted Material is always produced where the Licensed Material is synched in timed relation with a moving image.
|
|
||||||
|
|
||||||
b. __Adapter's License__ means the license You apply to Your Copyright and Similar Rights in Your contributions to Adapted Material in accordance with the terms and conditions of this Public License.
|
|
||||||
|
|
||||||
c. __BY-SA Compatible License__ means a license listed at [creativecommons.org/compatiblelicenses](http://creativecommons.org/compatiblelicenses), approved by Creative Commons as essentially the equivalent of this Public License.
|
|
||||||
|
|
||||||
d. __Copyright and Similar Rights__ means copyright and/or similar rights closely related to copyright including, without limitation, performance, broadcast, sound recording, and Sui Generis Database Rights, without regard to how the rights are labeled or categorized. For purposes of this Public License, the rights specified in Section 2(b)(1)-(2) are not Copyright and Similar Rights.
|
|
||||||
|
|
||||||
e. __Effective Technological Measures__ means those measures that, in the absence of proper authority, may not be circumvented under laws fulfilling obligations under Article 11 of the WIPO Copyright Treaty adopted on December 20, 1996, and/or similar international agreements.
|
|
||||||
|
|
||||||
f. __Exceptions and Limitations__ means fair use, fair dealing, and/or any other exception or limitation to Copyright and Similar Rights that applies to Your use of the Licensed Material.
|
|
||||||
|
|
||||||
g. __License Elements__ means the license attributes listed in the name of a Creative Commons Public License. The License Elements of this Public License are Attribution and ShareAlike.
|
|
||||||
|
|
||||||
h. __Licensed Material__ means the artistic or literary work, database, or other material to which the Licensor applied this Public License.
|
|
||||||
|
|
||||||
i. __Licensed Rights__ means the rights granted to You subject to the terms and conditions of this Public License, which are limited to all Copyright and Similar Rights that apply to Your use of the Licensed Material and that the Licensor has authority to license.
|
|
||||||
|
|
||||||
j. __Licensor__ means the individual(s) or entity(ies) granting rights under this Public License.
|
|
||||||
|
|
||||||
k. __Share__ means to provide material to the public by any means or process that requires permission under the Licensed Rights, such as reproduction, public display, public performance, distribution, dissemination, communication, or importation, and to make material available to the public including in ways that members of the public may access the material from a place and at a time individually chosen by them.
|
|
||||||
|
|
||||||
l. __Sui Generis Database Rights__ means rights other than copyright resulting from Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, as amended and/or succeeded, as well as other essentially equivalent rights anywhere in the world.
|
|
||||||
|
|
||||||
m. __You__ means the individual or entity exercising the Licensed Rights under this Public License. Your has a corresponding meaning.
|
|
||||||
|
|
||||||
### Section 2 – Scope.
|
|
||||||
|
|
||||||
a. ___License grant.___
|
|
||||||
|
|
||||||
1. Subject to the terms and conditions of this Public License, the Licensor hereby grants You a worldwide, royalty-free, non-sublicensable, non-exclusive, irrevocable license to exercise the Licensed Rights in the Licensed Material to:
|
|
||||||
|
|
||||||
A. reproduce and Share the Licensed Material, in whole or in part; and
|
|
||||||
|
|
||||||
B. produce, reproduce, and Share Adapted Material.
|
|
||||||
|
|
||||||
2. __Exceptions and Limitations.__ For the avoidance of doubt, where Exceptions and Limitations apply to Your use, this Public License does not apply, and You do not need to comply with its terms and conditions.
|
|
||||||
|
|
||||||
3. __Term.__ The term of this Public License is specified in Section 6(a).
|
|
||||||
|
|
||||||
4. __Media and formats; technical modifications allowed.__ The Licensor authorizes You to exercise the Licensed Rights in all media and formats whether now known or hereafter created, and to make technical modifications necessary to do so. The Licensor waives and/or agrees not to assert any right or authority to forbid You from making technical modifications necessary to exercise the Licensed Rights, including technical modifications necessary to circumvent Effective Technological Measures. For purposes of this Public License, simply making modifications authorized by this Section 2(a)(4) never produces Adapted Material.
|
|
||||||
|
|
||||||
5. __Downstream recipients.__
|
|
||||||
|
|
||||||
A. __Offer from the Licensor – Licensed Material.__ Every recipient of the Licensed Material automatically receives an offer from the Licensor to exercise the Licensed Rights under the terms and conditions of this Public License.
|
|
||||||
|
|
||||||
B. __Additional offer from the Licensor – Adapted Material. Every recipient of Adapted Material from You automatically receives an offer from the Licensor to exercise the Licensed Rights in the Adapted Material under the conditions of the Adapter’s License You apply.
|
|
||||||
|
|
||||||
C. __No downstream restrictions.__ You may not offer or impose any additional or different terms or conditions on, or apply any Effective Technological Measures to, the Licensed Material if doing so restricts exercise of the Licensed Rights by any recipient of the Licensed Material.
|
|
||||||
|
|
||||||
6. __No endorsement.__ Nothing in this Public License constitutes or may be construed as permission to assert or imply that You are, or that Your use of the Licensed Material is, connected with, or sponsored, endorsed, or granted official status by, the Licensor or others designated to receive attribution as provided in Section 3(a)(1)(A)(i).
|
|
||||||
|
|
||||||
b. ___Other rights.___
|
|
||||||
|
|
||||||
1. Moral rights, such as the right of integrity, are not licensed under this Public License, nor are publicity, privacy, and/or other similar personality rights; however, to the extent possible, the Licensor waives and/or agrees not to assert any such rights held by the Licensor to the limited extent necessary to allow You to exercise the Licensed Rights, but not otherwise.
|
|
||||||
|
|
||||||
2. Patent and trademark rights are not licensed under this Public License.
|
|
||||||
|
|
||||||
3. To the extent possible, the Licensor waives any right to collect royalties from You for the exercise of the Licensed Rights, whether directly or through a collecting society under any voluntary or waivable statutory or compulsory licensing scheme. In all other cases the Licensor expressly reserves any right to collect such royalties.
|
|
||||||
|
|
||||||
### Section 3 – License Conditions.
|
|
||||||
|
|
||||||
Your exercise of the Licensed Rights is expressly made subject to the following conditions.
|
|
||||||
|
|
||||||
a. ___Attribution.___
|
|
||||||
|
|
||||||
1. If You Share the Licensed Material (including in modified form), You must:
|
|
||||||
|
|
||||||
A. retain the following if it is supplied by the Licensor with the Licensed Material:
|
|
||||||
|
|
||||||
i. identification of the creator(s) of the Licensed Material and any others designated to receive attribution, in any reasonable manner requested by the Licensor (including by pseudonym if designated);
|
|
||||||
|
|
||||||
ii. a copyright notice;
|
|
||||||
|
|
||||||
iii. a notice that refers to this Public License;
|
|
||||||
|
|
||||||
iv. a notice that refers to the disclaimer of warranties;
|
|
||||||
|
|
||||||
v. a URI or hyperlink to the Licensed Material to the extent reasonably practicable;
|
|
||||||
|
|
||||||
B. indicate if You modified the Licensed Material and retain an indication of any previous modifications; and
|
|
||||||
|
|
||||||
C. indicate the Licensed Material is licensed under this Public License, and include the text of, or the URI or hyperlink to, this Public License.
|
|
||||||
|
|
||||||
2. You may satisfy the conditions in Section 3(a)(1) in any reasonable manner based on the medium, means, and context in which You Share the Licensed Material. For example, it may be reasonable to satisfy the conditions by providing a URI or hyperlink to a resource that includes the required information.
|
|
||||||
|
|
||||||
3. If requested by the Licensor, You must remove any of the information required by Section 3(a)(1)(A) to the extent reasonably practicable.
|
|
||||||
|
|
||||||
b. ___ShareAlike.___
|
|
||||||
|
|
||||||
In addition to the conditions in Section 3(a), if You Share Adapted Material You produce, the following conditions also apply.
|
|
||||||
|
|
||||||
1. The Adapter’s License You apply must be a Creative Commons license with the same License Elements, this version or later, or a BY-SA Compatible License.
|
|
||||||
|
|
||||||
2. You must include the text of, or the URI or hyperlink to, the Adapter's License You apply. You may satisfy this condition in any reasonable manner based on the medium, means, and context in which You Share Adapted Material.
|
|
||||||
|
|
||||||
3. You may not offer or impose any additional or different terms or conditions on, or apply any Effective Technological Measures to, Adapted Material that restrict exercise of the rights granted under the Adapter's License You apply.
|
|
||||||
|
|
||||||
### Section 4 – Sui Generis Database Rights.
|
|
||||||
|
|
||||||
Where the Licensed Rights include Sui Generis Database Rights that apply to Your use of the Licensed Material:
|
|
||||||
|
|
||||||
a. for the avoidance of doubt, Section 2(a)(1) grants You the right to extract, reuse, reproduce, and Share all or a substantial portion of the contents of the database;
|
|
||||||
|
|
||||||
b. if You include all or a substantial portion of the database contents in a database in which You have Sui Generis Database Rights, then the database in which You have Sui Generis Database Rights (but not its individual contents) is Adapted Material, including for purposes of Section 3(b); and
|
|
||||||
|
|
||||||
c. You must comply with the conditions in Section 3(a) if You Share all or a substantial portion of the contents of the database.
|
|
||||||
|
|
||||||
For the avoidance of doubt, this Section 4 supplements and does not replace Your obligations under this Public License where the Licensed Rights include other Copyright and Similar Rights.
|
|
||||||
|
|
||||||
### Section 5 – Disclaimer of Warranties and Limitation of Liability.
|
|
||||||
|
|
||||||
a. __Unless otherwise separately undertaken by the Licensor, to the extent possible, the Licensor offers the Licensed Material as-is and as-available, and makes no representations or warranties of any kind concerning the Licensed Material, whether express, implied, statutory, or other. This includes, without limitation, warranties of title, merchantability, fitness for a particular purpose, non-infringement, absence of latent or other defects, accuracy, or the presence or absence of errors, whether or not known or discoverable. Where disclaimers of warranties are not allowed in full or in part, this disclaimer may not apply to You.__
|
|
||||||
|
|
||||||
b. __To the extent possible, in no event will the Licensor be liable to You on any legal theory (including, without limitation, negligence) or otherwise for any direct, special, indirect, incidental, consequential, punitive, exemplary, or other losses, costs, expenses, or damages arising out of this Public License or use of the Licensed Material, even if the Licensor has been advised of the possibility of such losses, costs, expenses, or damages. Where a limitation of liability is not allowed in full or in part, this limitation may not apply to You.__
|
|
||||||
|
|
||||||
c. The disclaimer of warranties and limitation of liability provided above shall be interpreted in a manner that, to the extent possible, most closely approximates an absolute disclaimer and waiver of all liability.
|
|
||||||
|
|
||||||
### Section 6 – Term and Termination.
|
|
||||||
|
|
||||||
a. This Public License applies for the term of the Copyright and Similar Rights licensed here. However, if You fail to comply with this Public License, then Your rights under this Public License terminate automatically.
|
|
||||||
|
|
||||||
b. Where Your right to use the Licensed Material has terminated under Section 6(a), it reinstates:
|
|
||||||
|
|
||||||
1. automatically as of the date the violation is cured, provided it is cured within 30 days of Your discovery of the violation; or
|
|
||||||
|
|
||||||
2. upon express reinstatement by the Licensor.
|
|
||||||
|
|
||||||
For the avoidance of doubt, this Section 6(b) does not affect any right the Licensor may have to seek remedies for Your violations of this Public License.
|
|
||||||
|
|
||||||
c. For the avoidance of doubt, the Licensor may also offer the Licensed Material under separate terms or conditions or stop distributing the Licensed Material at any time; however, doing so will not terminate this Public License.
|
|
||||||
|
|
||||||
d. Sections 1, 5, 6, 7, and 8 survive termination of this Public License.
|
|
||||||
|
|
||||||
### Section 7 – Other Terms and Conditions.
|
|
||||||
|
|
||||||
a. The Licensor shall not be bound by any additional or different terms or conditions communicated by You unless expressly agreed.
|
|
||||||
|
|
||||||
b. Any arrangements, understandings, or agreements regarding the Licensed Material not stated herein are separate from and independent of the terms and conditions of this Public License.
|
|
||||||
|
|
||||||
### Section 8 – Interpretation.
|
|
||||||
|
|
||||||
a. For the avoidance of doubt, this Public License does not, and shall not be interpreted to, reduce, limit, restrict, or impose conditions on any use of the Licensed Material that could lawfully be made without permission under this Public License.
|
|
||||||
|
|
||||||
b. To the extent possible, if any provision of this Public License is deemed unenforceable, it shall be automatically reformed to the minimum extent necessary to make it enforceable. If the provision cannot be reformed, it shall be severed from this Public License without affecting the enforceability of the remaining terms and conditions.
|
|
||||||
|
|
||||||
c. No term or condition of this Public License will be waived and no failure to comply consented to unless expressly agreed to by the Licensor.
|
|
||||||
|
|
||||||
d. Nothing in this Public License constitutes or may be interpreted as a limitation upon, or waiver of, any privileges and immunities that apply to the Licensor or You, including from the legal processes of any jurisdiction or authority.
|
|
||||||
|
|
||||||
> Creative Commons is not a party to its public licenses. Notwithstanding, Creative Commons may elect to apply one of its public licenses to material it publishes and in those instances will be considered the “Licensor.” The text of the Creative Commons public licenses is dedicated to the public domain under the [CC0 Public Domain Dedication](https://creativecommons.org/publicdomain/zero/1.0/legalcode). Except for the limited purpose of indicating that material is shared under a Creative Commons public license or as otherwise permitted by the Creative Commons policies published at [creativecommons.org/policies](http://creativecommons.org/policies), Creative Commons does not authorize the use of the trademark “Creative Commons” or any other trademark or logo of Creative Commons without its prior written consent including, without limitation, in connection with any unauthorized modifications to any of its public licenses or any other arrangements, understandings, or agreements concerning use of licensed material. For the avoidance of doubt, this paragraph does not form part of the public licenses.
|
|
||||||
>
|
|
||||||
> Creative Commons may be contacted at creativecommons.org.
|
|
|
@ -1,338 +0,0 @@
|
||||||
# Copyright (C) 2018 RedFantom
|
|
||||||
# Derived from https://github.com/adapta-project/adapta-gtk-theme (GNU GPLv2)
|
|
||||||
# Based on /ttkthemes/ttkthemes/themes/arc/arc.tcl (GNU GPLv3)
|
|
||||||
# Available under the GNU GPLv3, or at your option any later version
|
|
||||||
|
|
||||||
# Theme Adapta
|
|
||||||
namespace eval ttk::theme::adapta {
|
|
||||||
|
|
||||||
# Widget colors
|
|
||||||
variable colors
|
|
||||||
array set colors {
|
|
||||||
-foreground "#000000"
|
|
||||||
-background "#fafbfc"
|
|
||||||
-disabledbg "#fafbfc"
|
|
||||||
-disabledfg "#c3c5d6"
|
|
||||||
-selectbg "#00bcd4"
|
|
||||||
-selectfg "#ffffff"
|
|
||||||
-window "#fafbfc"
|
|
||||||
-focuscolor "#1ee9b7"
|
|
||||||
-checklight "#1ee9b7"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Function to load images from subdirectory
|
|
||||||
variable directory
|
|
||||||
# Subdirectory /adapta
|
|
||||||
set directory [file join [file dirname [info script]] adapta]
|
|
||||||
variable images
|
|
||||||
# Load the images
|
|
||||||
foreach file [glob -directory $directory *.png] {
|
|
||||||
set img [file tail [file rootname $file]]
|
|
||||||
set images($img) [image create photo -file $file -format png]
|
|
||||||
}
|
|
||||||
|
|
||||||
# Create a new ttk::style
|
|
||||||
ttk::style theme create adapta -parent default -settings {
|
|
||||||
# Configure basic style settings
|
|
||||||
ttk::style configure . \
|
|
||||||
-background $colors(-background) \
|
|
||||||
-foreground $colors(-foreground) \
|
|
||||||
-troughcolor $colors(-background) \
|
|
||||||
-selectbackground $colors(-selectbg) \
|
|
||||||
-selectforeground $colors(-selectfg) \
|
|
||||||
-fieldbackground $colors(-window) \
|
|
||||||
-font TkDefaultFont \
|
|
||||||
-borderwidth 1 \
|
|
||||||
-focuscolor $colors(-focuscolor)
|
|
||||||
|
|
||||||
# Map disabled colors to disabledfg
|
|
||||||
ttk::style map . -foreground [list disabled $colors(-disabledfg)]
|
|
||||||
|
|
||||||
# WIDGET LAYOUTS
|
|
||||||
|
|
||||||
ttk::style layout TButton {
|
|
||||||
Button.button -children {
|
|
||||||
Button.focus -children {
|
|
||||||
Button.padding -children {
|
|
||||||
Button.label -side left -expand true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ttk::style layout Toolbutton {
|
|
||||||
Toolbutton.button -children {
|
|
||||||
Toolbutton.focus -children {
|
|
||||||
Toolbutton.padding -children {
|
|
||||||
Toolbutton.label -side left -expand true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ttk::style layout Vertical.TScrollbar {
|
|
||||||
Vertical.Scrollbar.trough -sticky ns -children {
|
|
||||||
Vertical.Scrollbar.thumb -expand true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ttk::style layout Horizontal.TScrollbar {
|
|
||||||
Horizontal.Scrollbar.trough -sticky ew -children {
|
|
||||||
Horizontal.Scrollbar.thumb -expand true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ttk::style layout TMenubutton {
|
|
||||||
Menubutton.button -children {
|
|
||||||
Menubutton.focus -children {
|
|
||||||
Menubutton.padding -children {
|
|
||||||
Menubutton.indicator -side right
|
|
||||||
Menubutton.label -side right -expand true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ttk::style layout TCombobox {
|
|
||||||
Combobox.field -sticky nswe -children {
|
|
||||||
Combobox.downarrow -side right -sticky ns -children {
|
|
||||||
Combobox.arrow -side right
|
|
||||||
}
|
|
||||||
Combobox.padding -expand true -sticky nswe -children {
|
|
||||||
Combobox.textarea -sticky nswe
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ttk::style layout TSpinbox {
|
|
||||||
Spinbox.field -side top -sticky we -children {
|
|
||||||
Spinbox.buttons -side right -children {
|
|
||||||
null -side right -sticky {} -children {
|
|
||||||
Spinbox.uparrow -side top -sticky nse -children {
|
|
||||||
Spinbox.symuparrow -side right -sticky e
|
|
||||||
}
|
|
||||||
Spinbox.downarrow -side bottom -sticky nse -children {
|
|
||||||
Spinbox.symdownarrow -side right -sticky e
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Spinbox.padding -sticky nswe -children {
|
|
||||||
Spinbox.textarea -sticky nswe
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# Style elements
|
|
||||||
|
|
||||||
# Button
|
|
||||||
ttk::style element create Button.button image [list $images(button) \
|
|
||||||
pressed $images(button-active) \
|
|
||||||
active $images(button-hover) \
|
|
||||||
disabled $images(button-insensitive) \
|
|
||||||
] -border 3 -padding {3 2} -sticky ewns
|
|
||||||
|
|
||||||
# Toolbutton
|
|
||||||
ttk::style element create Toolbutton.button image [list $images(toolbutton) \
|
|
||||||
selected $images(toolbutton-active) \
|
|
||||||
pressed $images(toolbutton-active) \
|
|
||||||
{active !disabled} $images(toolbutton-hover) \
|
|
||||||
] -border 3 -padding {3 2} -sticky news
|
|
||||||
|
|
||||||
# Checkbutton
|
|
||||||
ttk::style element create Checkbutton.indicator image [list $images(check-off) \
|
|
||||||
disabled $images(check-off-insensitive) \
|
|
||||||
{active selected} $images(check-on-hover) \
|
|
||||||
{pressed selected} $images(check-on) \
|
|
||||||
active $images(check-off) \
|
|
||||||
selected $images(check-on) \
|
|
||||||
{disabled selected} $images(check-on-insensitive) \
|
|
||||||
] -width 25 -sticky w -padding {0 4 0 0}
|
|
||||||
|
|
||||||
# Radiobutton
|
|
||||||
ttk::style element create Radiobutton.indicator image [list $images(radio-off) \
|
|
||||||
disabled $images(radio-off-insensitive) \
|
|
||||||
{active selected} $images(radio-on-hover) \
|
|
||||||
{pressed selected} $images(radio-on) \
|
|
||||||
active $images(radio-off) \
|
|
||||||
selected $images(radio-on-hover) \
|
|
||||||
{disabled selected} $images(radio-on-insensitive) \
|
|
||||||
] -width 25 -sticky w -padding {0 4 0 0}
|
|
||||||
|
|
||||||
# Scrollbars
|
|
||||||
ttk::style element create Horizontal.Scrollbar.trough \
|
|
||||||
image [list $images(scroll-horiz-bg) \
|
|
||||||
disabled $images(scroll-horiz-bg-insensitive) \
|
|
||||||
]
|
|
||||||
ttk::style element create Horizontal.Scrollbar.thumb \
|
|
||||||
image [list $images(scroll-horiz-slider) \
|
|
||||||
{pressed !disabled} $images(scroll-horiz-slider-active) \
|
|
||||||
{active !disabled} $images(scroll-horiz-slider-hover) \
|
|
||||||
disabled $images(scroll-horiz-slider-insensitive) \
|
|
||||||
] -border 7 -sticky ew
|
|
||||||
ttk::style element create Vertical.Scrollbar.trough \
|
|
||||||
image [list $images(scroll-vert-bg) \
|
|
||||||
disabled $images(scroll-vert-bg-insensitive) \
|
|
||||||
]
|
|
||||||
ttk::style element create Vertical.Scrollbar.thumb \
|
|
||||||
image [list $images(scroll-vert-slider) \
|
|
||||||
{pressed !disabled} $images(scroll-vert-slider-active) \
|
|
||||||
{active !disabled} $images(scroll-vert-slider-hover) \
|
|
||||||
disabled $images(scroll-vert-slider-insensitive) \
|
|
||||||
] -border 7 -sticky ns
|
|
||||||
|
|
||||||
# Scales
|
|
||||||
ttk::style element create Horizontal.Scale.trough \
|
|
||||||
image [list $images(scale-horiz-bg) \
|
|
||||||
disabled $images(scale-horiz-bg-insensitive) \
|
|
||||||
] \
|
|
||||||
-border {10 5 10 5} -padding 0
|
|
||||||
ttk::style element create Horizontal.Scale.slider \
|
|
||||||
image [list $images(scale-slider) \
|
|
||||||
disabled $images(scale-slider-insensitive) \
|
|
||||||
active $images(scale-slider-hover) \
|
|
||||||
] \
|
|
||||||
-sticky {}
|
|
||||||
ttk::style element create Vertical.Scale.trough \
|
|
||||||
image [list $images(scale-vert-bg) \
|
|
||||||
disabled $images(scale-vert-bg-insensitive) \
|
|
||||||
] \
|
|
||||||
-border {5 10 5 10} -padding 0
|
|
||||||
ttk::style element create Vertical.Scale.slider \
|
|
||||||
image [list $images(scale-slider) \
|
|
||||||
disabled $images(scale-slider-insensitive) \
|
|
||||||
active $images(scale-slider-hover)
|
|
||||||
] \
|
|
||||||
-sticky {}
|
|
||||||
|
|
||||||
# Entry
|
|
||||||
ttk::style element create Entry.field \
|
|
||||||
image [list $images(entry) \
|
|
||||||
focus $images(entry-active) \
|
|
||||||
disabled $images(entry-insensitive)] \
|
|
||||||
-border 4 -padding {6 6} -sticky news
|
|
||||||
|
|
||||||
# LabelFrame
|
|
||||||
# ttk::style element create Labelframe.border image $images(labelframe) \
|
|
||||||
# -border 4 -padding 4 -sticky news
|
|
||||||
|
|
||||||
# Menubutton
|
|
||||||
ttk::style element create Menubutton.button \
|
|
||||||
image [list $images(button) \
|
|
||||||
pressed $images(button-active) \
|
|
||||||
active $images(button-hover) \
|
|
||||||
disabled $images(button-insensitive) \
|
|
||||||
] -sticky news -border 3 -padding {3 2}
|
|
||||||
ttk::style element create Menubutton.indicator \
|
|
||||||
image [list $images(arrow-down) \
|
|
||||||
active $images(arrow-down-hover) \
|
|
||||||
pressed $images(arrow-down-hover) \
|
|
||||||
] -sticky e -width 20
|
|
||||||
|
|
||||||
# ComboBox
|
|
||||||
ttk::style element create Combobox.field \
|
|
||||||
image [list $images(combo-entry) \
|
|
||||||
{readonly disabled} $images(combo-entry-insensitive) \
|
|
||||||
{readonly pressed} $images(combo-entry-active) \
|
|
||||||
{readonly hover} $images(combo-entry-active) \
|
|
||||||
readonly $images(combo-entry) \
|
|
||||||
{disabled} $images(combo-entry-insensitive) \
|
|
||||||
{hover} $images(combo-entry-active) \
|
|
||||||
] -border 4 -padding {6 0 0 0}
|
|
||||||
ttk::style element create Combobox.downarrow \
|
|
||||||
image [list $images(combo-button) \
|
|
||||||
pressed $images(combo-button-active) \
|
|
||||||
active $images(combo-button-hover) \
|
|
||||||
disabled $images(combo-button-insensitive) \
|
|
||||||
] -border 4 -padding {0 10 6 10}
|
|
||||||
ttk::style element create Combobox.arrow \
|
|
||||||
image [list $images(button-unshade) \
|
|
||||||
active $images(button-unshade-prelight) \
|
|
||||||
pressed $images(button-unshade-pressed) \
|
|
||||||
disabled $images(button-unshade) \
|
|
||||||
] -sticky e -width 15
|
|
||||||
|
|
||||||
# Spinbox
|
|
||||||
# ttk::style element create Spinbox.field \
|
|
||||||
# image [list $images(combo-entry) focus $images(combo-entry-active)] \
|
|
||||||
# -border 4 -padding {6 0 0 0} -sticky news
|
|
||||||
# ttk::style element create Spinbox.uparrow \
|
|
||||||
# image [list $images(up-bg) \
|
|
||||||
# pressed $images(up-bg-active) \
|
|
||||||
# active $images(up-bg-hover) \
|
|
||||||
# disabled $images(up-bg-disable) \
|
|
||||||
# ] -width 20 -border {0 2 3 0} -padding {0 5 6 2}
|
|
||||||
# ttk::style element create Spinbox.symuparrow \
|
|
||||||
# image [list $images(arrow-up-small) \
|
|
||||||
# active $images(arrow-up-small-prelight) \
|
|
||||||
# pressed $images(arrow-up-small-prelight) \
|
|
||||||
# disabled $images(arrow-up-small-insens) \
|
|
||||||
# ]
|
|
||||||
# ttk::style element create Spinbox.downarrow \
|
|
||||||
# image [list $images(down-bg) \
|
|
||||||
# pressed $images(down-bg-active) \
|
|
||||||
# active $images(down-bg-hover) \
|
|
||||||
# disabled $images(down-bg-disable) \
|
|
||||||
# ] -width 20 -border {0 0 3 2} -padding {0 2 6 5}
|
|
||||||
# ttk::style element create Spinbox.symdownarrow \
|
|
||||||
# image [list $images(arrow-down) \
|
|
||||||
# active $images(arrow-down-prelight) \
|
|
||||||
# pressed $images(arrow-down-prelight) \
|
|
||||||
# disabled $images(arrow-down-insens) \
|
|
||||||
# ]
|
|
||||||
|
|
||||||
# Notebook
|
|
||||||
# ttk::style element create Notebook.client \
|
|
||||||
# image $images(notebook) -border 1
|
|
||||||
ttk::style element create Notebook.tab \
|
|
||||||
image [list $images(notebook) \
|
|
||||||
selected $images(notebook-active) \
|
|
||||||
] -padding {4 4 4 2} -border {5 3 5 0}
|
|
||||||
|
|
||||||
# Progressbars
|
|
||||||
ttk::style element create Horizontal.Progressbar.trough \
|
|
||||||
image $images(progress-bg) -border 0 -padding 1
|
|
||||||
ttk::style element create Horizontal.Progressbar.pbar \
|
|
||||||
image $images(progress-bar) -border 0 -padding 2
|
|
||||||
|
|
||||||
ttk::style element create Vertical.Progressbar.trough \
|
|
||||||
image $images(progress-bg) -border 0 -padding 1
|
|
||||||
ttk::style element create Vertical.Progressbar.pbar \
|
|
||||||
image $images(progress-bar) -border 0
|
|
||||||
|
|
||||||
# Treeview
|
|
||||||
ttk::style element create Treeview.field \
|
|
||||||
image $images(treeview) -border 1
|
|
||||||
ttk::style element create Treeheading.cell \
|
|
||||||
image [list $images(toolbutton-hover) \
|
|
||||||
pressed $images(toolbutton-active) \
|
|
||||||
disabled $images(toolbutton-insensitive) \
|
|
||||||
active $images(toolbutton-hover)] \
|
|
||||||
-border {4 1 4 1} -padding 4 -sticky ewns
|
|
||||||
# ttk::style element create Treeitem.indicator \
|
|
||||||
# image [list $images(plus) user2 $images(empty) user1 $images(minus)] \
|
|
||||||
# -width 15 -sticky w
|
|
||||||
|
|
||||||
# Settings
|
|
||||||
ttk::style configure TButton -padding {8 4 8 4} -width -10 -anchor center
|
|
||||||
ttk::style configure TMenubutton -padding {8 4 4 4}
|
|
||||||
ttk::style configure Toolbutton -anchor center
|
|
||||||
ttk::style map TCheckbutton -background [list active $colors(-checklight)]
|
|
||||||
ttk::style configure TCheckbutton -padding 3
|
|
||||||
ttk::style map TRadiobutton -background [list active $colors(-checklight)]
|
|
||||||
ttk::style configure TRadiobutton -padding 3
|
|
||||||
ttk::style configure TNotebook -tabmargins {0 2 0 0}
|
|
||||||
ttk::style configure TNotebook.Tab -padding {6 2 6 2} -expand {0 0 2}
|
|
||||||
ttk::style map TNotebook.Tab -expand [list selected {1 2 4 2}]
|
|
||||||
ttk::style configure TSeparator -background $colors(-background)
|
|
||||||
|
|
||||||
# Treeview
|
|
||||||
ttk::style configure Treeview -background $colors(-window)
|
|
||||||
ttk::style configure Treeview.Item -padding {2 0 0 0}
|
|
||||||
ttk::style map Treeview \
|
|
||||||
-background [list selected $colors(-selectbg)] \
|
|
||||||
-foreground [list selected $colors(-selectfg)]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
variable version 1.0
|
|
||||||
package provide ttk::theme::adapta $version
|
|
Before Width: | Height: | Size: 482 B |
Before Width: | Height: | Size: 562 B |
Before Width: | Height: | Size: 192 B |
Before Width: | Height: | Size: 279 B |
Before Width: | Height: | Size: 254 B |
Before Width: | Height: | Size: 259 B |
Before Width: | Height: | Size: 258 B |
Before Width: | Height: | Size: 269 B |
Before Width: | Height: | Size: 269 B |
Before Width: | Height: | Size: 251 B |
Before Width: | Height: | Size: 259 B |
Before Width: | Height: | Size: 262 B |
Before Width: | Height: | Size: 298 B |
Before Width: | Height: | Size: 260 B |
Before Width: | Height: | Size: 475 B |
Before Width: | Height: | Size: 556 B |
Before Width: | Height: | Size: 187 B |
Before Width: | Height: | Size: 435 B |
Before Width: | Height: | Size: 438 B |
Before Width: | Height: | Size: 253 B |
Before Width: | Height: | Size: 635 B |
Before Width: | Height: | Size: 585 B |
Before Width: | Height: | Size: 303 B |
Before Width: | Height: | Size: 392 B |
Before Width: | Height: | Size: 621 B |
Before Width: | Height: | Size: 687 B |
Before Width: | Height: | Size: 398 B |
Before Width: | Height: | Size: 389 B |
Before Width: | Height: | Size: 221 B |
Before Width: | Height: | Size: 343 B |
Before Width: | Height: | Size: 499 B |
Before Width: | Height: | Size: 501 B |
Before Width: | Height: | Size: 337 B |
Before Width: | Height: | Size: 469 B |
Before Width: | Height: | Size: 313 B |
Before Width: | Height: | Size: 313 B |
Before Width: | Height: | Size: 206 B |
Before Width: | Height: | Size: 291 B |
Before Width: | Height: | Size: 330 B |
Before Width: | Height: | Size: 286 B |
Before Width: | Height: | Size: 288 B |
Before Width: | Height: | Size: 456 B |
Before Width: | Height: | Size: 410 B |
Before Width: | Height: | Size: 309 B |
Before Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 152 B |
Before Width: | Height: | Size: 152 B |
Before Width: | Height: | Size: 862 B |
Before Width: | Height: | Size: 825 B |
Before Width: | Height: | Size: 345 B |
Before Width: | Height: | Size: 754 B |
Before Width: | Height: | Size: 988 B |
Before Width: | Height: | Size: 916 B |
Before Width: | Height: | Size: 512 B |
Before Width: | Height: | Size: 877 B |
Before Width: | Height: | Size: 210 B |
Before Width: | Height: | Size: 216 B |
Before Width: | Height: | Size: 483 B |
Before Width: | Height: | Size: 483 B |
Before Width: | Height: | Size: 454 B |
Before Width: | Height: | Size: 454 B |
Before Width: | Height: | Size: 218 B |
Before Width: | Height: | Size: 226 B |
Before Width: | Height: | Size: 168 B |
Before Width: | Height: | Size: 168 B |
Before Width: | Height: | Size: 265 B |
Before Width: | Height: | Size: 264 B |
Before Width: | Height: | Size: 256 B |
Before Width: | Height: | Size: 262 B |
Before Width: | Height: | Size: 166 B |