Механизм Drag&drop Во Вьюшке Лотуса.

  • Автор темы Автор темы savl
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

savl

Lotus Team
28.10.2011
2 649
318
Добрый день.
Искал данную тему на форме, часть информации нашел, но в целом не подходит.

Ситуация такая:
есть потребность перемещать документы в пределах вьюшки ака файлы в папках Windows...
Выделили перетащили вверх/вниз - порядок изменился, так как поменяются поля сортировки.

Сделал пока кнопки вверх/вниз работают на ура, НО
Если документов в представлении более 20 (а их будет даже больше), то с самого низа тащиться вверх очень долго.

Кнопки это действительно хорошо и просто, но все же вопрос:
можно ли реализовать полноценный d&d документов в представлении?

я вот механизм представляю, но с реализацией туго... надо определять новую позицию документа(-ов)... кроме как получения координат курсора пока идей нет...

Может у кого есть советы по этому вопросу? может кто сталкивался или слышал...
 
сделай кнопку в самый вверх, в вверх на 10 пунктов :facepalm:
 
Можно сделать кнопку "Переместить перед документом" и перемещать выделенные галочками документы (получение — notesDatabase.UnprocessedDocuments) перед документом, выделенным курсором (получение — notesDatabase.GetDocumentByID(notesUIView.CaretNoteID))
 
Интересно, а кнопками как работает?
Допустим, сделали числовое поле и сортируем по нему.
Тогда при перемещении вниз/вверх нужно менять индекс не только этих документов, но и всех последующих.
Например, перетаскиваем один документ с 20-го на 1-е место. Поле придётся менять у всех 20 документов. А если их будет куда больше и в базе работает больше одного пользователя, то хочется пожелать удачи. :)

Добавлено: ЗЫ. А как в папках Windows это работает?
 
Medevic
не, это плохой подход.
лучше брать соседние и присваивать перемещаемому среднюю.
 
2 oshmianski: Так и делаю, меняю местами.

2 Medevic: пересчет это очень жестоко :)
В Windows если сделать отображение файлов списком или таблицей, то можно выделив файл перетащить его вверх на N позиций.
Главное сортировку выключить)

Вот что-то похожее и хочется сделать.

Есть события D&D для базы и для вьюшки, для последней все примеры на основе календаря.
Вот понимаю, что ответ где-то тут. И чувствую что сделать можно.

2 nvy:
Спасибо, обязательно попробую.
 
Есть события D&D для базы и для вьюшки, для последней все примеры на основе календаря.
Вот понимаю, что ответ где-то тут. И чувствую что сделать можно.
Если верить справке дизайнера, события D&D только для календарных представлений.
 
есть потребность перемещать документы в пределах вьюшки ака файлы в папках Windows...
за многи годы работы с нотуснёй - ниразу не возникало такой странной потребности :)
как и с файлами, даже представить не могу - анакуа?
 
есть представление, в котором будут документики-поля отчета. И вот от порядка этих документов в представлении будут формироваться столбцы отчета в указанном порядке.

Вот чтобы не кликать 10 раз на кнопку вверх, есть идея (да и личное желание) сделать D&D.
Но это только первый шаг...

в идеале хотели сделать аналог ListBoxView (могу ошибаться в названии элемента)
Это нечто подобное той формы, которая вызывается при выборе адресатов письма.
Правда думаю до этого не дойдет...

И в целом: мне кажется, что я слишком заморочился...
 
в идеале хотели сделать аналог ListBoxView (могу ошибаться в названии элемента)
Это нечто подобное той формы, которая вызывается при выборе адресатов письма.
Правда думаю до этого не дойдет...
На чисто лотусовом ГУИ такое вряд ли реализуемо. Но можно попробовать Java.

Добавлено
есть представление, в котором будут документики-поля отчета. И вот от порядка этих документов в представлении будут формироваться столбцы отчета в указанном порядке.
Странная какая-то у Вас реализация. Описание отчёта лучше хранить в одном документе, например, в виде xml.
 
А с помощью контекстного меню?
1. Кликаем на документ правой кнопкой, выбираем в меню *запомнить/перетащить(как назовете)* -> запоминаем UNID
2. Кликаем на другой документ правой кнопкой, выбираем в меню *вставить перед* или *вставить после* тек. документа
 
Странная какая-то у Вас реализация. Описание отчёта лучше хранить в одном документе, например, в виде xml.

поля отчета настраиваемые. можно сделать 2 поля, можно 3 и в разном порядке вывода, к примеру:
вывести фио можно будет так:
1. ф.и.о.
2. и.ф.о.
3. и.ф.
4. ф.и.



susinmn:
хм... слабо представляю, но идея мне нравиться.
 
поля отчета настраиваемые. можно сделать 2 поля, можно 3 и в разном порядке вывода, к примеру:
вывести фио можно будет так:
1. ф.и.о.
2. и.ф.о.
3. и.ф.
4. ф.и.
Что мешает хранить настройки полей отчёта в одном документе?
susinmn:
хм... слабо представляю, но идея мне нравиться.
Для вывода действий представления в контекстном меню нужно в свойствах действия взвести галку Include in right mouse button menu.
 
приболел немного ;)

nvy , можете пояснить: Что мешает хранить настройки полей отчёта в одном документе?

я не представляю, как тогда они будут формировать порядок полей в отчете.
 
я не представляю, как тогда они будут формировать порядок полей в отчете
Например, имена полей отчёта хранятся в многозначном поле настроечного документа, порядок имён полей определяет их порядок появления в отчёте. Можно в других многозначных полях хранить признаки видимости полей отчёта, их типы, шрифты и т.п.
Другой вариант — хранить шаблон отчёта в виде xml, погуглите/почитайте в справке дизайнера про xml, xslt.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab