+void BufferViewFilter::addBuffers(const QList<BufferId> &bufferIds) const {
+ if(!config())
+ return;
+
+ QList<BufferId> bufferList = config()->bufferList();
+ foreach(BufferId bufferId, bufferIds) {
+ if(bufferList.contains(bufferId))
+ continue;
+
+ int pos = bufferList.count();
+ bool lt;
+ for(int i = 0; i < bufferList.count(); i++) {
+ if(config() && config()->sortAlphabetically())
+ lt = bufferIdLessThan(bufferId, bufferList[i]);
+ else
+ lt = bufferId < config()->bufferList()[i];
+
+ if(lt) {
+ pos = i;
+ bufferList.insert(pos, bufferId);
+ break;
+ }
+ }
+ config()->requestAddBuffer(bufferId, pos);
+ }
+}
+