소스 검색

Delete section

Kandrashin Denis 12 년 전
부모
커밋
c453ae474b
2개의 변경된 파일19개의 추가작업 그리고 0개의 파일을 삭제
  1. 16 0
      source/fb2text.cpp
  2. 3 0
      source/js/new_section.js

+ 16 - 0
source/fb2text.cpp

@@ -285,6 +285,22 @@ void FbTextPage::createSection()
 
 void FbTextPage::deleteSection()
 {
+    FbTextElement element = current();
+    while (!element.isNull()) {
+        if (element.isSection()) {
+            FbTextElement parent = element.parent();
+            FbTextElement subling = element.previousSibling();
+            QString xml = element.toInnerXml();
+            element.setOuterXml(xml);
+            if (subling.isNull()) {
+                parent.select();
+            } else {
+                subling.nextSibling().select();
+            }
+            break;
+        }
+        element = element.parent();
+    }
 }
 
 FbTextElement FbTextPage::current()

+ 3 - 0
source/js/new_section.js

@@ -29,4 +29,7 @@ range.setEndAfter(end);
 var newNode=document.createElement("div");
 newNode.className="section";
 range.surroundContents(newNode);
+range.setEndBefore(start);
+selection.removeAllRanges();
+selection.addRange(range);
 })()