Что нового

Todo-prog: блокнот для быстрых заметок в стиле Aston Shell.

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
От WS_EX_COMPOSITED придется отказаться.
 
Автор
Pelerin

Pelerin

Осваивающий
Сообщения
81
Репутация
23
Итак, не прошло полу века как я написал следующую версию (см. первый пост).

Вроде все работает, боков не обнаружено. Но код еще требует напильника. Потому пока beta

Прошу любить, жаловать, тестировать и предлагать. :smile:

PS: Yashied, к сожалению от вкладок пришлось отказаться, кнопки тоже не вариант, перешел на TreeView
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Удали последнюю запись и посмотри, что получится =) Непорядок...
 
Автор
Pelerin

Pelerin

Осваивающий
Сообщения
81
Репутация
23
Medic84
Да... вроде и пытался это предотвратить. Но чего-то снова вылезло.
Спасибо, уже исправил.
 
Автор
Pelerin

Pelerin

Осваивающий
Сообщения
81
Репутация
23
Обновил версию. Подробно - сабж.
Теперь нормальная рабочая прога, без явных "заносов" :ok:

Странно... я баги исправляю быстрее чем их кто-нибудь замечает :scratch:
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
OffTopic:
Pelerin [?]
Странно... я баги исправляю быстрее чем их кто-нибудь замечает
Когда ваша программа, обретёт своего многочисленного пользователя, всё встанет на свои места. Не переживайте! ;D
 

sngr

AutoIT Гуру
Сообщения
1,010
Репутация
408
Pelerin, у тебя в коде используется AutoItSetOption("TrayIconHide", 1), который согласно справке, показывает иконку первые 750 мс, а затем прячет. Не лучше ли использовать #NoTrayIcon? Ещё было бы неплохо иметь возможность указывать пути файлов, в которые сохраняется текст. В остальном за программу респект.
 
Автор
Pelerin

Pelerin

Осваивающий
Сообщения
81
Репутация
23
sngr
- Спасибо. Уже исправил.

указывать пути файлов, в которые сохраняется текст
- Была идея сделать опциональный путь к папке складирования заметок, но чтобы разные пути для разных заметок... Не знаю на сколько это надо... И как это реализовать? В каком виде хранить пути?
--------------------------------------------
Обновил архив - несколько мелких фиксов и исправил ошибки в русском переводе. Версию не менял
 

sngr

AutoIT Гуру
Сообщения
1,010
Репутация
408
Хранить пути в ini файле, где у каждого файла будет своя секция.
Код:
[settings]
;
;
[noname]
path=C:\noname.txt
Код:
#include 'array.au3'
$ini=IniReadSectionNames(@ScriptDir &'\Todo-prog_v2.ini')
Dim $arr[1]
For $i=2 to $ini[0]
	_ArrayAdd($arr,IniRead(@ScriptDir &'\Todo-prog_v2.ini',$ini[$i],'path','no'))
Next
_ArrayDelete($arr,0)
_ArrayDisplay($arr)

Так можно получить список файлов вместо _FileListToArray. Можно сделать выбор при создании файла. Так же можно в функцию SaveText прикрутить возможность сохранять текст в определённой кодировке с помощью encoding.au3, которая есть здесь на сайте.
 

---Zak---

Скриптер
Сообщения
455
Репутация
120
Добрый день... Решил посмотреть, что да как...задумка интересная.
Хотя на всех не угодишь, но может что-нибудь придумать с исчезновением окна, если оно не активно. Задумайтесь кто очень часто пользуется копипэйстом... Если честно - по началу думал, что она свернулась куда-то и начал искать ее. Пришлось заново запускать. (нашел опцию)

Интересует еще один вопрос: "Alt+F4 - прозрачность"... решил опробовать сразу же... был приятно удивлен.
 
Автор
Pelerin

Pelerin

Осваивающий
Сообщения
81
Репутация
23
sngr
"Хранить пути в ini файле, где у каждого файла будет своя секция." - не пойму для чего это может в жизни пригодится... По идее получается что при создани нового файла нужно будет еще и указать для него путь: типа нажать кнопку..., пролистать дерево папок..., найти заветную папочку в самом его конце... Теряется легкость и скорость создания заметки.

Но в принципе можно сделать такую вещь:
Научить подключать разные папки в которых будут лежать заметки.
При старте просматривать все папки на предмет наличия файлов (любых txt)
При создании нового предлагать на выбор "подключенные" папки. Т.е. не все дерево, а только несколько вариантов.
Может лучше так?
--------------------

" encoding.au3" - неужели UTF-а мало? :blink:
---------------------

Исправил одну ошибочку с выделением не существующей заметки.
Сейчас хочу прикрутить стандартный диалог печати с выбором принтера.
Может кто подскажет как это сделать?


