对于我的日常工作,我使用Xournal使用我的ThinkPad X220 Tablet笔输入笔记。不方便的是,即使在全屏幕上,屏幕顶部也有两个工具栏。它看起来像这样:
我的页面大约有100%的实际A4纸张尺寸。左侧和右侧有未使用的区域,因为这是一个16:9的屏幕。数字化仪在左右屏幕边缘也是非线性的,所以我喜欢在写作时保持清晰。
目前的设置我只有很多高度。工具栏可以向左或向右移动以提供更高的高度,如下所示:
每个图标都会正常定向,我只是在快速模型中没有这样做。
我克隆了git存储库,找到了xournal.glade
文件以及src/xo-interface.{c,h}
。 Fedora 23上的Glade版本抱怨.glade
文件的旧格式,因此我将其转换为gtk-builder-convert xournal.glade xournal-new.glade
并能够打开新文件。
我唯一的GUI体验是使用Qt和Qt Designer。我查看了UI小部件,发现布局包含了我可以从“水平”到“垂直”设置的内容。整个窗口包含在“vbox”中。因此,在原始的,未转换的xournal.glade
文件的XML代码中,我将HORIZONTAL
更改为VERTICAL
,将vbox
更改为hbox
。当我使用make
重新编译项目时,UI看起来是一样的。
我认为我可能必须从Glade中生成一些C代码但却找不到任何东西。 Makefile显然没有调用任何可以将它转换为C代码的东西。
如何在新编辑中显示UI更改?
现在我有更多时间深入研究这个问题。首先我发现在编译过程中并没有真正使用xournal.glade
。更改任何内容都不会影响程序。在编译版本上运行strace src/xournal
我发现它没有使用任何.glade
文件。因此,必须将UI编译到程序中。这一步不能自动,我在makefile中找不到任何东西。
在Fedora 23上,打开xournal.glade
会导致许多错误,弃用警告等。直到今天我才意识到我可以安装glade-2
并打开它。这完美无瑕。我可以更改排序顺序并替换布局以反过来流动。导出功能已更新src/xo-interface.c
,编译后我实际看到了更改后的版本:
这正是我想要的!现在我必须看看我是否可以做任何事情来在运行时更改它,并使其成为一个功能添加,而不仅仅是一个不兼容的分支。