Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Активная панель на все окно
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы printer-friendly view
View previous topic :: View next topic  
Author Message
UserTC



Joined: 02 Jan 2008
Posts: 22

Post (Separately) Posted: Wed Jan 02, 2008 14:07    Post subject: Активная панель на все окно Reply with quote

есть ли комбинация клавиш: Активная панель на всю ширину окна выкл/вкл, как было в NC ? примерно как команда "cm_50Percent" только не 50 процентов, а 100.
Back to top
View user's profile Send private message
DrShark



Joined: 21 Oct 2006
Posts: 911
Location: Kyiv, Ukraine

Post (Separately) Posted: Wed Jan 02, 2008 15:29    Post subject: Reply with quote

Это есть в to-do списке автора Total Commander для следующей версии TC:
http://ghisler.ch/board/viewtopic.php?p=134367#134367
Back to top
View user's profile Send private message
Volniy



Joined: 15 Dec 2004
Posts: 585
Location: Местный

Post (Separately) Posted: Wed Jan 02, 2008 18:05    Post subject: Reply with quote

когда-то вполне нормально работало вот это. Это не совсем точно то, но очччень близко.
Back to top
View user's profile Send private message
UserTC



Joined: 02 Jan 2008
Posts: 22

Post (Separately) Posted: Wed Jan 02, 2008 22:52    Post subject: Reply with quote

Спасибо, сделал через VBS - в принципе меня устраивает, тока выполняется немного с небольшой задержкой не так плавно как со стандартными командами.
Back to top
View user's profile Send private message
UserTC



Joined: 02 Jan 2008
Posts: 22

Post (Separately) Posted: Sun Jan 06, 2008 14:50    Post subject: Reply with quote

еще назрел вопрос, можно сделать так что бы позиция окна при выходи сохранялась автоматом без указания в меню сверху конфигурации - "запомнить позицию"?. В настройках можно поставить что бы сохранял историю настроек, но позиции окна я там не увидел.
Back to top
View user's profile Send private message
DrShark



Joined: 21 Oct 2006
Posts: 911
Location: Kyiv, Ukraine

Post (Separately) Posted: Sun Jan 06, 2008 16:02    Post subject: Reply with quote

C помощью того же скрипта можно изменять параметр wincmd.ini Divider, но для этого, как я понял, нужно получить разрешение экрана, т.к. этот параметр находится в секции вида
Справка wrote:
[1024x768 (10x20)] - Данные, зависящие от разрешения экрана и размера шрифта (размер шрифта определяется числами в скобках: (8x16) — для нормального и уменьшенного шрифта, (10x20) — для крупного шрифта).

Насколько это реально, лучше знает автор скрипта.
Back to top
View user's profile Send private message
Volniy



Joined: 15 Dec 2004
Posts: 585
Location: Местный

Post (Separately) Posted: Mon Jan 07, 2008 00:16    Post subject: Reply with quote

В принципе это все возможно, но весьма геморно. Для этого придется задействовать WMI, что не всегда приемлемо. Есть два (как минимум, и не считая реквеста к Гислеру) обходных решения:

1) Не определять программно имя текущей секцию с параметром Divider, а определив его "вручную" одиножды, задать его в скрипте жестко.

2) Отключить вообще систему разделения настроек внешнего вида по выбранному шрифту и разрешению экрана. Для этого достаточно добавления параметра ResolutionSpecific=0 в секцию [Configuration]. После этого настройки для всех разрешений и размеров шрифтов будут храниться в одной общей секции [AllResolutions] (для удобства просто переименуйте активную секцию, используя именно это имя).

Какой вариант более приемлемый?
Back to top
View user's profile Send private message
DrShark



Joined: 21 Oct 2006
Posts: 911
Location: Kyiv, Ukraine

Post (Separately) Posted: Mon Jan 07, 2008 00:46    Post subject: Reply with quote

2Volniy
Насколько я знаю, твой Хелпер умеет команды Тоталу посылать.
Так вот, положение разделителя сохраняется при использовании
cm_ConfigSavePos.
Можно закинуть соотв. функцию куда-то в конец скрипта.
Back to top
View user's profile Send private message
Volniy



Joined: 15 Dec 2004
Posts: 585
Location: Местный

Post (Separately) Posted: Mon Jan 07, 2008 01:22    Post subject: Reply with quote

Ну да, а я и забыл Embarassed Тут, правда, есть один нюанс. Сохранение позиции это не совсем то, что нужно, потому как оно сохраняет не только положение сепаратора, а еще и размеры окна, его состояние и пр. Это немного некорректно, хотя может кому-то вполне подойдет.

Ладно, выдаю тогда сразу два варианта (закоментируйте ненужный и наоборот):
Code:
'=========================[ Start of file ]===================
'  File:         Separators+.vbs
'  Description:  Производит переключение между 3-мя любыми позициями
'                разделителя панелей ТС. Позиция сохраняется (!!!)
'  Installation: Создайте новую команду в меню Запуск TC
'                Команда: "диск:\путь\к\файлу\Separators+.vbs"
'                Назначьте на нее горячую клавишу
'  Copyright:    (c) 2008, Volniy

Option Explicit
Dim TCS
Const Pos1=95, Pos2=5, Pos3=50

Set TCS = CreateObject("TCScript.Helper")
TCS.Pause = 10
TCS.LockTC True

If TCS.Separator < 0 Or TCS.Separator > 100 Then
   TCS.SendCommand "cm_50Percent", True
