tag:blogger.com,1999:blog-55665472918526650132024-03-06T13:55:02.477+05:00Blog of one SourceDelphi-Блог © DesweR, 2011-2013DesweRhttp://www.blogger.com/profile/15929310247103053704noreply@blogger.comBlogger2125tag:blogger.com,1999:blog-5566547291852665013.post-22789681634682552552012-10-30T08:41:00.001+06:002012-10-30T08:41:57.599+06:00Долгожданные "Undo" и "Redo" в дизайнере форм Delphi. Уже скоро!<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
Уже совсем скоро для дизайнера форм Delphi появится такой замечательный инструмент, как <b>история изменений</b>.</div>
<div style="text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.youtube.com/embed/TB5Min57uQo?feature=player_embedded' frameborder='0'></iframe></div>
<div style="text-align: left;">
<a name='more'></a><br />
Данный инструмент будет реализован в эксперте для IDE (если кому интересно, реализация отталкивается от IDesignNotification и сериализации).</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
Первоначально я рассчитывал закончить работу в течении недели, но дьявол, как известно, кроется в деталях и процесс растянулся уже на два месяца... ну а чтобы он не растягивался на год - для собственной стимуляции публикую пока данный пост.</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
На текущий момент реализовано: отслеживание создания/удаления/изменения компонентов, ведение истории состояний компонентов и операции Undo/Redo по истории состояний компонентов.</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
Из не реализованного: некоторые возможности, нюансы и ситуации.</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
В общем ожидайте :-)</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
P.S. бесплатно и с открытым исходным кодом.</div>
</div>
DesweRhttp://www.blogger.com/profile/15929310247103053704noreply@blogger.com7tag:blogger.com,1999:blog-5566547291852665013.post-40558492515932787332011-09-01T11:23:00.011+06:002012-01-20T13:38:30.295+06:00SplitEditors v1.0 - разделение редактора кода<center><table border="0" width="100%" cellspacing="8" id="table1"> <tr>
<td valign="top"><br />
<p align="justify"><div dir="ltr" style="text-align: justify;" trbidi="on"> <strong>SplitEditors</strong> - эксперт для среды разработки Delphi (совместимый, как с Delphi 7, так и Delphi XE), позволяющий разделять редактор кода на две и более частей с выбором ориентации, как по горизонтали, так и по вертикали.</div><a name='more'></a><br />
<div dir="ltr" style="text-align: left;" trbidi="on"><div class="separator" style="clear: both; text-align: left;"><center><iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.youtube.com/embed/R1dHuekT0ao?feature=player_embedded' frameborder='0'></iframe></div></div></center><br />
<br />
<div dir="ltr" style="text-align: justify;" trbidi="on"> Если на пальцах, эксперт работает по следующей схеме:<br />
• создаётся "клон" текущего окна редактора кода (посредством Action'а "New Edit Window");<br />
• в текущем окне редактора кода создаются TPanel и TSplitter;<br />
• "клону" текущего окна редактора кода назначается родителем (SetParent) созданный TPanel.</div><br />
<div dir="ltr" style="text-align: justify;" trbidi="on"> В реальности, схема будет немного посложнее, т.к. одни нюансы приходится учитывать, другие по возможности обходить, а с третьими просто мириться (очень сильно сказывается отсутствие поддержки со стороны Open Tools API).<br />
<br />
И честно говоря, текущая версия эксперта по сути является бетой, в дальнейшем (но не скоро) планирую довести до ума настолько, насколько это возможно.</div><br />
<div dir="ltr" style="text-align: justify;" trbidi="on"><a href="https://sites.google.com/site/failopomoikarw3rw3rw3/home/drWizardSplitEditors.1.0.zip?attredirects=0&amp;d=1" target="_blank"><strong>Скачать SplitEditors v1.0</strong></a></div></td>
<td valign="top"><br />
<p align="right"><div dir="ltr" style="text-align: left;" trbidi="on"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivybj310ZITHl9IuDXeIrpYqC0_50urdXJQkAwzJ9HDMeXft-9Ot4WsQrpl4fNjp8Oyx1IlV2TKcumXDjlbwSJShletfF6mOB_pmLnUiXp-O1XuEajlftUDke9Foinnj3p10_d9NrrVjI/s1600/1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="93" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivybj310ZITHl9IuDXeIrpYqC0_50urdXJQkAwzJ9HDMeXft-9Ot4WsQrpl4fNjp8Oyx1IlV2TKcumXDjlbwSJShletfF6mOB_pmLnUiXp-O1XuEajlftUDke9Foinnj3p10_d9NrrVjI/s200/1.PNG" width="200" /></a></div><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjS9HblCxrtOry-FWpjClGGvq_vKaGd7E1_ObIFi2C6mCuC8snHlwFV3ayBG0cfngw-AtxvgQU4U5fki7x7gNHp-hDescB-M2WC34tbKo8cSP1h2ykQz5gSZBzdOrXiWbP6LbAJwvj8Ng8/s1600/2.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="142" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjS9HblCxrtOry-FWpjClGGvq_vKaGd7E1_ObIFi2C6mCuC8snHlwFV3ayBG0cfngw-AtxvgQU4U5fki7x7gNHp-hDescB-M2WC34tbKo8cSP1h2ykQz5gSZBzdOrXiWbP6LbAJwvj8Ng8/s200/2.PNG" width="200" /></a></div><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhopeBLZE3Am91c9RRmUp8UktmdHx3taQnPbMb4momikgNMYGmnlOQlA6SvBu6azTlmI7hczsd8MQ5HhQXpkbVwxcBTcpejOkZaPi50C7Y2AWF_kDe6C_spC8H58jnkSa73t0gc5VSkguc/s1600/3.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="142" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhopeBLZE3Am91c9RRmUp8UktmdHx3taQnPbMb4momikgNMYGmnlOQlA6SvBu6azTlmI7hczsd8MQ5HhQXpkbVwxcBTcpejOkZaPi50C7Y2AWF_kDe6C_spC8H58jnkSa73t0gc5VSkguc/s200/3.PNG" width="200" /></a></div><br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5Yq4xKJXLhTtZ8_W4Rt0eYQi2H9_hIRGGXfF5XFf4HWZDvUhwpMTgKHXkBHYVdxthki4R9PvqmNCGAet4DdVFM_c-PskaatVfVaRs1MG3YtH3AkoLNalvHx0cBaZAaf-xr0Ko0TP2X_I/s1600/4.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="108" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5Yq4xKJXLhTtZ8_W4Rt0eYQi2H9_hIRGGXfF5XFf4HWZDvUhwpMTgKHXkBHYVdxthki4R9PvqmNCGAet4DdVFM_c-PskaatVfVaRs1MG3YtH3AkoLNalvHx0cBaZAaf-xr0Ko0TP2X_I/s200/4.PNG" width="200" /></a></div><br />
</div></td>
</tr>
</table></center>DesweRhttp://www.blogger.com/profile/15929310247103053704noreply@blogger.com2