Можно ли использовать оператор if-then-else в файле gtk.css для связывания клавиатуры? - PullRequest
1 голос
/ 12 июня 2019

Здесь Можно ли использовать только клавиши со стрелками, чтобы развернуть узел дерева в проводнике пакетов в Eclipse в Linux? Я нашел хорошую идею для изменения поведения дерева в Eclipse. Я хотел бы улучшить его, но я не знаю, как это сделать, потому что я не нашел пример использования оператора if-then-else в файле конфигурации gtk.css.

Я нашел пару методов "test-collapse-row" и "test-expand-row" в ссылке ниже https://developer.gnome.org/gtk3/stable/GtkTreeView.html#GtkTreeView-select-cursor-row, чтобы проверить текущую строку на расширяемой или нет. Я попытался найти пример с условием для привязки клавиш CSS, но пока не нашел.

@binding-set MyTreeViewBinding
{
   bind "Left"     { "select-cursor-parent" ()
                  "expand-collapse-cursor-row" (0,0,0) };
   /* I've try code below instead code above - isn't work
   bind "Left"     { if ("test-expand-row" ()) 
                         "expand-collapse-cursor-row" (0,0,0) 
                     else 
                         "select-cursor-parent" () }; */
   bind "Right"    { "expand-collapse-cursor-row" (0,1,0) };
}

treeview
{
   -gtk-key-bindings: MyTreeViewBinding;
}

Мне нужно, если это узел, а он не свернут, свернуть его, но если это не узел или уже свернут, установить указатель на родителя, но не свернуть его.

...