End If

Select Case CInt(TCS.Separator)
  Case (Pos2 - 1), Pos2, (Pos2 + 1)
     TCS.Separator = Pos3
  Case (Pos3 - 1), Pos3, (Pos3 + 1)
     TCS.Separator = Pos1
  Case (Pos1 - 1), Pos1, (Pos1 + 1)
     TCS.Separator = Pos2
  Case Else
     TCS.Separator = Pos3
End Select

TCS.LockTC False

'1 способ, чистый ибо только сохраняет позицию сепаратора
'TCS.MainINI="c:\TC\wincmd.ini" - это если путь автоматом не определяется
If TCS.INIRead(TCS.MainINI,"Configuration","ResolutionSpecific","1")="0" Then
  Call TCS.INIWrite(TCS.MainINI,"AllResolutions","Divider",TCS.Separator*10)
Else
  Call TCS.INIWrite(TCS.MainINI,GetSectionName,"Divider",TCS.Separator*10)
End If

'2 способ, сохраняет заодно и позицию окна
'при этом способе функция GetSectionName лишняя
'TCS.SendCommand 493 , -1

Set TCS = Nothing
Wscript.Quit()


Function GetSectionName
  Dim objWMIService, colItems, objItem, Sec
  Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
  Set colItems = objWMIService.ExecQuery(_
      "Select * from Win32_DesktopMonitor")
  For Each objItem in colItems
    Sec=""
    Sec= CStr(objItem.ScreenWidth) & "x" _
       & CStr(objItem.ScreenHeight)
    If objItem.PixelsPerXLogicalInch > 96 Then
       Sec= Sec & " (10x20)"
    Else
       Sec= Sec & " (8x16)"
    End If
  Next
  GetSectionName = Sec
End Function
'=========================[  End of file  ]===================


Last edited by Volniy on Mon Jan 07, 2008 03:02; edited 2 times in total
Back to top
View user's profile Send private message
DrShark



Joined: 21 Oct 2006
Posts: 911
Location: Kyiv, Ukraine

Post (Separately) Posted: Mon Jan 07, 2008 01:43    Post subject: Reply with quote

2Volniy
Кажется, твой скрипт не учитывает ResolutionSpecific=0 и название секции [AllResolutions]...
Back to top
View user's profile Send private message
Volniy



Joined: 15 Dec 2004
Posts: 585
Location: Местный

Post (Separately) Posted: Mon Jan 07, 2008 02:56    Post subject: Reply with quote

DrShark wrote:
2Volniy
Кажется, твой скрипт не учитывает ResolutionSpecific=0 и название секции [AllResolutions]...

... а еще и температуру воздуха на пляжах Прибалтики Laughing
OK. Уже исправил.
Back to top
View user's profile Send private message
prog_san



Joined: 29 Sep 2007
Posts: 283
Location: Пенза

Post (Separately) Posted: Thu Jul 23, 2009 01:42    Post subject: Reply with quote

Почему-то после выполнения команды TCS.Separator=100 в задачах системы остается запись 100% - указывает на процесс Totalcmd.exe. И появляется и не исчезает всплывающее значение позиции разделителя. Для других значений такого поведения не наблюдается.
Code:
Dim TCS
Set TCS = CreateObject("TCScript.Helper")
TCS.LockTC True
TCS.Separator = 100
TCS.LockTC False
Set TCS = Nothing
Wscript.Quit()

TC 7.50 beta 7
_________________
Errare humanum est
Back to top
View user's profile Send private message
Den_Klimov



Joined: 03 Nov 2006
Posts: 207
Location: Ukraine.Kiev

Post (Separately) Posted: Sun May 16, 2010 06:06    Post subject: Команды\кнопки управления разделителем файл-панелей в Тотале Reply with quote

В Тотале имеется уж давненько встроенная команда "Установить границу файловых панелей по центру".
Но насколько помню никаких иных внутренних команд для управления разделителем файловых панелей НЕТ. Всё приходится делать мышей, да и то самым неудобным способом. Sad

Тем не менее потребность в других командах для клавиатурников есть. И она весьма велика.
Хотя бы в таких двух:
- растянуть активную файловую панель на весь Тотал (полностью скрыв таким образом противоположную панель)
или
- растянуть активную файловую панель в сотношении 80\20

Естественно подразумевается возможность сделать это не перезагружая Тотал.

У кого-то есть какие-то идеи по этом поводу?
Реально ли вообще сделать пользовательские команды с двумя такими функциями (или хотя бы с первой) при помощи каких-то внешних костылей, не перекоцывая полностью Total?
Хотелось бы повесить на эти функции клавиатурные сочетания и заодно кнопки для мышатников, но встренных в Тотал таких команд насколько помню нет.
Back to top
View user's profile Send private message
Tol!k



Joined: 01 Apr 2008
Posts: 1727
Location: Арзамас

Post (Separately) Posted: Sun May 16, 2010 10:55    Post subject: Reply with quote

Ищи по форуму текст TCS.Separator
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10417
Location: Россия, Саратов

Post (Separately) Posted: Sun May 16, 2010 11:13    Post subject: Reply with quote

Den_Klimov
Кстати, Гислеру и на бета-форуме улучшения в этом направлении предлагали. Но это будет реализовано (если будет) уже, естественно, не в 7.55, а пока относится к списку "хотелок" для восьмёрки.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы All times are GMT + 4 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group