官术网_书友最值得收藏!

The ImageEditor application

In this chapter, we will build an application that can be used to edit images, so we will name it ImageEditor. To edit an image with a GUI application, the first step is opening and viewing the image with that application, which is what we did in the previous chapter. Therefore, I decided to make a copy of the ImageViewer application and rename it ImageEditor, before adding the image editing features to it.

Let's start by copying the sources:

    $ mkdir Chapter-02
$ cp -r Chapter-01/ImageViewer/ Chapter-02/ImageEditor
$ ls Chapter-02
ImageEditor
$ cd Chapter-02/ImageEditor
$ make clean
$ rm -f ImageViewer

With these commands, we copy the ImageViewer directory under the Chapter-01 directory to Chapter-02/ImageEditor. Then, we can enter that directory, run make clean to clean all intermediate files that were generated in the compiling process, and remove the old target executable file using rm -f ImageViewer.

 Now that we have a cleaned project, let's rename some of it:

  • The project directory is named with the new project name ImageEditor in the copying process, so we don't need to do anything here.
  • The Qt project file, ImageViewer.pro, should be renamed to ImageEditor.pro. You can do this in your file manager or in a Terminal.
  • In the ImageEditor.pro file, we should rename the TARGET to ImageEditor by changing the TARGET = ImageViewer line to TARGET = ImageEditor.
  • In the source file, main.cpp, we should change the window title by changing the window.setWindowTitle("ImageViewer"); line to window.setWindowTitle("ImageEditor");.

Now that everything has been renamed, let's compile and run the new ImageEditor application, which has been copied from ImageViewer:

    $ qmake -makefile
$ make
g++ -c -pipe ...
# output truncated
# ...
$ ls
ImageEditor ImageEditor.pro main.cpp main.o mainwindow.cpp mainwindow.h
mainwindow.o Makefile moc_mainwindow.cpp moc_mainwindow.o moc_predefs.h
$ export LD_LIBRARY_PATH=/home/kdr2/programs/opencv/lib/
$ ./ImageEditor

You will see that the window is exactly the same as the window of ImageViewer, except that it has a different window title, ImageEditor. Anyway, we have set our editor application up, even though it has no feature for image editing now. We will add a simple editing feature in the next chapter.

主站蜘蛛池模板: 奉贤区| 彭山县| 荣昌县| 肃南| 惠水县| 兰考县| 安阳县| 清流县| 金湖县| 东乡| 中牟县| 教育| 赤城县| 若尔盖县| 丁青县| 大新县| 资阳市| 桃园市| 巩义市| 汉阴县| 湖州市| 昌宁县| 泰和县| 和静县| 奈曼旗| 许昌市| 屯昌县| 定日县| 建昌县| 井研县| 轮台县| 文化| 资阳市| 甘泉县| 景东| 天津市| 苏尼特右旗| 安化县| 武夷山市| 铜山县| 沙坪坝区|