Sat, 14 Jun 2014 09:05:29 +0300
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1 | /* | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
2 | * LDForge: LDraw parts authoring CAD | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
3 | * Copyright (C) 2013, 2014 Santeri Piippo | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
4 | * | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
5 | * This program is free software: you can redistribute it and/or modify | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
6 | * it under the terms of the GNU General Public License as published by | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
7 | * the Free Software Foundation, either version 3 of the License, or | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
8 | * (at your option) any later version. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
9 | * | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
10 | * This program is distributed in the hope that it will be useful, | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
13 | * GNU General Public License for more details. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
14 | * | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
15 | * You should have received a copy of the GNU General Public License | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
16 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
17 | */ | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
18 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
19 | #include <QGridLayout> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
20 | #include <QMessageBox> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
21 | #include <QEvent> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
22 | #include <QContextMenuEvent> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
23 | #include <QMenuBar> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
24 | #include <QStatusBar> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
25 | #include <QSplitter> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
26 | #include <QListWidget> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
27 | #include <QToolButton> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
28 | #include <QComboBox> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
29 | #include <QDialogButtonBox> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
30 | #include <QToolBar> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
31 | #include <QProgressBar> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
32 | #include <QLabel> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
33 | #include <QFileDialog> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
34 | #include <QPushButton> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
35 | #include <QCoreApplication> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
36 | #include <QTimer> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
37 | #include <QMetaMethod> | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
38 | #include "main.h" | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
39 | #include "glRenderer.h" | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
40 | #include "mainWindow.h" | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
41 | #include "ldDocument.h" | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
42 | #include "configuration.h" | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
43 | #include "miscallenous.h" | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
44 | #include "colors.h" | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
45 | #include "editHistory.h" | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
46 | #include "radioGroup.h" | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
47 | #include "addObjectDialog.h" | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
48 | #include "messageLog.h" | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
49 | #include "configuration.h" | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
50 | #include "ui_ldforge.h" | 
| 
790
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
51 | #include "primitives.h" | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
52 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
53 | static bool g_isSelectionLocked = false; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
54 | |
| 
757
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
55 | CFGENTRY (Bool, colorizeObjectsList, true); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
56 | CFGENTRY (String, quickColorToolbar, "4:25:14:27:2:3:11:1:22:|:0:72:71:15"); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
57 | CFGENTRY (Bool, listImplicitFiles, false); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
58 | EXTERN_CFGENTRY (List, recentFiles); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
59 | EXTERN_CFGENTRY (Bool, drawAxes); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
60 | EXTERN_CFGENTRY (String, mainColor); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
61 | EXTERN_CFGENTRY (Float, mainColorAlpha); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
62 | EXTERN_CFGENTRY (Bool, drawWireframe); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
63 | EXTERN_CFGENTRY (Bool, bfcRedGreenView); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
64 | EXTERN_CFGENTRY (Bool, drawAngles); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
65 | EXTERN_CFGENTRY (Bool, randomColors); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
66 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
67 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
68 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
69 | MainWindow::MainWindow (QWidget* parent, Qt::WindowFlags flags) : | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
70 | QMainWindow (parent, flags) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
71 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
72 | g_win = this; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
73 | ui = new Ui_LDForgeUI; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
74 | ui->setupUi (this); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
75 | m_updatingTabs = false; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
76 | m_renderer = new GLRenderer (this); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
77 | m_tabs = new QTabBar; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
78 | ui->verticalLayout->insertWidget (0, m_tabs); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
79 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
80 | // Stuff the renderer into its frame | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
81 | QVBoxLayout* rendererLayout = new QVBoxLayout (ui->rendererFrame); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
82 | rendererLayout->addWidget (R()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
83 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
84 | connect (ui->objectList, SIGNAL (itemSelectionChanged()), this, SLOT (slot_selectionChanged())); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
85 | connect (ui->objectList, SIGNAL (itemDoubleClicked (QListWidgetItem*)), this, SLOT (slot_editObject (QListWidgetItem*))); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
86 | connect (m_tabs, SIGNAL (currentChanged(int)), this, SLOT (changeCurrentFile())); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
87 | |
| 
790
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
88 | if (getActivePrimitiveScanner() != null) | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
89 | connect (getActivePrimitiveScanner(), SIGNAL (workDone()), this, SLOT (updatePrimitives())); | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
90 | else | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
91 | updatePrimitives(); | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
92 | |
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
93 | m_msglog = new MessageManager; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
94 | m_msglog->setRenderer (R()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
95 | m_renderer->setMessageLog (m_msglog); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
96 | m_quickColors = quickColorsFromConfig(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
97 | slot_selectionChanged(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
98 | setStatusBar (new QStatusBar); | 
| 
757
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
99 | ui->actionAxes->setChecked (cfg::drawAxes); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
100 | ui->actionWireframe->setChecked (cfg::drawWireframe); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
101 | ui->actionBFCView->setChecked (cfg::bfcRedGreenView); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
102 | ui->actionRandomColors->setChecked (cfg::randomColors); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
103 | updateGridToolBar(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
104 | updateEditModeActions(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
105 | updateRecentFilesMenu(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
106 | updateColorToolbar(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
107 | updateTitle(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
108 | updateActionShortcuts(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
109 | setMinimumSize (300, 200); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
110 | connect (qApp, SIGNAL (aboutToQuit()), this, SLOT (slot_lastSecondCleanup())); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
111 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
112 | // Connect all actions | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
113 | for (QAction* act : findChildren<QAction*>()) | 
| 
662
 
2f1bd9112408
- use the keyword 'not' in place of the exclamation mark for operator!, this is clearer. also converted uses of '== false' to this.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
655 
diff
changeset
 | 
114 | if (not act->objectName().isEmpty()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
115 | connect (act, SIGNAL (triggered()), this, SLOT (slot_action())); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
116 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
117 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
118 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
119 | // | 
| 
757
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
120 | KeySequenceConfigEntry* MainWindow::shortcutForAction (QAction* action) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
121 | { | 
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
122 | QString keycfgname = action->objectName() + "Shortcut"; | 
| 
757
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
123 | return KeySequenceConfigEntry::getByName (keycfgname); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
124 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
125 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
126 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
127 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
128 | void MainWindow::updateActionShortcuts() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
129 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
130 | for (QAction* act : findChildren<QAction*>()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
131 | { | 
| 
757
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
132 | KeySequenceConfigEntry* cfg = shortcutForAction (act); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
133 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
134 | if (cfg) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
135 | act->setShortcut (cfg->getValue()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
136 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
137 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
138 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
139 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
140 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
141 | void MainWindow::slot_action() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
142 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
143 | // Get the name of the sender object and use it to compose the slot name, | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
144 | // then invoke this slot to call the action. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
145 | QMetaObject::invokeMethod (this, | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
146 | qPrintable (format ("slot_%1", sender()->objectName())), Qt::DirectConnection); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
147 | endAction(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
148 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
149 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
150 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
151 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
152 | void MainWindow::endAction() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
153 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
154 | // Add a step in the history now. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
155 | getCurrentDocument()->addHistoryStep(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
156 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
157 | // Update the list item of the current file - we may need to draw an icon | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
158 | // now that marks it as having unsaved changes. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
159 | updateDocumentListItem (getCurrentDocument()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
160 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
161 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
162 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
163 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
164 | void MainWindow::slot_lastSecondCleanup() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
165 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
166 | delete m_renderer; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
167 | delete ui; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
168 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
169 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
170 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
171 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
172 | void MainWindow::updateRecentFilesMenu() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
173 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
174 | // First, clear any items in the recent files menu | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
175 | for (QAction * recent : m_recentFiles) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
176 | delete recent; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
177 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
178 | m_recentFiles.clear(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
179 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
180 | QAction* first = null; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
181 | |
| 
757
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
182 | for (const QVariant& it : cfg::recentFiles) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
183 | { | 
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
184 | QString file = it.toString(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
185 | QAction* recent = new QAction (getIcon ("open-recent"), file, this); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
186 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
187 | connect (recent, SIGNAL (triggered()), this, SLOT (slot_recentFile())); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
188 | ui->menuOpenRecent->insertAction (first, recent); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
189 | m_recentFiles << recent; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
190 | first = recent; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
191 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
192 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
193 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
194 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
195 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
196 | QList<LDQuickColor> quickColorsFromConfig() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
197 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
198 | QList<LDQuickColor> colors; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
199 | |
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
200 | for (QString colorname : cfg::quickColorToolbar.split (":")) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
201 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
202 | if (colorname == "|") | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
203 | colors << LDQuickColor::getSeparator(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
204 | else | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
205 | { | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
206 | LDColor col = LDColor::fromIndex (colorname.toLong()); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
207 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
208 | if (col != null) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
209 | colors << LDQuickColor (col, null); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
210 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
211 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
212 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
213 | return colors; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
214 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
215 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
216 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
217 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
218 | void MainWindow::updateColorToolbar() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
219 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
220 | m_colorButtons.clear(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
221 | ui->colorToolbar->clear(); | 
| 
663
 
b6601bfbe732
- moved the uncolorize action to the color toolbar, renamed to uncolor
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
662 
diff
changeset
 | 
222 | ui->colorToolbar->addAction (ui->actionUncolor); | 
| 
 
b6601bfbe732
- moved the uncolorize action to the color toolbar, renamed to uncolor
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
662 
diff
changeset
 | 
223 | ui->colorToolbar->addSeparator(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
224 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
225 | for (LDQuickColor& entry : m_quickColors) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
226 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
227 | if (entry.isSeparator()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
228 | ui->colorToolbar->addSeparator(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
229 | else | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
230 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
231 | QToolButton* colorButton = new QToolButton; | 
| 
729
 
dcd7e3e86374
- started work on new icon set
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
663 
diff
changeset
 | 
232 | colorButton->setIcon (makeColorIcon (entry.color(), 16)); | 
| 
 
dcd7e3e86374
- started work on new icon set
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
663 
diff
changeset
 | 
233 | colorButton->setIconSize (QSize (16, 16)); | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
234 | colorButton->setToolTip (entry.color()->name()); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
235 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
236 | connect (colorButton, SIGNAL (clicked()), this, SLOT (slot_quickColor())); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
237 | ui->colorToolbar->addWidget (colorButton); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
238 | m_colorButtons << colorButton; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
239 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
240 | entry.setToolButton (colorButton); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
241 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
242 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
243 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
244 | updateGridToolBar(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
245 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
246 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
247 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
248 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
249 | void MainWindow::updateGridToolBar() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
250 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
251 | // Ensure that the current grid - and only the current grid - is selected. | 
| 
757
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
252 | ui->actionGridCoarse->setChecked (cfg::grid == Grid::Coarse); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
253 | ui->actionGridMedium->setChecked (cfg::grid == Grid::Medium); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
254 | ui->actionGridFine->setChecked (cfg::grid == Grid::Fine); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
255 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
256 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
257 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
258 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
259 | void MainWindow::updateTitle() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
260 | { | 
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
261 | QString title = format (APPNAME " %1", fullVersionString()); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
262 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
263 | // Append our current file if we have one | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
264 | if (getCurrentDocument()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
265 | { | 
| 
744
 
bbe0e1834065
- removed rest of the uses of <anonymous>
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
739 
diff
changeset
 | 
266 | title += ": "; | 
| 
 
bbe0e1834065
- removed rest of the uses of <anonymous>
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
739 
diff
changeset
 | 
267 | title += getCurrentDocument()->getDisplayName(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
268 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
269 | if (getCurrentDocument()->getObjectCount() > 0 && | 
| 
786
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
270 | getCurrentDocument()->getObject (0)->type() == OBJ_Comment) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
271 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
272 | // Append title | 
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
273 | LDCommentPtr comm = getCurrentDocument()->getObject (0).staticCast<LDComment>(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
274 | title += format (": %1", comm->text()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
275 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
276 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
277 | if (getCurrentDocument()->hasUnsavedChanges()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
278 | title += '*'; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
279 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
280 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
281 | #ifdef DEBUG | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
282 | title += " [debug build]"; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
283 | #elif BUILD_ID != BUILD_RELEASE | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
284 | title += " [pre-release build]"; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
285 | #endif // DEBUG | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
286 | |
| 
774
 
8bce7acd100c
- removed the build time in favor of commit time which I think is much more important
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
773 
diff
changeset
 | 
287 | if (commitTimeString()[0] != '\0') | 
| 
 
8bce7acd100c
- removed the build time in favor of commit time which I think is much more important
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
773 
diff
changeset
 | 
288 | title += format (" (%1)", commitTimeString()); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
289 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
290 | setWindowTitle (title); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
291 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
292 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
293 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
294 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
295 | int MainWindow::deleteSelection() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
296 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
297 | if (selection().isEmpty()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
298 | return 0; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
299 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
300 | LDObjectList selCopy = selection(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
301 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
302 | // Delete the objects that were being selected | 
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
303 | for (LDObjectPtr obj : selCopy) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
304 | obj->destroy(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
305 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
306 | refresh(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
307 | return selCopy.size(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
308 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
309 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
310 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
311 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
312 | void MainWindow::buildObjList() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
313 | { | 
| 
662
 
2f1bd9112408
- use the keyword 'not' in place of the exclamation mark for operator!, this is clearer. also converted uses of '== false' to this.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
655 
diff
changeset
 | 
314 | if (not getCurrentDocument()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
315 | return; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
316 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
317 | // Lock the selection while we do this so that refreshing the object list | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
318 | // doesn't trigger selection updating so that the selection doesn't get lost | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
319 | // while this is done. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
320 | g_isSelectionLocked = true; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
321 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
322 | for (int i = 0; i < ui->objectList->count(); ++i) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
323 | delete ui->objectList->item (i); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
324 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
325 | ui->objectList->clear(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
326 | |
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
327 | for (LDObjectPtr obj : getCurrentDocument()->objects()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
328 | { | 
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
329 | QString descr; | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
330 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
331 | switch (obj->type()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
332 | { | 
| 
786
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
333 | case OBJ_Comment: | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
334 | { | 
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
335 | descr = obj.staticCast<LDComment>()->text(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
336 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
337 | // Remove leading whitespace | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
338 | while (descr[0] == ' ') | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
339 | descr.remove (0, 1); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
340 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
341 | break; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
342 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
343 | |
| 
786
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
344 | case OBJ_Empty: | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
345 | break; // leave it empty | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
346 | |
| 
786
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
347 | case OBJ_Line: | 
| 
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
348 | case OBJ_Triangle: | 
| 
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
349 | case OBJ_Quad: | 
| 
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
350 | case OBJ_CondLine: | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
351 | { | 
| 
767
 
44f0d5322628
- slight refactor in ldobject methods
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
762 
diff
changeset
 | 
352 | for (int i = 0; i < obj->numVertices(); ++i) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
353 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
354 | if (i != 0) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
355 | descr += ", "; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
356 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
357 | descr += obj->vertex (i).toString (true); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
358 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
359 | break; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
360 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
361 | |
| 
786
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
362 | case OBJ_Error: | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
363 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
364 | descr = format ("ERROR: %1", obj->asText()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
365 | break; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
366 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
367 | |
| 
786
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
368 | case OBJ_Vertex: | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
369 | { | 
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
370 | descr = obj.staticCast<LDVertex>()->pos.toString (true); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
371 | break; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
372 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
373 | |
| 
786
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
374 | case OBJ_Subfile: | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
375 | { | 
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
376 | LDSubfilePtr ref = obj.staticCast<LDSubfile>(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
377 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
378 | descr = format ("%1 %2, (", ref->fileInfo()->getDisplayName(), ref->position().toString (true)); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
379 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
380 | for (int i = 0; i < 9; ++i) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
381 | descr += format ("%1%2", ref->transform()[i], (i != 8) ? " " : ""); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
382 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
383 | descr += ')'; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
384 | break; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
385 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
386 | |
| 
786
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
387 | case OBJ_BFC: | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
388 | { | 
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
389 | descr = LDBFC::k_statementStrings[obj.staticCast<LDBFC>()->statement()]; | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
390 | break; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
391 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
392 | |
| 
786
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
393 | case OBJ_Overlay: | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
394 | { | 
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
395 | LDOverlayPtr ovl = obj.staticCast<LDOverlay>(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
396 | descr = format ("[%1] %2 (%3, %4), %5 x %6", g_CameraNames[ovl->camera()], | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
397 | basename (ovl->fileName()), ovl->x(), ovl->y(), | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
398 | ovl->width(), ovl->height()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
399 | break; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
400 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
401 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
402 | default: | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
403 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
404 | descr = obj->typeName(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
405 | break; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
406 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
407 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
408 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
409 | QListWidgetItem* item = new QListWidgetItem (descr); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
410 | item->setIcon (getIcon (obj->typeName())); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
411 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
412 | // Use italic font if hidden | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
413 | if (obj->isHidden()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
414 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
415 | QFont font = item->font(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
416 | font.setItalic (true); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
417 | item->setFont (font); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
418 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
419 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
420 | // Color gibberish orange on red so it stands out. | 
| 
786
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
421 | if (obj->type() == OBJ_Error) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
422 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
423 | item->setBackground (QColor ("#AA0000")); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
424 | item->setForeground (QColor ("#FFAA00")); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
425 | } | 
| 
757
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
426 | elif (cfg::colorizeObjectsList && obj->isColored() && | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
427 | obj->color() != null && obj->color() != maincolor() && obj->color() != edgecolor()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
428 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
429 | // If the object isn't in the main or edge color, draw this | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
430 | // list entry in said color. | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
431 | item->setForeground (obj->color()->faceColor()); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
432 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
433 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
434 | obj->qObjListEntry = item; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
435 | ui->objectList->insertItem (ui->objectList->count(), item); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
436 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
437 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
438 | g_isSelectionLocked = false; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
439 | updateSelection(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
440 | scrollToSelection(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
441 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
442 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
443 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
444 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
445 | void MainWindow::scrollToSelection() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
446 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
447 | if (selection().isEmpty()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
448 | return; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
449 | |
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
450 | LDObjectPtr obj = selection().last(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
451 | ui->objectList->scrollToItem (obj->qObjListEntry); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
452 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
453 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
454 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
455 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
456 | void MainWindow::slot_selectionChanged() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
457 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
458 | if (g_isSelectionLocked == true || getCurrentDocument() == null) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
459 | return; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
460 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
461 | LDObjectList priorSelection = selection(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
462 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
463 | // Get the objects from the object list selection | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
464 | getCurrentDocument()->clearSelection(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
465 | const QList<QListWidgetItem*> items = ui->objectList->selectedItems(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
466 | |
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
467 | for (LDObjectPtr obj : getCurrentDocument()->objects()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
468 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
469 | for (QListWidgetItem* item : items) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
470 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
471 | if (item == obj->qObjListEntry) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
472 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
473 | obj->select(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
474 | break; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
475 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
476 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
477 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
478 | |
| 
776
 
624131d0163d
- selecting an invertnext'd object now also selects the invertnext
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
774 
diff
changeset
 | 
479 | // The select() method calls may have selected additional items (i.e. invertnexts) | 
| 
 
624131d0163d
- selecting an invertnext'd object now also selects the invertnext
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
774 
diff
changeset
 | 
480 | // Update it all now. | 
| 
 
624131d0163d
- selecting an invertnext'd object now also selects the invertnext
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
774 
diff
changeset
 | 
481 | updateSelection(); | 
| 
 
624131d0163d
- selecting an invertnext'd object now also selects the invertnext
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
774 
diff
changeset
 | 
482 | |
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
483 | // Update the GL renderer | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
484 | LDObjectList compound = priorSelection + selection(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
485 | removeDuplicates (compound); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
486 | |
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
487 | for (LDObjectPtr obj : compound) | 
| 
758
 
bb897dfef387
- cut unnecessary code from MainWindow::updateSelection. speeds it up a bit, especially when unselecting but it's not fast enough to my tastes yet
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
757 
diff
changeset
 | 
488 | R()->compileObject (obj); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
489 | |
| 
758
 
bb897dfef387
- cut unnecessary code from MainWindow::updateSelection. speeds it up a bit, especially when unselecting but it's not fast enough to my tastes yet
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
757 
diff
changeset
 | 
490 | R()->update(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
491 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
492 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
493 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
494 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
495 | void MainWindow::slot_recentFile() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
496 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
497 | QAction* qAct = static_cast<QAction*> (sender()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
498 | openMainFile (qAct->text()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
499 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
500 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
501 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
502 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
503 | void MainWindow::slot_quickColor() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
504 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
505 | QToolButton* button = static_cast<QToolButton*> (sender()); | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
506 | LDColor col = null; | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
507 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
508 | for (const LDQuickColor& entry : m_quickColors) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
509 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
510 | if (entry.toolButton() == button) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
511 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
512 | col = entry.color(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
513 | break; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
514 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
515 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
516 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
517 | if (col == null) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
518 | return; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
519 | |
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
520 | for (LDObjectPtr obj : selection()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
521 | { | 
| 
662
 
2f1bd9112408
- use the keyword 'not' in place of the exclamation mark for operator!, this is clearer. also converted uses of '== false' to this.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
655 
diff
changeset
 | 
522 | if (not obj->isColored()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
523 | continue; // uncolored object | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
524 | |
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
525 | obj->setColor (col); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
526 | R()->compileObject (obj); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
527 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
528 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
529 | endAction(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
530 | refresh(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
531 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
532 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
533 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
534 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
535 | int MainWindow::getInsertionPoint() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
536 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
537 | // If we have a selection, put the item after it. | 
| 
662
 
2f1bd9112408
- use the keyword 'not' in place of the exclamation mark for operator!, this is clearer. also converted uses of '== false' to this.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
655 
diff
changeset
 | 
538 | if (not selection().isEmpty()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
539 | return selection().last()->lineNumber() + 1; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
540 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
541 | // Otherwise place the object at the end. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
542 | return getCurrentDocument()->getObjectCount(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
543 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
544 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
545 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
546 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
547 | void MainWindow::doFullRefresh() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
548 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
549 | buildObjList(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
550 | m_renderer->hardRefresh(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
551 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
552 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
553 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
554 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
555 | void MainWindow::refresh() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
556 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
557 | buildObjList(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
558 | m_renderer->update(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
559 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
560 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
561 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
562 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
563 | void MainWindow::updateSelection() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
564 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
565 | g_isSelectionLocked = true; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
566 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
567 | ui->objectList->clearSelection(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
568 | |
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
569 | for (LDObjectPtr obj : selection()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
570 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
571 | if (obj->qObjListEntry == null) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
572 | continue; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
573 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
574 | obj->qObjListEntry->setSelected (true); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
575 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
576 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
577 | g_isSelectionLocked = false; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
578 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
579 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
580 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
581 | // | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
582 | LDColor MainWindow::getSelectedColor() | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
583 | { | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
584 | LDColor result; | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
585 | |
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
586 | for (LDObjectPtr obj : selection()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
587 | { | 
| 
662
 
2f1bd9112408
- use the keyword 'not' in place of the exclamation mark for operator!, this is clearer. also converted uses of '== false' to this.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
655 
diff
changeset
 | 
588 | if (not obj->isColored()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
589 | continue; // doesn't use color | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
590 | |
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
591 | if (result != null && obj->color() != result) | 
| 
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
592 | return null; // No consensus in object color | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
593 | |
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
594 | if (result == null) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
595 | result = obj->color(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
596 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
597 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
598 | return result; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
599 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
600 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
601 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
602 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
603 | void MainWindow::closeEvent (QCloseEvent* ev) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
604 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
605 | // Check whether it's safe to close all files. | 
| 
662
 
2f1bd9112408
- use the keyword 'not' in place of the exclamation mark for operator!, this is clearer. also converted uses of '== false' to this.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
655 
diff
changeset
 | 
606 | if (not safeToCloseAll()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
607 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
608 | ev->ignore(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
609 | return; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
610 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
611 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
612 | // Save the configuration before leaving so that, for instance, grid choice | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
613 | // is preserved across instances. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
614 | Config::save(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
615 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
616 | ev->accept(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
617 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
618 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
619 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
620 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
621 | void MainWindow::spawnContextMenu (const QPoint pos) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
622 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
623 | const bool single = (selection().size() == 1); | 
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
624 | LDObjectPtr singleObj = single ? selection().first() : LDObjectPtr(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
625 | |
| 
788
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
626 | bool hasSubfiles = false; | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
627 | |
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
628 | for (LDObjectPtr obj : selection()) | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
629 | { | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
630 | if (obj->type() == OBJ_Subfile) | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
631 | { | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
632 | hasSubfiles = true; | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
633 | break; | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
634 | } | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
635 | } | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
636 | |
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
637 | QMenu* contextMenu = new QMenu; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
638 | |
| 
786
 
71d786ce0dcc
- LDObject::Type moved back to global namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
784 
diff
changeset
 | 
639 | if (single && singleObj->type() != OBJ_Empty) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
640 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
641 | contextMenu->addAction (ui->actionEdit); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
642 | contextMenu->addSeparator(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
643 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
644 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
645 | contextMenu->addAction (ui->actionCut); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
646 | contextMenu->addAction (ui->actionCopy); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
647 | contextMenu->addAction (ui->actionPaste); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
648 | contextMenu->addAction (ui->actionDelete); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
649 | contextMenu->addSeparator(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
650 | contextMenu->addAction (ui->actionSetColor); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
651 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
652 | if (single) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
653 | contextMenu->addAction (ui->actionEditRaw); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
654 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
655 | contextMenu->addAction (ui->actionBorders); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
656 | contextMenu->addAction (ui->actionSetOverlay); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
657 | contextMenu->addAction (ui->actionClearOverlay); | 
| 
788
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
658 | |
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
659 | if (hasSubfiles) | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
660 | { | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
661 | contextMenu->addSeparator(); | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
662 | contextMenu->addAction (ui->actionOpenSubfiles); | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
663 | } | 
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
664 | |
| 
 
c9d1dad83ad0
- added an action for opening the subfiles pointed to by selected references as editable documents
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
787 
diff
changeset
 | 
665 | contextMenu->addSeparator(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
666 | contextMenu->addAction (ui->actionModeSelect); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
667 | contextMenu->addAction (ui->actionModeDraw); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
668 | contextMenu->addAction (ui->actionModeCircle); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
669 | |
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
670 | if (not selection().isEmpty()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
671 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
672 | contextMenu->addSeparator(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
673 | contextMenu->addAction (ui->actionSubfileSelection); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
674 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
675 | |
| 
762
 
d259256e1394
- added a macro for adding operator++ and operator-- to enums, less cast hell this way
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
758 
diff
changeset
 | 
676 | if (R()->camera() != EFreeCamera) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
677 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
678 | contextMenu->addSeparator(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
679 | contextMenu->addAction (ui->actionSetDrawDepth); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
680 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
681 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
682 | contextMenu->exec (pos); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
683 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
684 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
685 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
686 | // | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
687 | void MainWindow::deleteByColor (LDColor color) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
688 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
689 | LDObjectList objs; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
690 | |
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
691 | for (LDObjectPtr obj : getCurrentDocument()->objects()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
692 | { | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
693 | if (not obj->isColored() || obj->color() != color) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
694 | continue; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
695 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
696 | objs << obj; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
697 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
698 | |
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
699 | for (LDObjectPtr obj : objs) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
700 | obj->destroy(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
701 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
702 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
703 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
704 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
705 | void MainWindow::updateEditModeActions() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
706 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
707 | const EditMode mode = R()->editMode(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
708 | ui->actionModeSelect->setChecked (mode == ESelectMode); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
709 | ui->actionModeDraw->setChecked (mode == EDrawMode); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
710 | ui->actionModeCircle->setChecked (mode == ECircleMode); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
711 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
712 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
713 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
714 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
715 | void MainWindow::slot_editObject (QListWidgetItem* listitem) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
716 | { | 
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
717 | for (LDObjectPtr it : getCurrentDocument()->objects()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
718 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
719 | if (it->qObjListEntry == listitem) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
720 | { | 
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
721 | AddObjectDialog::staticDialog (it->type(), it); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
722 | break; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
723 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
724 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
725 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
726 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
727 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
728 | // | 
| 
784
 
f82ab4d3c7b4
- made LDDocument use shared pointers, this eliminates a lot of document-related crashes
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
776 
diff
changeset
 | 
729 | bool MainWindow::save (LDDocumentPtr doc, bool saveAs) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
730 | { | 
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
731 | QString path = doc->fullPath(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
732 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
733 | if (saveAs || path.isEmpty()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
734 | { | 
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
735 | QString name = doc->defaultName(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
736 | |
| 
662
 
2f1bd9112408
- use the keyword 'not' in place of the exclamation mark for operator!, this is clearer. also converted uses of '== false' to this.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
655 
diff
changeset
 | 
737 | if (not doc->fullPath().isEmpty()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
738 | name = doc->fullPath(); | 
| 
662
 
2f1bd9112408
- use the keyword 'not' in place of the exclamation mark for operator!, this is clearer. also converted uses of '== false' to this.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
655 
diff
changeset
 | 
739 | elif (not doc->name().isEmpty()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
740 | name = doc->name(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
741 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
742 | name.replace ("\\", "/"); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
743 | path = QFileDialog::getSaveFileName (g_win, tr ("Save As"), | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
744 | name, tr ("LDraw files (*.dat *.ldr)")); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
745 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
746 | if (path.isEmpty()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
747 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
748 | // User didn't give a file name, abort. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
749 | return false; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
750 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
751 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
752 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
753 | if (doc->save (path)) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
754 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
755 | if (doc == getCurrentDocument()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
756 | updateTitle(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
757 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
758 | print ("Saved to %1.", path); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
759 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
760 | // Add it to recent files | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
761 | addRecentFile (path); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
762 | return true; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
763 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
764 | |
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
765 | QString message = format (tr ("Failed to save to %1: %2"), path, strerror (errno)); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
766 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
767 | // Tell the user the save failed, and give the option for saving as with it. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
768 | QMessageBox dlg (QMessageBox::Critical, tr ("Save Failure"), message, QMessageBox::Close, g_win); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
769 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
770 | // Add a save-as button | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
771 | QPushButton* saveAsBtn = new QPushButton (tr ("Save As")); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
772 | saveAsBtn->setIcon (getIcon ("file-save-as")); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
773 | dlg.addButton (saveAsBtn, QMessageBox::ActionRole); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
774 | dlg.setDefaultButton (QMessageBox::Close); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
775 | dlg.exec(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
776 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
777 | if (dlg.clickedButton() == saveAsBtn) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
778 | return save (doc, true); // yay recursion! | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
779 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
780 | return false; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
781 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
782 | |
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
783 | void MainWindow::addMessage (QString msg) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
784 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
785 | m_msglog->addLine (msg); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
786 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
787 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
788 | // ============================================================================ | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
789 | void ObjectList::contextMenuEvent (QContextMenuEvent* ev) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
790 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
791 | g_win->spawnContextMenu (ev->globalPos()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
792 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
793 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
794 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
795 | // | 
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
796 | QPixmap getIcon (QString iconName) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
797 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
798 | return (QPixmap (format (":/icons/%1.png", iconName))); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
799 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
800 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
801 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
802 | // | 
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
803 | bool confirm (const QString& message) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
804 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
805 | return confirm (MainWindow::tr ("Confirm"), message); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
806 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
807 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
808 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
809 | // | 
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
810 | bool confirm (const QString& title, const QString& message) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
811 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
812 | return QMessageBox::question (g_win, title, message, | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
813 | (QMessageBox::Yes | QMessageBox::No), QMessageBox::No) == QMessageBox::Yes; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
814 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
815 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
816 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
817 | // | 
| 
789
 
4b7306f52bb5
- String -> QString
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
788 
diff
changeset
 | 
818 | void critical (const QString& message) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
819 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
820 | QMessageBox::critical (g_win, MainWindow::tr ("Error"), message, | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
821 | (QMessageBox::Close), QMessageBox::Close); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
822 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
823 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
824 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
825 | // | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
826 | QIcon makeColorIcon (LDColor colinfo, const int size) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
827 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
828 | // Create an image object and link a painter to it. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
829 | QImage img (size, size, QImage::Format_ARGB32); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
830 | QPainter paint (&img); | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
831 | QColor col = colinfo->faceColor(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
832 | |
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
833 | if (colinfo == maincolor()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
834 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
835 | // Use the user preferences for main color here | 
| 
757
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
836 | col = cfg::mainColor; | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
837 | col.setAlphaF (cfg::mainColorAlpha); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
838 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
839 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
840 | // Paint the icon border | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
841 | paint.fillRect (QRect (0, 0, size, size), colinfo->edgeColor()); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
842 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
843 | // Paint the checkerboard background, visible with translucent icons | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
844 | paint.drawPixmap (QRect (1, 1, size - 2, size - 2), getIcon ("checkerboard"), QRect (0, 0, 8, 8)); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
845 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
846 | // Paint the color above the checkerboard | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
847 | paint.fillRect (QRect (1, 1, size - 2, size - 2), col); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
848 | return QIcon (QPixmap::fromImage (img)); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
849 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
850 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
851 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
852 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
853 | void makeColorComboBox (QComboBox* box) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
854 | { | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
855 | std::map<LDColor, int> counts; | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
856 | |
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
857 | for (LDObjectPtr obj : getCurrentDocument()->objects()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
858 | { | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
859 | if (not obj->isColored() || obj->color() == null) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
860 | continue; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
861 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
862 | if (counts.find (obj->color()) == counts.end()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
863 | counts[obj->color()] = 1; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
864 | else | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
865 | counts[obj->color()]++; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
866 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
867 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
868 | box->clear(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
869 | int row = 0; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
870 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
871 | for (const auto& pair : counts) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
872 | { | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
873 | QIcon ico = makeColorIcon (pair.first, 16); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
874 | box->addItem (ico, format ("[%1] %2 (%3 object%4)", | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
875 | pair.first, pair.first->name(), pair.second, plural (pair.second))); | 
| 
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
876 | box->setItemData (row, pair.first->index()); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
877 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
878 | ++row; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
879 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
880 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
881 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
882 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
883 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
884 | void MainWindow::updateDocumentList() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
885 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
886 | m_updatingTabs = true; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
887 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
888 | while (m_tabs->count() > 0) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
889 | m_tabs->removeTab (0); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
890 | |
| 
784
 
f82ab4d3c7b4
- made LDDocument use shared pointers, this eliminates a lot of document-related crashes
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
776 
diff
changeset
 | 
891 | for (LDDocumentPtr f : LDDocument::explicitDocuments()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
892 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
893 | // Add an item to the list for this file and store the tab index | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
894 | // in the document so we can find documents by tab index. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
895 | f->setTabIndex (m_tabs->addTab ("")); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
896 | updateDocumentListItem (f); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
897 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
898 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
899 | m_updatingTabs = false; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
900 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
901 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
902 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
903 | // | 
| 
784
 
f82ab4d3c7b4
- made LDDocument use shared pointers, this eliminates a lot of document-related crashes
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
776 
diff
changeset
 | 
904 | void MainWindow::updateDocumentListItem (LDDocumentPtr doc) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
905 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
906 | bool oldUpdatingTabs = m_updatingTabs; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
907 | m_updatingTabs = true; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
908 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
909 | if (doc->tabIndex() == -1) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
910 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
911 | // We don't have a list item for this file, so the list either doesn't | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
912 | // exist yet or is out of date. Build the list now. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
913 | updateDocumentList(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
914 | return; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
915 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
916 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
917 | // If this is the current file, it also needs to be the selected item on | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
918 | // the list. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
919 | if (doc == getCurrentDocument()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
920 | m_tabs->setCurrentIndex (doc->tabIndex()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
921 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
922 | m_tabs->setTabText (doc->tabIndex(), doc->getDisplayName()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
923 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
924 | // If the document.has unsaved changes, draw a little icon next to it to mark that. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
925 | m_tabs->setTabIcon (doc->tabIndex(), doc->hasUnsavedChanges() ? getIcon ("file-save") : QIcon()); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
926 | m_updatingTabs = oldUpdatingTabs; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
927 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
928 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
929 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
930 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
931 | // A file is selected from the list of files on the left of the screen. Find out | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
932 | // which file was picked and change to it. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
933 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
934 | void MainWindow::changeCurrentFile() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
935 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
936 | if (m_updatingTabs) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
937 | return; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
938 | |
| 
784
 
f82ab4d3c7b4
- made LDDocument use shared pointers, this eliminates a lot of document-related crashes
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
776 
diff
changeset
 | 
939 | LDDocumentPtr f; | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
940 | int tabIndex = m_tabs->currentIndex(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
941 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
942 | // Find the file pointer of the item that was selected. | 
| 
784
 
f82ab4d3c7b4
- made LDDocument use shared pointers, this eliminates a lot of document-related crashes
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
776 
diff
changeset
 | 
943 | for (LDDocumentPtr it : LDDocument::explicitDocuments()) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
944 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
945 | if (it->tabIndex() == tabIndex) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
946 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
947 | f = it; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
948 | break; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
949 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
950 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
951 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
952 | // If we picked the same file we're currently on, we don't need to do | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
953 | // anything. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
954 | if (f == null || f == getCurrentDocument()) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
955 | return; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
956 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
957 | LDDocument::setCurrent (f); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
958 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
959 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
960 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
961 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
962 | void MainWindow::refreshObjectList() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
963 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
964 | #if 0 | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
965 | ui->objectList->clear(); | 
| 
784
 
f82ab4d3c7b4
- made LDDocument use shared pointers, this eliminates a lot of document-related crashes
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
776 
diff
changeset
 | 
966 | LDDocumentPtr f = getCurrentDocument(); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
967 | |
| 
768
 
29e6c5552388
- initial overhaul with smart pointers
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
767 
diff
changeset
 | 
968 | for (LDObjectPtr obj : *f) | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
969 | ui->objectList->addItem (obj->qObjListEntry); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
970 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
971 | #endif | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
972 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
973 | buildObjList(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
974 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
975 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
976 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
977 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
978 | void MainWindow::updateActions() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
979 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
980 | History* his = getCurrentDocument()->history(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
981 | int pos = his->position(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
982 | ui->actionUndo->setEnabled (pos != -1); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
983 | ui->actionRedo->setEnabled (pos < (long) his->getSize() - 1); | 
| 
757
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
984 | ui->actionAxes->setChecked (cfg::drawAxes); | 
| 
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
985 | ui->actionBFCView->setChecked (cfg::bfcRedGreenView); | 
| 
773
 
6eb3c88982ac
- bfc red/green view and random colors are now mutually exclusive, enabling one disables the other.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
768 
diff
changeset
 | 
986 | ui->actionRandomColors->setChecked (cfg::randomColors); | 
| 
757
 
8ab9fa53142b
- overhauled configuration setup a bit: configuration entries renamed and are now in a cfg:: namespace
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
749 
diff
changeset
 | 
987 | ui->actionDrawAngles->setChecked (cfg::drawAngles); | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
988 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
989 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
990 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
991 | // | 
| 
790
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
992 | void MainWindow::updatePrimitives() | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
993 | { | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
994 | populatePrimitives (ui->primitives); | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
995 | } | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
996 | |
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
997 | // ============================================================================= | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
998 | // | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
999 | QImage imageFromScreencap (uchar* data, int w, int h) | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1000 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1001 | // GL and Qt formats have R and B swapped. Also, GL flips Y - correct it as well. | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1002 | return QImage (data, w, h, QImage::Format_ARGB32).rgbSwapped().mirrored(); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1003 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1004 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1005 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1006 | // | 
| 
795
 
195fa1fff9c3
- changed all color usage to use LDColor classes instead of color indices. Added support for direct colors.
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
790 
diff
changeset
 | 
1007 | LDQuickColor::LDQuickColor (LDColor color, QToolButton* toolButton) : | 
| 
655
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1008 | m_color (color), | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1009 | m_toolButton (toolButton) {} | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1010 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1011 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1012 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1013 | LDQuickColor LDQuickColor::getSeparator() | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1014 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1015 | return LDQuickColor (null, null); | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1016 | } | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1017 | |
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1018 | // ============================================================================= | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1019 | // | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1020 | bool LDQuickColor::isSeparator() const | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1021 | { | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1022 | return color() == null; | 
| 
 
b376645315ab
- renamed files to camelCase
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents:  
diff
changeset
 | 
1023 | } | 
| 
790
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1024 | |
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1025 | void populatePrimitives (QTreeWidget* tw, QString const& selectByDefault) | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1026 | { | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1027 | tw->clear(); | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1028 | |
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1029 | for (PrimitiveCategory* cat : g_PrimitiveCategories) | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1030 | { | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1031 | SubfileListItem* parentItem = new SubfileListItem (tw, null); | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1032 | parentItem->setText (0, cat->name()); | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1033 | QList<QTreeWidgetItem*> subfileItems; | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1034 | |
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1035 | for (Primitive& prim : cat->prims) | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1036 | { | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1037 | SubfileListItem* item = new SubfileListItem (parentItem, &prim); | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1038 | item->setText (0, format ("%1 - %2", prim.name, prim.title)); | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1039 | subfileItems << item; | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1040 | |
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1041 | // If this primitive is the one the current object points to, | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1042 | // select it by default | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1043 | if (selectByDefault == prim.name) | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1044 | tw->setCurrentItem (item); | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1045 | } | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1046 | |
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1047 | tw->addTopLevelItem (parentItem); | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1048 | } | 
| 
 
fe1b83f6ba82
- added primitives toolbox
 
Santeri Piippo <crimsondusk64@gmail.com> 
parents: 
789 
diff
changeset
 | 
1049 | } |