AkelPad Forum Index AkelPad
Support forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

NoSelEOL plugin
Goto page Previous  1, 2, 3, 4, 5  Next
 
Post new topic   This topic is locked: you cannot edit posts or make replies.    AkelPad Forum Index -> Plugins
View previous topic :: View next topic  
Author Message
DV



Joined: 16 Nov 2006
Posts: 856
Location: Kyiv, Ukraine

PostPosted: Wed Sep 02, 2009 9:48 am    Post subject: Reply with quote

Пожалуй, во второй ситуации реализация "прямее". А в случае первой каретка в начале любой строки (в том числе реальной, не-WordWrap-овой строки) по нажатию End неудержимо хочет прыгнуть в конец предыдущей строки.

Пробуем:
http://www.megaupload.com/?d=DXNY0N9J
Back to top
View user's profile Send private message
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5507

PostPosted: Wed Sep 02, 2009 10:40 am    Post subject: Reply with quote

DV
Почему бы не передать на обработку программе перехваченный WM_KEYDOWN, когда требуется установить курсор в конце строки?
Back to top
View user's profile Send private message Send e-mail
DV



Joined: 16 Nov 2006
Posts: 856
Location: Kyiv, Ukraine

PostPosted: Wed Sep 02, 2009 11:38 am    Post subject: Reply with quote

Instructor wrote:
DV
Почему бы не передать на обработку программе перехваченный WM_KEYDOWN, когда требуется установить курсор в конце строки?

В принципе, результат тот же, только более "прямым" путём Smile

Пробуем:
http://www.megaupload.com/?d=62KNSFOJ
Back to top
View user's profile Send private message
VladSh



Joined: 29 Nov 2006
Posts: 2701
Location: Киев, Русь

PostPosted: Wed Sep 02, 2009 12:31 pm    Post subject: Reply with quote

Есть интересный трабл но всё равно значительно лучше!
Спасибо оргомадное! Smile

Суть трабла: если нажать End, то курсор уходит нормально в конец текущей строки, если 2-й раз нажать End, то курсор уйдёт в конец следующей.
Это так работает только если курсор изначально установлен в предпоследней строке предложения.
Back to top
View user's profile Send private message Visit poster's website
DV



Joined: 16 Nov 2006
Posts: 856
Location: Kyiv, Ukraine

PostPosted: Wed Sep 02, 2009 12:42 pm    Post subject: Reply with quote

VladSh wrote:
Есть интересный трабл

Да, есть такое.
Появилась у меня еще одна идейка: в такой ситуации заставить окно редактирования обработать нажатие End, чтобы узнать, изменится позиция каретки (тогда мы, значит, в начале строки) или нет (тогда мы уже в конце строки). И реагировать на это соответственно. Благо, есть команда WM_SETREDRAW, позволяющая запретить перерисовку окна на то время, пока окно будет гонять картеку туда-сюда.
Если получится, можете поставить свечку за моё здравие Smile) Шутка Wink
Back to top
View user's profile Send private message
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5507

PostPosted: Wed Sep 02, 2009 1:44 pm    Post subject: Reply with quote

DV
Code:
SendMessage(hWndEdit, EM_EXLINEFROMCHAR, 0, (LPARAM)-1);
Возвращает номер строки, на которой находится курсор.
Back to top
View user's profile Send private message Send e-mail
DV



Joined: 16 Nov 2006
Posts: 856
Location: Kyiv, Ukraine

PostPosted: Thu Sep 03, 2009 9:04 am    Post subject: Reply with quote

Instructor wrote:
Возвращает номер строки, на которой находится курсор.

Нифига себе! Shocked Какой магией я должен был обладать, чтобы узнать об этом??? Ведь сраный MSDN (MuStDieNow) умалчивает про магический параметр -1.

Пробуем:
http://www.megaupload.com/?d=4Q5EDPKP
Back to top
View user's profile Send private message
VladSh



Joined: 29 Nov 2006
Posts: 2701
Location: Киев, Русь

PostPosted: Thu Sep 03, 2009 12:55 pm    Post subject: Reply with quote

Instructor, DV
Нет парни, вы монстры! Cool
Спасибо!!!
Back to top
View user's profile Send private message Visit poster's website
DV



Joined: 16 Nov 2006
Posts: 856
Location: Kyiv, Ukraine

PostPosted: Fri Sep 04, 2009 7:13 am    Post subject: Reply with quote

VladSh wrote:
Нет парни, вы монстры! Cool

Работает без дефектов?
Back to top
View user's profile Send private message
VladSh



Joined: 29 Nov 2006
Posts: 2701
Location: Киев, Русь

PostPosted: Fri Sep 04, 2009 8:19 am    Post subject: Reply with quote

Да, пока дефектов не наблюдаю. Работает отлично!
Если что-то будет, то опять обращусь Smile куда ж я денусь с подводной лодки-то... Laughing
Back to top
View user's profile Send private message Visit poster's website
VladSh



Joined: 29 Nov 2006
Posts: 2701
Location: Киев, Русь

PostPosted: Fri Sep 04, 2009 11:39 am    Post subject: Reply with quote

DV
Есть всё-таки небольшой баг. Если выделить текст, начиная от конца строки (даже несколько символов), то End не работает. Приходится сбрасывать выделение клавишами Left или Right, а потом уже жать End.
Back to top
View user's profile Send private message Visit poster's website
DV



Joined: 16 Nov 2006
Posts: 856
Location: Kyiv, Ukraine

PostPosted: Sat Sep 05, 2009 11:07 am    Post subject: Reply with quote

VladSh wrote:
Есть всё-таки небольшой баг

Это была оптимизация Wink

Пробуем:
http://ifolder.ru/13860681
Back to top
View user's profile Send private message
VladSh



Joined: 29 Nov 2006
Posts: 2701
Location: Киев, Русь

PostPosted: Sun Sep 06, 2009 2:52 pm    Post subject: Reply with quote

Теперь выделение сбрасывается, но курсор становится за последним значащим символом, а не в конец строки (когда в конце строки есть пробел); такое поведение, как будто AltSmartEnd не загружен.
Back to top
View user's profile Send private message Visit poster's website
DV



Joined: 16 Nov 2006
Posts: 856
Location: Kyiv, Ukraine

PostPosted: Sun Sep 06, 2009 3:50 pm    Post subject: Reply with quote

VladSh wrote:
Теперь выделение сбрасывается, но курсор становится за последним значащим символом, а не в конец строки (когда в конце строки есть пробел); такое поведение, как будто AltSmartEnd не загружен.

???
Back to top
View user's profile Send private message
VladSh



Joined: 29 Nov 2006
Posts: 2701
Location: Киев, Русь

PostPosted: Sun Sep 06, 2009 5:49 pm    Post subject: Reply with quote

DV wrote:
???
В конце предложения ставим пробел, затем сразу же, с этого пробела, начинаем выделять кусок строки влево, потом жмём End, глядим, куда прыгнет курсор.
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   This topic is locked: you cannot edit posts or make replies.    AkelPad Forum Index -> Plugins All times are GMT
Goto page Previous  1, 2, 3, 4, 5  Next
Page 3 of 5

 
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


SourceForge.net Logo Powered by phpBB © 2001, 2005 phpBB Group