Добавлено:
Сообщение автоматически объединено:

---Zak---
Интересует еще один вопрос: "Alt+F4 - прозрачность"... решил опробовать сразу же... был приятно удивлен.
А в чем вопрос? :whistle:
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Pelerin [?]
Сейчас хочу прикрутить стандартный диалог печати с выбором принтера.
Посмотрите примеры к функциям _WinAPI_PrintDlg() и _WinAPI_PrintDlgEx() из WinAPIEx.au3.
 
Автор
Pelerin

Pelerin

Осваивающий
Сообщения
81
Репутация
23
Обновил архив:
8. Исправлен баг при удалении заметок (терялся текст соседней)
9. Подшаманен интерфейс (удалены лишние кнопки "ok" в диалогах)
10. Поправлен перевод на руcский и украинский
11. Справка по горячим клавишам теперь тоже переводится
 

sngr

AutoIT Гуру
Сообщения
1,010
Репутация
408
Если свернуть окно, оно сворачивается в панель задач. Баг?
 
Автор
Pelerin

Pelerin

Осваивающий
Сообщения
81
Репутация
23
sngr
Да вроде я так и планировал.. А что ты от него ожидал? При сворачивани оно сворачивается. Если его закрыть из такого положения, то при следующем запуске оно сразу вернется в свернутый режим.


Добавлено:
Сообщение автоматически объединено:

PS: есть другие предложения?
 

sngr

AutoIT Гуру
Сообщения
1,010
Репутация
408
Как я понимаю, идея программы в том, что при уходе фокуса с окна, программа закрывается, текст сохраняется. Когда я минимизирую окно программы, фокус переходит на другие окна. В моём понимании, программа должна закрыватся во всех случаях, если только не задать таймаут в настройках.
 
Автор
Pelerin

Pelerin

Осваивающий
Сообщения
81
Репутация
23
sngr
Идея да. А если окно мешает, но закрывать его не хочется пока... Тогда можно свернуть и оно останется. А если надо чтобы закрылось, так и оставляй его как есть... Если сильно надо то можно сделать так:
Код:
; В основном цикле:
		Case $msg = $GUI_EVENT_MINIMIZE
			$Set[4] = @SW_SHOWDEFAULT; чтобы при следующем открытии оно не свернулось
; ..............
; добавить условие закрытия WinGetState($win) = 23 или WinGetState($win) <> 23 в функцию
Func Exit_Timer()
	$Set[16] = _GUICtrlSwitchState('', $Set[16], False, True)
	If $Set[16] = True And $GUI_Child = -1 Then
		If WinGetState($win) = 7 Or WinGetState($win) = 39 Or WinGetState($win) = 23 Then
			$timer = TimerInit()
			Do
				If WinGetState($win) <> 7 And WinGetState($win) <> 39 And WinGetState($win) <> 23 Then ExitLoop
			Until TimerDiff($timer) >= $Set[15]
			If WinGetState($win) = 7 Or WinGetState($win) = 39 Or WinGetState($win) = 23 Then MyExit()
		EndIf
	EndIf
EndFunc   ;==>Exit_Timer
 
Автор
Pelerin

Pelerin

Осваивающий
Сообщения
81
Репутация
23
Просьба у кого Vista или Seven проверьте нет ли глюка (на ХР есть):
при включеной прозрачности и переключении по Alt+Tab между окнами (туда сюда), резко возрастает нагрузка на процессор до 99% и иногда пропадает прозрачность.
Хочу понять это у меня код корявый или дело в "недопрозрачности" в ХР? Я так понимаю в семерке этот механизм продвинутей.


Добавлено:
Сообщение автоматически объединено:

Уже исправил: оказалось надо было поставить sleep в функцию Exit_Timer
 
Автор
Pelerin

Pelerin

Осваивающий
Сообщения
81
Репутация
23
damien2008
замечен баг: на Windows 7 32 bit
Прошу прощения что отвею поздно - некоторое время не появлялся на форуме.

По вопросу:
1. на Win 7 64 bit работает (у меня)
2. попробуй в ini-файле прописать "nonactive_close_timeout" по-больше - возможно какое-то окно вылезло поверх (прога поумолчанию закрывается если ее окно не активно)
3. Или убей ини файл и запусти "снуля"
4. Накрайняк попробуй перекачать архив - сейчас залью последнюю версию (тут улучшена многоязыковая поддержка и пару мелких изменений) но глобально ничего не менял...

Возможности проверить на win 7 32 bit нету поэтому буду признателен если найдешь в моем исходнике баг и ткнешь мне пальцем.

PS: какую версию качал? первую или вторую? они существенно отличаются..
 
Верх