Nie jest to może coś, co będzie interesujące ale mogę wam gwarantować, że wiele rzeczy da się w theme gtk2 zmienić, a wy nie mieliście o tym pojęcia :)
PRZYKŁADOWE USTAWIENIA gtkrc:
GtkButton ::child-displacement-x = 0
GtkButton ::child-displacement-y = 0
GtkButton ::default-border = {0, 0, 0, 0}
GtkButton ::image-spacing = 4
GtkToolButton ::icon-spacing = 4
GtkCheckButton ::indicator-size = 14
GtkEntry ::honors-transparent-bg-hint = 1
GtkEntry ::invisible-char $
GtkEntry ::progress-border $
GtkEntry ::state-hint = 0
GtkProgressBar ::min-vertical-bar-width = 13
GtkProgressBar ::min-horizontal-bar-height = 13
GtkExpander ::expander-size $
GtkMenuBar ::internal-padding = 0
GtkMenuBar ::window-dragging = 1
GtkMenuBar ::internal-padding $
#GtkMenuBar ::shadow-type $
GtkMenuBar ::window-dragging $
GtkMenu ::horizontal-padding = 0
GtkMenu::vertical-padding $
GtkSeparatorMenuItem ::horizontal-padding = 7
GtkNotebook ::tab-overlap = 7
GtkNotebook ::tab-curvature = 14
GtkPaned ::handle-size = 6
... Mamy tu wycinek części tylko ustawień odnośnie różnych elementów wyglądu programów :) A tutaj cała sekwencja, która odnosi się do większości rzeczy: GtkButton::child-displacement-x = 0
GtkButton::child-displacement-y = 0
GtkButton::default-border = {0, 0, 0, 0}
GtkButton::default-outside-border = {0, 0, 0, 0}
GtkButton::displace-focus = TRUE
GtkCheckButton::indicator-size = 10
GtkCheckButton::indicator-spacing = 0
GtkCheckButton::shadow = {0, 0, 0, 0}
GtkPaned::handle-size = 2
GtkRange::trough-border = 0
GtkRange::slider-width = 11
GtkRange::stepper-size = 0
GtkRange::stepper_spacing = 0
GtkRange::trough-under-steppers = 0
GtkRange::shadow = {0, 0, 0, 0}
GtkScale::trough-border = 0
GtkScale::slider-width = 20
GtkScale::slider-length = 10
GtkScale::trough-side-details = 0
GtkScale::shadow = {0, 0, 0, 0}
GtkScrolledWindow::scrollbar-spacing = 0
GtkScrolledWindow::scrollbars-within-bevel = 0
GtkScrolledWindow::shadow = {0, 0, 0, 0}
GtkScrollbar::activate-slider = 0
GtkScrollbar::trough-border = 0
GtkScrollbar::slider-width = 15
GtkScrollbar::slider-hight = 15
GtkScrollbar::min-slider-length = 24
GtkScrollbar::has-backward-stepper = 0
GtkScrollbar::has-secondary-backward-stepper = 0
GtkScrollbar::has-forward-stepper = 0
GtkScrollbar::has-secondary-forward-stepper = 0
GtkScrollbar::default-border = {0, 0, 0, 0}
GtkScrollbar::default-outside-border = {0, 0, 0, 0}
GtkNotebook::tab-overlap = -3
GtkToolbar::internal-padding = 0
GtkToolbar::shadow-type = 0
GtkToolbar::space-size = 0
#GtkToolbar::shadow = {0, 0, 0, 0}
GtkToolbar ::shadow-type = GTK_SHADOW_NONE
GtkExpander::expander-size = 5
GtkExpander::shadow = {0, 0, 0, 0}
GtkTreeView::expander-size = 0
GtkTreeView::vertical-separator = 0
GtkTreeview::shadow-type = GTK_SHADOW_NONE
GtkMenu::horizontal-padding = 0
GtkMenu::internal-padding = 0
GtkMenu::double-arrows = FALSE
GtkMenu::vertical-padding = 0
GtkMenu::shadow = {0, 0, 0, 0}
WnckTasklist::fade-overlay-rect = 1
WnckTasklist::shadow-type = GTK_SHADOW_NONE
GtkEntry::honors-transparent-fg-hint = 0
GtkEntry::honors-transparent-bg-hint = 1
GtkEntry::state-hint = 0
GtkEntry::has-frame = TRUE
GtkEntry::progress-border = {2, 2, 2, 2}
GtkProgressBar::min-horizontal-bar-height = 8
GtkProgressBar::min-horizontal-bar-width = 120
GtkProgressBar::min-vertical-bar-height = 5
GtkProgressBar::min-vertical-bar-width = 10
GtkProgressBar::gtk_progress_bar_set_text = 8
#GtkProgressBar::shadow = {0, 0, 0, 0}
GtkProgressBar::shadow-type = GTK_SHADOW_NONE
GtkMenuBar::shadow = {0, 0, 0, 0}
GtkMenuBar::vertical-padding = 0
GtkMenuBar::internal-padding = 0
GtkMenuBar::horizontal-padding = 0
GtkMenuBar::shadow-type = GTK_SHADOW_NONE
GtkMenuBar::window-dragging = 1
GtkMenuBar::trough-border = 0
GtkWidget::focus-line-width = 0
GtkWidget::focus-line-hight = 0
GtkWidget::shadow = {0, 0, 0, 0}
GtkFrame::label-xalign = 0
GtkFrame::label-yalign = 0
GtkFrame::shadow = {0, 0, 0, 0}
GtkComboBox::has-entry = FALSE
GtkComboBox::popup-shown = TRUE
GtkComboBox::arrow-size = 0
GtkComboBox::shadow = {0, 0, 0, 0}
GtkWindow::resize-grip-height = 0
GtkWindow::resize-grip-width = 0 GtkButton:: - przyciski
GtkScrollbar:: - pasek przesuwania okna
GtkMenuBar:: - menu, które widzimy pod belkom
GtkNotebook:: - odległość zakładek od siebie
GtkToolbar:: - pasek z ikonkami w programach (pod panelem menu)
GtkMenu:: - menu które mamy pod PPM czy po naciśnięciu na menu pod blekom
GtkEntry:: - pole wpisywania nazw (firefox i pole wpisywania adresu strony, czy pole wyszukiwania w programach)
GtkProgressBar:: - pasek postępu
Ale mamy też ustawienia: elementów, którym regulujemy suwaki np. głośności, czy w vlc za to, za co łapiemy kiedy chcemy przewinąć film.
Tak sekcja pliku gtkrc to nic innego jak określenie: marginesów, oraz jaką wielkość ma mieć dany element. I może was zdziwię, ale nie będę tutaj rozwodził się nad każdym z elementów i opisywał go :) A to dlatego, że o każdej opcji z theme gtk2 możecie poczytać na stronie gnome, gdzie wszystko jest fajnie opisane :) np. GtkScrollbar - http://developer.gnome.org/gtk/2.24/GtkScrollbar.html Każda opcja posiada krótki opis - jakie ma opcje do wyboru (cyferkowa czy słowne) itd. Na początku będziecie się czuć zagubieni, ale możecie mi wierzyć: im więcej będziecie sobie SAMI szukać w google i na stronie twórców gnome, tym zaczniecie to szybciej przyswajać :)
Ja tutaj podam kilka fajnych rzeczy, które będę się starał w miarę zrozumiale wytłumaczyć ;)
!!WAŻNE!! # - to określenie, oznaczenie że dana linia (cała linia) jest komentarzem, a nie działającym kodem.
Jest to o tyle ważne, że w ten sposób możecie wyłączyć daną opcję, albo ją włączyć. Jeśli przejrzycie theme gtk2 pobierane z internetu, to zauważycie że twórcy czasami "chaszują" niektóre opcje, które powodowały błędy, ale nie były takie jakie oni by chcieli aby one były. I jak się przekonacie w przykładach poniżej, jest to naturalny proces zmieniania theme, lub jego budowy.
WAŻNE jest też "pamiętanie" czy dana opcja to tylko 0 lub 1, czy wartość: od 0 do np. 55.
Pierwsze uruchamia coś lub wyłącza, zaś drugie określa wielkość.
Warto na to zwracać uwagę.
Pasek postępu - dlaczego on taki duży:
GtkProgressBar::min-horizontal-bar-height = 8
GtkProgressBar::min-horizontal-bar-width = 120
GtkProgressBar::min-vertical-bar-height = 5
GtkProgressBar::min-vertical-bar-width = 10
GtkProgressBar::gtk_progress_bar_set_text = 8
#GtkProgressBar::shadow = {0, 0, 0, 0}
GtkProgressBar::shadow-type = GTK_SHADOW_NONEJest to kod na mniejszy pasek postępu :) Podpowiedzią powinny dla was być słowa: Prograssbar, oraz horizontal i vertical - tak chodzi o pasek poziomy i jeśli się takowy trafi pionowy. Jak się możecie domyślać, to co w poziomie jest długością, w pionie będzie szerokością.
GtkProgressBar::min-horizontal-bar-height = 8
GtkProgressBar::min-horizontal-bar-width = 120 Dlatego pasek postępu odnośnie poziomowego określenia jego szerokości wynosi 120 - jest to optymalna szerokość, im mniejsza wartość tym pasek będzie: krótszy. Określenie wysokości 8 to zmniejszenie go prawie o 2/3, co dużo lepiej się komponuje niż gruby pasek, który zajmuje nam tylko miejsce ;)
GtkProgressBar::min-vertical-bar-height = 5
GtkProgressBar::min-vertical-bar-width = 10Tutaj mamy sytuację odwrotną, czyli wartości są przedstawiane na pasek ułożony z góry na dół. I tak jak to było powyżej, określamy jego szerokość i w tym przypadku wysokość. Ale że takie paski się nie trafiają, wiec określenie ich niskimi wartościami jest po prostu formalnością :)
GtkProgressBar::gtk_progress_bar_set_text = 8Określenie wielkości czcionki w pasek postępu.
GtkProgressBar::shadow-type = GTK_SHADOW_NONEOkreślenie typu, albo raczej jego brak odnośnie paska postępu. Nadaje się tą funkcję, ponieważ nie wszystkie silniki theme potrafią interpretować tą opcję właściwie. Dlatego nakazuje się: że pasek postępu nie ma mieć cienia.
#GtkProgressBar::shadow = {0, 0, 0, 0}I tu mamy właśnie opisany kod, który został określony jako komentarz, po to aby nie był on uwzględniany :) W tym przypadku zostało wyłączone nadawanie cienia, ponieważ opcja = GTK_SHADOW_NONE - go nie określa, a więc ta opcja w pewnym sensie staje się zbędna i zalega nam podczas każdorazowego odwoływania się danego programu do pliku wyglądu.
I zastępując oryginalne ustawienia w gtkrc na poczet tych powyższych, otrzymacie cieńszy pasek postępu, co w moim odczucia prezentuje się dużo lepiej :)
Bo te karty nachodzą na siebie...
GtkNotebook::tab-overlap = -3W tym miejscu możemy sobie ustalić: ile będą od siebie odległe dane karty np. lxterminal, pcmanfm, pidgin - programy opierające się na wyglądzie gtk2.
Pasek przewijania bez znaczników: góra w dół
(nie działa to w chrome)GtkScrollbar::activate-slider = 0
GtkScrollbar::trough-border = 0
GtkScrollbar::slider-width = 15
GtkScrollbar::slider-hight = 15
GtkScrollbar::min-slider-length = 24
GtkScrollbar::has-backward-stepper = 0
GtkScrollbar::has-secondary-backward-stepper = 0
GtkScrollbar::has-forward-stepper = 0
GtkScrollbar::has-secondary-forward-stepper = 0Ważna rzecz, o czym wspomniałem na samym początku: jedne wartości gdzie występują 0 mogą odpowiadać tylko dwóm wartościom: 0 lub 1.
0 - wyłączona
1 - włączone
GtkScrollbar::activate-slider = 0
GtkScrollbar::trough-border = 0To wyłączenie aktywacji znacznika przewijania w momencie: najechania na niego myszką i naciśnięcia na niego myszkom. W tym miejscu też działa powyższe opcja: 0 i 1 - żadna inna.
GtkScrollbar::slider-width = 15
GtkScrollbar::slider-hight = 15To określenie szerokości i wysokości - dzyndzla, którym przesuwamy strony.
GtkScrollbar::min-slider-length = 24To określenie minimalnej wielkości znacznika, nie ważne jakie będzie okna - jeśli ustawimy sobie 30, to taki on być minimalnie. Po co to jest? Aby np. jeśli mamy dość dużą stronę lub w gedit czytamy coś to pasek do przewijania tej zawartości będzie dość: cienki. Aby tego uniknąć określa się jego minimalną wartość, aby było nam łatwiej złapać pasek i nim operować :)
GtkScrollbar::has-backward-stepper = 0
GtkScrollbar::has-secondary-backward-stepper = 0
GtkScrollbar::has-forward-stepper = 0
GtkScrollbar::has-secondary-forward-stepper = 0To określenie stoperów, a więc znaczników: góra na górze i dół na dole. Ale to nie wszystko :) Ponieważ możemy sobie ustawić znaczniki tak jak to miało Kde3, czyli na górze - góra, a na dole: góra i dół. Te właśnie opcje to określają, czy chcemy mieć np. na górze znaczniki: góra i dół, podobnie też na dole, czy może ich wcale nie mieć.
Powyższe opcje wyłączają całkiem te znaczniki z paska przewijania :)
Jeśli chcecie się pobawić to podpowiedzią powinno być: backward, forward i secondary - pobawcie się i dajcie sobie 1 gdzieś i zobaczcie co się stanie :)
Nadmienię, że lxapparance pokazuje wygląd theme, jeszcze przed jego załadowaniem - a więc możecie tam sobie sprawdzać, bez uruchamiania: jak wszystko wygląda :)
Ale jak wspomniałem: google nie gryzie, opis każdej z opcji od twórców gnome daje pewne założenia: o co w tym chodzi. Polecam starszą wersję objaśnień, gdzie twórcy dali obrazek ukazujący poszczególne opcje.
...::space-size = 0
To wolna przestrzeń między danym elementem a krawędziom czy innym elementem.
Więc jak widać, mamy w tym pliku określenie: przestrzeni między danymi elementami, przestrzeni po za tymi elementami, określenie ich wielkości i szerokości, długości i wysokości.
A jak przekonacie się w kolejnym postach - niektóre opcje nie działają, kiedy inne funkcje stanowią całkiem inne rzeczy.
Brak komentarzy:
Prześlij komentarz