Strona 1 z 1
Edycja menu kontekstowego
: śr gru 31, 2014 2:50 pm
autor: Judykator
Czy da się coś dołożyć do menu kontekstowego Writera (pod prawym przyciskiem myszy). Konkretnie chciałbym tam dodać polecenie wstawienia zakładki.
Re: Edycja menu kontekstowego
: śr gru 31, 2014 8:32 pm
autor: Astur
Przypuszczam, że jest to niemożliwe.
Wstaw sobie stosowny przycisk do paska narzędzi formatowania.
Re: Edycja menu kontekstowego
: śr gru 31, 2014 8:38 pm
autor: Judykator
Astur pisze:
Wstaw sobie stosowny przycisk do paska narzędzi formatowania.
To mam, ale wygodniej byłoby po zaznaczeniu tekstu nie jechać myszą do góry, tylko PPM. Ale jak nie można to nie można.
Re: Edycja menu kontekstowego
: czw sty 01, 2015 11:28 pm
autor: Jan_J
Myślę, że się da, ale trzeba programować, co najmniej na poziomie makra. Są nawet wskazówki dla chętnych:
https://wiki.openoffice.org/wiki/Docume ... text_Menus.
Jak widać, pewna początkowa wiedza i motywacja są niezbędne, żeby podjąć wysiłek.
Re: Edycja menu kontekstowego
: pt sty 02, 2015 10:15 pm
autor: belstar
Zmodyfikowane programowo (basic) menu kontekstowe, procedura uruchamiana przy starcie dokumentu i zatrzymywana przy zamykaniu.
Edit:
Zamiana załącznika na lepszą wersje.
Re: Edycja menu kontekstowego
: sob sty 03, 2015 1:32 pm
autor: Judykator
A może taka modyfikacja. By zaznaczenie było tylko domyślną nazwą zakładki (wstawianą do okna o którym mowa dalej ) ale generalnie żeby otwierało się okno gdzie można wpisać własną nazwę. Może to być okno "Wstaw zakładkę".
Re: Edycja menu kontekstowego
: sob sty 03, 2015 2:25 pm
autor: belstar
Myślałem, widać źle, że ta wersja będzie najlepsza i stąd mój wybór, ale do twoich potrzeb wszystko masz już w pliku. Cała zabawa polega na zmianie nazw procedur wstawiających zakładkę. W module 2 masz dwie dodatkowe procedury o nazwach
WriterBookmark_test i
WriterBookmark_test1, pierwsza nie działa tak jak powinna ale druga jest OK. Kolejne kroki do wykonania to:
1. Otwórz edytor basic - Narzędzia -> Makra -> Zarządzaj makrami -> OpenOffice Basic (LibreOffice Basic).
2. Zaznacz modył2 i wciśnij edytuj
3. W lini
sub WriterBookmark_test1 usuń
_test1 tak by pozostało
sub WriterBookmark.
4. Przejdź do miodułu3 (zakładki na dole jak w calcu).
5. W lini
Sub WriterBookmark (pierwsza linia kodu) dopisz coś np. 1 (
Sub WriterBookmark1 - po modyfikacji).
To już wszystko zapisz zmiany i wypróbuj działanie na dokumencie. tak wstawiona zakładka będzie nosić nazwę zakładka1, jeśli już takiej nie ma a kolejne zakładka11, zakładka12. itd
Co do własnej nazwy (okienko do wpisania nazwy) to z wywołaniem oryginalnego okienka mam problem (nie znam sposobu). Pewnym rozwiązanie może być użycie funkcji basica
InputBox(). Cała procedura
WriterBookmark Może wyglądać tak:
Kod: Zaznacz cały
sub WriterBookmark
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Bookmark"
Nazwa = InputBox("Wpisz nazwę nowej zakładki", "Nazwa zakładki", "Zakładka1")
If nazwa = "" then Exit Sub
args1(0).Value = Nazwa
dispatcher.executeDispatch(document, ".uno:InsertBookmark", "", 0, args1())
end sub