Reorganize icon data as an embedded icon theme (#226)

This commit is contained in:
Jaye Evins
2025-08-25 23:44:40 -04:00
committed by GitHub
parent de85d47765
commit ffd634075f
132 changed files with 305 additions and 834 deletions
+5 -6
View File
@@ -19,7 +19,6 @@ set (glabels_sources
FieldButton.cpp
File.cpp
Help.cpp
Icons.cpp
LabelEditor.cpp
MainWindow.cpp
MergeView.cpp
@@ -145,11 +144,11 @@ target_link_libraries (glabels-qt
#=======================================
install (TARGETS glabels-qt RUNTIME DESTINATION bin)
install (FILES icons/apps/scalable/glabels.svg DESTINATION share/icons/hicolor/scalable/apps)
install (FILES icons/apps/16x16/glabels.svg DESTINATION share/icons/hicolor/16x16/apps)
install (FILES icons/apps/22x22/glabels.svg DESTINATION share/icons/hicolor/22x22/apps)
install (FILES icons/apps/32x32/glabels.svg DESTINATION share/icons/hicolor/32x32/apps)
install (FILES icons/apps/48x48/glabels.svg DESTINATION share/icons/hicolor/48x48/apps)
install (FILES icons/glabels-flat/scalable/apps/glabels.svg DESTINATION share/icons/hicolor/scalable/apps)
install (FILES icons/glabels-flat/16x16/apps/glabels.svg DESTINATION share/icons/hicolor/16x16/apps)
install (FILES icons/glabels-flat/22x22/apps/glabels.svg DESTINATION share/icons/hicolor/22x22/apps)
install (FILES icons/glabels-flat/32x32/apps/glabels.svg DESTINATION share/icons/hicolor/32x32/apps)
install (FILES icons/glabels-flat/48x48/apps/glabels.svg DESTINATION share/icons/hicolor/48x48/apps)
install (FILES icons/mimetypes/scalable/x-glabels-project.svg DESTINATION share/icons/hicolor/scalable/mimetypes)
install (FILES icons/mimetypes/16x16/x-glabels-project.svg DESTINATION share/icons/hicolor/16x16/mimetypes)
-21
View File
@@ -1,21 +0,0 @@
/* Icons.cpp
*
* Copyright (C) 2017 Jaye Evins <evins@snaught.com>
*
* This file is part of gLabels-qt.
*
* gLabels-qt is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* gLabels-qt is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with gLabels-qt. If not, see <http://www.gnu.org/licenses/>.
*/
#include "Icons.h"
-579
View File
@@ -1,579 +0,0 @@
/* Icons.h
*
* Copyright (C) 2013 Jaye Evins <evins@snaught.com>
*
* This file is part of gLabels-qt.
*
* gLabels-qt is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* gLabels-qt is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with gLabels-qt. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef Icons_h
#define Icons_h
#include <QIcon>
namespace glabels
{
///
/// Glabels Icons
///
namespace Icons
{
class Arrow : public QIcon
{
public:
Arrow()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-arrow.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-arrow.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-arrow.svg" ) );
}
};
class Barcode : public QIcon
{
public:
Barcode()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-barcode.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-barcode.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-barcode.svg" ) );
}
};
class Box : public QIcon
{
public:
Box()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-box.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-box.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-box.svg" ) );
}
};
class Ellipse : public QIcon
{
public:
Ellipse()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-ellipse.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-ellipse.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-ellipse.svg" ) );
}
};
class Image : public QIcon
{
public:
Image()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-image.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-image.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-image.svg" ) );
}
};
class Line : public QIcon
{
public:
Line()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-line.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-line.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-line.svg" ) );
}
};
class Text : public QIcon
{
public:
Text()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-text.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-text.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-text.svg" ) );
}
};
class ObjectProperties : public QIcon
{
public:
ObjectProperties()
{
addPixmap( QPixmap( ":icons/flat/24x24/glabels-object-properties.svg" ) );
}
};
class AlignLeft : public QIcon
{
public:
AlignLeft()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-align-left.svg" ) );
}
};
class AlignHCenter : public QIcon
{
public:
AlignHCenter()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-align-hcenter.svg" ) );
}
};
class AlignRight : public QIcon
{
public:
AlignRight()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-align-right.svg" ) );
}
};
class AlignBottom : public QIcon
{
public:
AlignBottom()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-align-bottom.svg" ) );
}
};
class AlignVCenter : public QIcon
{
public:
AlignVCenter()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-align-vcenter.svg" ) );
}
};
class AlignTop : public QIcon
{
public:
AlignTop()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-align-top.svg" ) );
}
};
class Center : public QIcon
{
public:
Center()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-center.svg" ) );
}
};
class CenterHoriz : public QIcon
{
public:
CenterHoriz()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-center-horiz.svg" ) );
}
};
class CenterVert : public QIcon
{
public:
CenterVert()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-center-vert.svg" ) );
}
};
class FlipHoriz : public QIcon
{
public:
FlipHoriz()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-flip-horiz.svg" ) );
}
};
class FlipVert : public QIcon
{
public:
FlipVert()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-flip-vert.svg" ) );
}
};
class RotateLeft : public QIcon
{
public:
RotateLeft()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-rotate-left.svg" ) );
}
};
class RotateRight : public QIcon
{
public:
RotateRight()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-rotate-right.svg" ) );
}
};
class OrderBottom : public QIcon
{
public:
OrderBottom()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-order-bottom.svg" ) );
}
};
class OrderTop : public QIcon
{
public:
OrderTop()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-order-top.svg" ) );
}
};
class AlignTextLeft : public QIcon
{
public:
AlignTextLeft()
{
addPixmap( QPixmap( ":icons/flat/22x22/glabels-align-text-left.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-align-text-left.svg" ) );
}
};
class AlignTextCenter : public QIcon
{
public:
AlignTextCenter()
{
addPixmap( QPixmap( ":icons/flat/22x22/glabels-align-text-center.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-align-text-center.svg" ) );
}
};
class AlignTextRight : public QIcon
{
public:
AlignTextRight()
{
addPixmap( QPixmap( ":icons/flat/22x22/glabels-align-text-right.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-align-text-right.svg" ) );
}
};
class AlignTextBottom : public QIcon
{
public:
AlignTextBottom()
{
addPixmap( QPixmap( ":icons/flat/22x22/glabels-valign-text-bottom.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-valign-text-bottom.svg" ) );
}
};
class AlignTextMiddle : public QIcon
{
public:
AlignTextMiddle()
{
addPixmap( QPixmap( ":icons/flat/22x22/glabels-valign-text-middle.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-valign-text-middle.svg" ) );
}
};
class AlignTextTop : public QIcon
{
public:
AlignTextTop()
{
addPixmap( QPixmap( ":icons/flat/22x22/glabels-valign-text-top.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-valign-text-top.svg" ) );
}
};
class Glabels : public QIcon
{
public:
Glabels()
{
addFile( ":icons/apps/16x16/glabels.svg" );
addFile( ":icons/apps/22x22/glabels.svg" );
addFile( ":icons/apps/32x32/glabels.svg" );
addFile( ":icons/apps/48x48/glabels.svg" );
addFile( ":icons/apps/scalable/glabels.svg" );
}
};
class Edit : public QIcon
{
public:
Edit()
{
addPixmap( QPixmap( ":icons/flat/48x48/glabels-edit.svg" ) );
}
};
class EditCopy : public QIcon
{
public:
EditCopy()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-edit-copy.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-edit-copy.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-edit-copy.svg" ) );
}
};
class EditCut : public QIcon
{
public:
EditCut()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-edit-cut.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-edit-cut.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-edit-cut.svg" ) );
}
};
class EditPaste : public QIcon
{
public:
EditPaste()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-edit-paste.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-edit-paste.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-edit-paste.svg" ) );
}
};
class FileNew : public QIcon
{
public:
FileNew()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-file-new.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-file-new.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-file-new.svg" ) );
addPixmap( QPixmap( ":icons/flat/32x32/glabels-file-new.svg" ) );
}
};
class FileOpen : public QIcon
{
public:
FileOpen()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-file-open.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-file-open.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-file-open.svg" ) );
addPixmap( QPixmap( ":icons/flat/32x32/glabels-file-open.svg" ) );
}
};
class FileRecent : public QIcon
{
public:
FileRecent()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-file-recent.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-file-recent.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-file-recent.svg" ) );
addPixmap( QPixmap( ":icons/flat/32x32/glabels-file-recent.svg" ) );
}
};
class FilePrint : public QIcon
{
public:
FilePrint()
{
addPixmap( QPixmap( ":icons/flat/32x32/glabels-print.svg" ) );
addPixmap( QPixmap( ":icons/flat/48x48/glabels-print.svg" ) );
}
};
class FileSave : public QIcon
{
public:
FileSave()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-file-save.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-file-save.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-file-save.svg" ) );
}
};
class FileSaveAs : public QIcon
{
public:
FileSaveAs()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-file-save-as.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-file-save-as.svg" ) );
addPixmap( QPixmap( ":icons/flat/24x24/glabels-file-save-as.svg" ) );
}
};
class Merge : public QIcon
{
public:
Merge()
{
addPixmap( QPixmap( ":icons/flat/48x48/glabels-merge.svg" ) );
}
};
class Properties : public QIcon
{
public:
Properties()
{
addPixmap( QPixmap( ":icons/flat/48x48/glabels-properties.svg" ) );
}
};
class Variables : public QIcon
{
public:
Variables()
{
addPixmap( QPixmap( ":icons/flat/48x48/glabels-variables.svg" ) );
}
};
class ZoomBestFit : public QIcon
{
public:
ZoomBestFit()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-zoom-to-fit.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-zoom-to-fit.svg" ) );
}
};
class ZoomIn : public QIcon
{
public:
ZoomIn()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-zoom-in.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-zoom-in.svg" ) );
}
};
class ZoomOriginal : public QIcon
{
public:
ZoomOriginal()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-zoom-one-to-one.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-zoom-one-to-one.svg" ) );
}
};
class ZoomOut : public QIcon
{
public:
ZoomOut()
{
addPixmap( QPixmap( ":icons/flat/16x16/glabels-zoom-out.svg" ) );
addPixmap( QPixmap( ":icons/flat/22x22/glabels-zoom-out.svg" ) );
}
};
class ViewGrid : public QIcon
{
public:
ViewGrid()
{
addPixmap( QPixmap( ":icons/flat/22x22/glabels-view-grid.svg" ) );
}
};
class ViewList : public QIcon
{
public:
ViewList()
{
addPixmap( QPixmap( ":icons/flat/22x22/glabels-view-list.svg" ) );
}
};
}
}
#endif // Icons_h
+45 -45
View File
@@ -22,7 +22,6 @@
#include "File.h"
#include "Help.h"
#include "Icons.h"
#include "LabelEditor.h"
#include "MergeView.h"
#include "ObjectEditor.h"
@@ -66,7 +65,7 @@ namespace glabels
///
MainWindow::MainWindow() : mModel(nullptr), mUndoRedoModel(nullptr)
{
setWindowIcon( Icons::Glabels() );
setWindowIcon( QIcon::fromTheme( "glabels" ) );
createActions();
createMenus();
@@ -99,7 +98,7 @@ namespace glabels
// Add "Welcome" page
mPages->addWidget( welcomePage );
mWelcomeButton = new QToolButton( this );
mWelcomeButton->setIcon( Icons::Glabels() );
mWelcomeButton->setIcon( QIcon::fromTheme( "glabels" ) );
mWelcomeButton->setText( tr("Welcome") );
mWelcomeButton->setToolButtonStyle( Qt::ToolButtonTextUnderIcon );
mWelcomeButton->setCheckable( true );
@@ -111,7 +110,7 @@ namespace glabels
// Add "Editor" page
mPages->addWidget( editorPage );
mEditorButton = new QToolButton( this );
mEditorButton->setIcon( Icons::Edit() );
mEditorButton->setIcon( QIcon::fromTheme( "glabels-edit" ) );
mEditorButton->setText( tr("Edit") );
mEditorButton->setToolButtonStyle( Qt::ToolButtonTextUnderIcon );
mEditorButton->setCheckable( true );
@@ -123,7 +122,7 @@ namespace glabels
// Add "Properties" page
mPages->addWidget( propertiesPage );
mPropertiesButton = new QToolButton( this );
mPropertiesButton->setIcon( Icons::Properties() );
mPropertiesButton->setIcon( QIcon::fromTheme( "glabels-properties" ) );
mPropertiesButton->setText( tr("Properties") );
mPropertiesButton->setToolButtonStyle( Qt::ToolButtonTextUnderIcon );
mPropertiesButton->setCheckable( true );
@@ -135,7 +134,7 @@ namespace glabels
// Add "Merge" page
mPages->addWidget( mergePage );
mMergeButton = new QToolButton( this );
mMergeButton->setIcon( Icons::Merge() );
mMergeButton->setIcon( QIcon::fromTheme( "glabels-merge" ) );
mMergeButton->setText( tr("Merge") );
mMergeButton->setToolButtonStyle( Qt::ToolButtonTextUnderIcon );
mMergeButton->setCheckable( true );
@@ -147,7 +146,7 @@ namespace glabels
// Add "Variables" page
mPages->addWidget( variablesPage );
mVariablesButton = new QToolButton( this );
mVariablesButton->setIcon( Icons::Variables() );
mVariablesButton->setIcon( QIcon::fromTheme( "glabels-variables" ) );
mVariablesButton->setText( tr("Variables") );
mVariablesButton->setToolButtonStyle( Qt::ToolButtonTextUnderIcon );
mVariablesButton->setCheckable( true );
@@ -159,7 +158,7 @@ namespace glabels
// Add "Print" page
mPages->addWidget( printPage );
mPrintButton = new QToolButton( this );
mPrintButton->setIcon( Icons::FilePrint() );
mPrintButton->setIcon( QIcon::fromTheme( "glabels-print" ) );
mPrintButton->setText( tr("Print") );
mPrintButton->setToolButtonStyle( Qt::ToolButtonTextUnderIcon );
mPrintButton->setCheckable( true );
@@ -295,13 +294,13 @@ namespace glabels
{
/* File actions */
fileNewAction = new QAction( tr("&New..."), this );
fileNewAction->setIcon( Icons::FileNew() );
fileNewAction->setIcon( QIcon::fromTheme( "glabels-file-new" ) );
fileNewAction->setShortcut( QKeySequence::New );
fileNewAction->setStatusTip( tr("Create a new gLabels project") );
connect( fileNewAction, SIGNAL(triggered()), this, SLOT(fileNew()) );
fileOpenAction = new QAction( tr("&Open..."), this );
fileOpenAction->setIcon( Icons::FileOpen() );
fileOpenAction->setIcon( QIcon::fromTheme( "glabels-file-open" ) );
fileOpenAction->setShortcut( QKeySequence::Open );
fileOpenAction->setStatusTip( tr("Open an existing gLabels project") );
connect( fileOpenAction, SIGNAL(triggered()), this, SLOT(fileOpen()) );
@@ -309,19 +308,20 @@ namespace glabels
for ( int i = 0; i < model::Settings::maxRecentFiles(); i++ )
{
auto* action = new QAction( this );
action->setIcon( QIcon::fromTheme( "glabels" ) );
action->setVisible( false );
fileRecentActionList.append( action );
connect( action, SIGNAL(triggered()), this, SLOT(fileOpenRecent()) );
}
fileSaveAction = new QAction( tr("&Save"), this );
fileSaveAction->setIcon( Icons::FileSave() );
fileSaveAction->setIcon( QIcon::fromTheme( "glabels-file-save" ) );
fileSaveAction->setShortcut( QKeySequence::Save );
fileSaveAction->setStatusTip( tr("Save current gLabels project") );
connect( fileSaveAction, SIGNAL(triggered()), this, SLOT(fileSave()) );
fileSaveAsAction = new QAction( tr("Save &As..."), this );
fileSaveAsAction->setIcon( Icons::FileSaveAs() );
fileSaveAsAction->setIcon( QIcon::fromTheme( "glabels-file-save-as" ) );
fileSaveAsAction->setShortcut( QKeySequence::SaveAs );
fileSaveAsAction->setStatusTip( tr("Save current gLabels project to a different name") );
connect( fileSaveAsAction, SIGNAL(triggered()), this, SLOT(fileSaveAs()) );
@@ -382,19 +382,19 @@ namespace glabels
connect( editRedoAction, SIGNAL(triggered()), this, SLOT(editRedo()) );
editCutAction = new QAction( tr("Cut"), this );
editCutAction->setIcon( Icons::EditCut() );
editCutAction->setIcon( QIcon::fromTheme( "glabels-edit-cut" ) );
editCutAction->setShortcut( QKeySequence::Cut );
editCutAction->setStatusTip( tr("Cut the selection") );
connect( editCutAction, SIGNAL(triggered()), this, SLOT(editCut()) );
editCopyAction = new QAction( tr("&Copy"), this );
editCopyAction->setIcon( Icons::EditCopy() );
editCopyAction->setIcon( QIcon::fromTheme( "glabels-edit-copy" ) );
editCopyAction->setShortcut( QKeySequence::Copy );
editCopyAction->setStatusTip( tr("Copy the selection") );
connect( editCopyAction, SIGNAL(triggered()), this, SLOT(editCopy()) );
editPasteAction = new QAction( tr("&Paste"), this );
editPasteAction->setIcon( Icons::EditPaste() );
editPasteAction->setIcon( QIcon::fromTheme( "glabels-edit-paste" ) );
editPasteAction->setShortcut( QKeySequence::Paste );
editPasteAction->setStatusTip( tr("Paste the clipboard") );
connect( editPasteAction, SIGNAL(triggered()), this, SLOT(editPaste()) );
@@ -446,136 +446,136 @@ namespace glabels
connect( viewMarkupAction, SIGNAL(toggled(bool)), this, SLOT(viewMarkup(bool)) );
viewZoomInAction = new QAction( tr("Zoom &In"), this );
viewZoomInAction->setIcon( Icons::ZoomIn() );
viewZoomInAction->setIcon( QIcon::fromTheme( "glabels-zoom-in" ) );
viewZoomInAction->setShortcut( QKeySequence::ZoomIn );
viewZoomInAction->setStatusTip( tr("Increase magnification") );
connect( viewZoomInAction, SIGNAL(triggered()), this, SLOT(viewZoomIn()) );
viewZoomOutAction = new QAction( tr("Zoom &Out"), this );
viewZoomOutAction->setIcon( Icons::ZoomOut() );
viewZoomOutAction->setIcon( QIcon::fromTheme( "glabels-zoom-out" ) );
viewZoomOutAction->setShortcut( QKeySequence::ZoomOut );
viewZoomOutAction->setStatusTip( tr("Decrease magnification") );
connect( viewZoomOutAction, SIGNAL(triggered()), this, SLOT(viewZoomOut()) );
viewZoom1To1Action = new QAction( tr("Zoom &1 to 1"), this );
viewZoom1To1Action->setIcon( Icons::ZoomOriginal() );
viewZoom1To1Action->setIcon( QIcon::fromTheme( "glabels-zoom-one-to-one" ) );
viewZoom1To1Action->setStatusTip( tr("Restore scale to 100%") );
connect( viewZoom1To1Action, SIGNAL(triggered()), this, SLOT(viewZoom1To1()) );
viewZoomToFitAction = new QAction( tr("Zoom to &Fit"), this );
viewZoomToFitAction->setIcon( Icons::ZoomBestFit() );
viewZoomToFitAction->setIcon( QIcon::fromTheme( "glabels-zoom-to-fit" ) );
viewZoomToFitAction->setStatusTip( tr("Set scale to fit window") );
connect( viewZoomToFitAction, SIGNAL(triggered()), this, SLOT(viewZoomToFit()) );
/* Object actions */
objectsArrowModeAction = new QAction( tr("Select Mode"), this );
objectsArrowModeAction->setIcon( Icons::Arrow() );
objectsArrowModeAction->setIcon( QIcon::fromTheme( "glabels-arrow" ) );
objectsArrowModeAction->setStatusTip( tr("Select, move and modify objects") );
connect( objectsArrowModeAction, SIGNAL(triggered()), this, SLOT(objectsArrowMode()) );
objectsCreateTextAction = new QAction( tr("Text"), this );
objectsCreateTextAction->setIcon( Icons::Text() );
objectsCreateTextAction->setIcon( QIcon::fromTheme( "glabels-text" ) );
objectsCreateTextAction->setStatusTip( tr("Create text object") );
connect( objectsCreateTextAction, SIGNAL(triggered()), this, SLOT(objectsCreateText()) );
objectsCreateBoxAction = new QAction( tr("Box"), this );
objectsCreateBoxAction->setIcon( Icons::Box() );
objectsCreateBoxAction->setIcon( QIcon::fromTheme( "glabels-box" ) );
objectsCreateBoxAction->setStatusTip( tr("Create box object") );
connect( objectsCreateBoxAction, SIGNAL(triggered()), this, SLOT(objectsCreateBox()) );
objectsCreateLineAction = new QAction( tr("Line"), this );
objectsCreateLineAction->setIcon( Icons::Line() );
objectsCreateLineAction->setIcon( QIcon::fromTheme( "glabels-line" ) );
objectsCreateLineAction->setStatusTip( tr("Create line object") );
connect( objectsCreateLineAction, SIGNAL(triggered()), this, SLOT(objectsCreateLine()) );
objectsCreateEllipseAction = new QAction( tr("Ellipse"), this );
objectsCreateEllipseAction->setIcon( Icons::Ellipse() );
objectsCreateEllipseAction->setIcon( QIcon::fromTheme( "glabels-ellipse" ) );
objectsCreateEllipseAction->setStatusTip( tr("Create ellipse/circle object") );
connect( objectsCreateEllipseAction, SIGNAL(triggered()), this, SLOT(objectsCreateEllipse()) );
objectsCreateImageAction = new QAction( tr("Image"), this );
objectsCreateImageAction->setIcon( Icons::Image() );
objectsCreateImageAction->setIcon( QIcon::fromTheme( "glabels-image" ) );
objectsCreateImageAction->setStatusTip( tr("Create image object") );
connect( objectsCreateImageAction, SIGNAL(triggered()), this, SLOT(objectsCreateImage()) );
objectsCreateBarcodeAction = new QAction( tr("Barcode"), this );
objectsCreateBarcodeAction->setIcon( Icons::Barcode() );
objectsCreateBarcodeAction->setIcon( QIcon::fromTheme( "glabels-barcode" ) );
objectsCreateBarcodeAction->setStatusTip( tr("Create barcode object") );
connect( objectsCreateBarcodeAction, SIGNAL(triggered()), this, SLOT(objectsCreateBarcode()) );
objectsOrderRaiseAction = new QAction( tr("Bring To Front"), this );
objectsOrderRaiseAction->setIcon( Icons::OrderTop() );
objectsOrderRaiseAction->setIcon( QIcon::fromTheme( "glabels-order-top" ) );
objectsOrderRaiseAction->setStatusTip( tr("Raise selection to top") );
connect( objectsOrderRaiseAction, SIGNAL(triggered()), this, SLOT(objectsOrderRaise()) );
objectsOrderLowerAction = new QAction( tr("Send To Back"), this );
objectsOrderLowerAction->setIcon( Icons::OrderBottom() );
objectsOrderLowerAction->setIcon( QIcon::fromTheme( "glabels-order-bottom" ) );
objectsOrderLowerAction->setStatusTip( tr("Lower selection to bottom") );
connect( objectsOrderLowerAction, SIGNAL(triggered()), this, SLOT(objectsOrderLower()) );
objectsXformRotateLeftAction = new QAction( tr("Rotate Left"), this );
objectsXformRotateLeftAction->setIcon( Icons::RotateLeft() );
objectsXformRotateLeftAction->setIcon( QIcon::fromTheme( "glabels-rotate-left" ) );
objectsXformRotateLeftAction->setStatusTip( tr("Rotate object(s) 90 degrees counter-clockwise") );
connect( objectsXformRotateLeftAction, SIGNAL(triggered()), this, SLOT(objectsXformRotateLeft()) );
objectsXformRotateRightAction = new QAction( tr("Rotate Right"), this );
objectsXformRotateRightAction->setIcon( Icons::RotateRight() );
objectsXformRotateRightAction->setIcon( QIcon::fromTheme( "glabels-rotate-right" ) );
objectsXformRotateRightAction->setStatusTip( tr("Rotate object(s) 90 degrees clockwise") );
connect( objectsXformRotateRightAction, SIGNAL(triggered()), this, SLOT(objectsXformRotateRight()) );
objectsXformFlipHorizAction = new QAction( tr("Flip Horizontally"), this );
objectsXformFlipHorizAction->setIcon( Icons::FlipHoriz() );
objectsXformFlipHorizAction->setIcon( QIcon::fromTheme( "glabels-flip-horiz" ) );
objectsXformFlipHorizAction->setStatusTip( tr("Flip object(s) horizontally") );
connect( objectsXformFlipHorizAction, SIGNAL(triggered()), this, SLOT(objectsXformFlipHoriz()) );
objectsXformFlipVertAction = new QAction( tr("Flip Vertically"), this );
objectsXformFlipVertAction->setIcon( Icons::FlipVert() );
objectsXformFlipVertAction->setIcon( QIcon::fromTheme( "glabels-flip-vert" ) );
objectsXformFlipVertAction->setStatusTip( tr("Flip object(s) vertically") );
connect( objectsXformFlipVertAction, SIGNAL(triggered()), this, SLOT(objectsXformFlipVert()) );
objectsAlignLeftAction = new QAction( tr("Align Left"), this );
objectsAlignLeftAction->setIcon( Icons::AlignLeft() );
objectsAlignLeftAction->setIcon( QIcon::fromTheme( "glabels-align-left" ) );
objectsAlignLeftAction->setStatusTip( tr("Align objects to left edges") );
connect( objectsAlignLeftAction, SIGNAL(triggered()), this, SLOT(objectsAlignLeft()) );
objectsAlignHCenterAction = new QAction( tr("Align Center"), this );
objectsAlignHCenterAction->setIcon( Icons::AlignHCenter() );
objectsAlignHCenterAction->setIcon( QIcon::fromTheme( "glabels-align-center" ) );
objectsAlignHCenterAction->setStatusTip( tr("Align objects to horizontal centers") );
connect( objectsAlignHCenterAction, SIGNAL(triggered()), this, SLOT(objectsAlignHCenter()) );
objectsAlignRightAction = new QAction( tr("Align Right"), this );
objectsAlignRightAction->setIcon( Icons::AlignRight() );
objectsAlignRightAction->setIcon( QIcon::fromTheme( "glabels-align-right" ) );
objectsAlignRightAction->setStatusTip( tr("Align objects to right edges") );
connect( objectsAlignRightAction, SIGNAL(triggered()), this, SLOT(objectsAlignRight()) );
objectsAlignTopAction = new QAction( tr("Align Top"), this );
objectsAlignTopAction->setIcon( Icons::AlignTop() );
objectsAlignTopAction->setIcon( QIcon::fromTheme( "glabels-align-top" ) );
objectsAlignTopAction->setStatusTip( tr("Align objects to top edges") );
connect( objectsAlignTopAction, SIGNAL(triggered()), this, SLOT(objectsAlignTop()) );
objectsAlignVCenterAction = new QAction( tr("Align Middle"), this );
objectsAlignVCenterAction->setIcon( Icons::AlignVCenter() );
objectsAlignVCenterAction->setIcon( QIcon::fromTheme( "glabels-align-vcenter" ) );
objectsAlignVCenterAction->setStatusTip( tr("Align objects to vertical centers") );
connect( objectsAlignVCenterAction, SIGNAL(triggered()), this, SLOT(objectsAlignVCenter()) );
objectsAlignBottomAction = new QAction( tr("Align Bottom"), this );
objectsAlignBottomAction->setIcon( Icons::AlignBottom() );
objectsAlignBottomAction->setIcon( QIcon::fromTheme( "glabels-align-bottom" ) );
objectsAlignBottomAction->setStatusTip( tr("Align objects to bottom edges") );
connect( objectsAlignBottomAction, SIGNAL(triggered()), this, SLOT(objectsAlignBottom()) );
objectsCenterHorizAction = new QAction( tr("Center Horizontally"), this );
objectsCenterHorizAction->setIcon( Icons::CenterHoriz() );
objectsCenterHorizAction->setIcon( QIcon::fromTheme( "glabels-center-horiz" ) );
objectsCenterHorizAction->setStatusTip( tr("Horizontally center objects in label") );
connect( objectsCenterHorizAction, SIGNAL(triggered()), this, SLOT(objectsCenterHoriz()) );
objectsCenterVertAction = new QAction( tr("Center Vertically"), this );
objectsCenterVertAction->setIcon( Icons::CenterVert() );
objectsCenterVertAction->setIcon( QIcon::fromTheme( "glabels-center-vert" ) );
objectsCenterVertAction->setStatusTip( tr("Vertically center objects in label") );
connect( objectsCenterVertAction, SIGNAL(triggered()), this, SLOT(objectsCenterVert()) );
objectsCenterAction = new QAction( tr("Center Both"), this );
objectsCenterAction->setIcon( Icons::Center() );
objectsCenterAction->setIcon( QIcon::fromTheme( "glabels-center" ) );
objectsCenterAction->setStatusTip( tr("Center objects in label") );
connect( objectsCenterAction, SIGNAL(triggered()), this, SLOT(objectsCenter()) );
@@ -599,17 +599,17 @@ namespace glabels
/* Context menu version of edit actions */
contextCutAction = new QAction( tr("Cut"), this );
contextCutAction->setIcon( Icons::EditCut() );
contextCutAction->setIcon( QIcon::fromTheme( "glabels-edit-cut" ) );
contextCutAction->setStatusTip( tr("Cut the selection") );
connect( contextCutAction, SIGNAL(triggered()), this, SLOT(editCut()) );
contextCopyAction = new QAction( tr("&Copy"), this );
contextCopyAction->setIcon( Icons::EditCopy() );
contextCopyAction->setIcon( QIcon::fromTheme( "glabels-edit-copy" ) );
contextCopyAction->setStatusTip( tr("Copy the selection") );
connect( contextCopyAction, SIGNAL(triggered()), this, SLOT(editCopy()) );
contextPasteAction = new QAction( tr("&Paste"), this );
contextPasteAction->setIcon( Icons::EditPaste() );
contextPasteAction->setIcon( QIcon::fromTheme( "glabels-edit-paste" ) );
contextPasteAction->setStatusTip( tr("Paste the clipboard") );
connect( contextPasteAction, SIGNAL(triggered()), this, SLOT(editContextPaste()) );
@@ -628,7 +628,7 @@ namespace glabels
fileMenu = menuBar()->addMenu( tr("&File") );
fileMenu->addAction( fileNewAction );
fileMenu->addAction( fileOpenAction );
fileRecentMenu = fileMenu->addMenu( Icons::FileRecent(), tr("Open Recent") );
fileRecentMenu = fileMenu->addMenu( QIcon::fromTheme( "glabels-file-recent" ), tr("Open Recent") );
for ( auto* action : fileRecentActionList )
{
fileRecentMenu->addAction( action );
+7 -7
View File
@@ -364,7 +364,7 @@ namespace glabels
if ( dynamic_cast<model::ModelBoxObject*>(mObject) )
{
titleImageLabel->setPixmap( QPixmap(":icons/flat/24x24/glabels-box.svg") );
titleImageLabel->setPixmap( QIcon::fromTheme( "glabels-box" ).pixmap( 24 ) );
titleLabel->setText( tr("Box object properties") );
notebook->addTab( lineFillPage, tr("line/fill") );
@@ -385,7 +385,7 @@ namespace glabels
}
else if ( dynamic_cast<model::ModelEllipseObject*>(mObject) )
{
titleImageLabel->setPixmap( QPixmap(":icons/flat/24x24/glabels-ellipse.svg") );
titleImageLabel->setPixmap( QIcon::fromTheme( "glabels-ellipse" ).pixmap( 24 ) );
titleLabel->setText( tr("Ellipse object properties") );
notebook->addTab( lineFillPage, tr("line/fill") );
@@ -406,7 +406,7 @@ namespace glabels
}
else if ( dynamic_cast<model::ModelImageObject*>(mObject) )
{
titleImageLabel->setPixmap( QPixmap(":icons/flat/24x24/glabels-image.svg") );
titleImageLabel->setPixmap( QIcon::fromTheme( "glabels-image" ).pixmap( 24 ) );
titleLabel->setText( tr("Image object properties") );
notebook->addTab( imagePage, tr("image") );
@@ -426,7 +426,7 @@ namespace glabels
}
else if ( dynamic_cast<model::ModelLineObject*>(mObject) )
{
titleImageLabel->setPixmap( QPixmap(":icons/flat/24x24/glabels-line.svg") );
titleImageLabel->setPixmap( QIcon::fromTheme( "glabels-line" ).pixmap( 24 ) );
titleLabel->setText( tr("Line object properties") );
notebook->addTab( lineFillPage, tr("line/fill") );
@@ -447,7 +447,7 @@ namespace glabels
}
else if ( dynamic_cast<model::ModelTextObject*>(mObject) )
{
titleImageLabel->setPixmap( QPixmap(":icons/flat/24x24/glabels-text.svg") );
titleImageLabel->setPixmap( QIcon::fromTheme( "glabels-text" ).pixmap( 24 ) );
titleLabel->setText( tr("Text object properties") );
notebook->addTab( textPage, tr("text") );
@@ -467,7 +467,7 @@ namespace glabels
}
else if ( dynamic_cast<model::ModelBarcodeObject*>(mObject) )
{
titleImageLabel->setPixmap( QPixmap(":icons/flat/24x24/glabels-barcode.svg") );
titleImageLabel->setPixmap( QIcon::fromTheme( "glabels-barcode" ).pixmap( 24 ) );
titleLabel->setText( tr("Barcode object properties") );
notebook->addTab( barcodePage, tr("barcode") );
@@ -496,7 +496,7 @@ namespace glabels
{
mObject = nullptr;
titleImageLabel->setPixmap( QPixmap(":icons/flat/24x24/glabels-object-properties.svg") );
titleImageLabel->setPixmap( QIcon::fromTheme( "glabels-object-properties" ).pixmap( 24 ) );
titleLabel->setText( tr("Object properties") );
setEnabled( false );
}
+4 -5
View File
@@ -21,7 +21,6 @@
#include "SelectProductDialog.h"
#include "Icons.h"
#include "NotebookUtil.h"
#include "TemplatePickerItem.h"
@@ -70,12 +69,12 @@ namespace glabels
if ( templatePicker->mode() == QListView::IconMode )
{
viewModeButton->setIcon( Icons::ViewList() );
viewModeButton->setIcon( QIcon::fromTheme( "glabels-view-list" ) );
viewModeButton->setToolTip( tr( "List View" ) );
}
else
{
viewModeButton->setIcon( Icons::ViewGrid() );
viewModeButton->setIcon( QIcon::fromTheme( "glabels-view-grid" ) );
viewModeButton->setToolTip( tr( "Grid View" ) );
}
@@ -212,14 +211,14 @@ namespace glabels
{
templatePicker->setMode( QListView::ListMode );
viewModeButton->setIcon( Icons::ViewList() );
viewModeButton->setIcon( QIcon::fromTheme( "glabels-view-list" ) );
viewModeButton->setToolTip( tr( "List View" ) );
}
else
{
templatePicker->setMode( QListView::IconMode );
viewModeButton->setIcon( Icons::ViewGrid() );
viewModeButton->setIcon( QIcon::fromTheme( "glabels-view-grid" ) );
viewModeButton->setToolTip( tr( "Grid View" ) );
}
}
+1
View File
@@ -52,6 +52,7 @@ namespace glabels
{
QString basename = QFileInfo( filename ).completeBaseName();
auto* action = new QAction( basename, this );
action->setIcon( QIcon::fromTheme( "glabels" ) );
action->setData( filename );
connect( action, SIGNAL(triggered()), this, SLOT(onOpenRecentAction()) );
recentMenu->addAction( action );
+1 -1
View File
@@ -113,7 +113,7 @@ namespace glabels
: QWizard(parent)
{
setWindowTitle( tr("Product Template Designer") );
setPixmap( QWizard::LogoPixmap, QPixmap( ":icons/apps/48x48/glabels.svg" ) );
setPixmap( QWizard::LogoPixmap, QIcon::fromTheme( "glabels" ).pixmap( 48 ) );
setWizardStyle( QWizard::ModernStyle );
setOption( QWizard::IndependentPages, false );
setOption( QWizard::NoBackButtonOnStartPage, true );
+135 -115
View File
@@ -3,124 +3,144 @@
<RCC version="1.0">
<qresource>
<file>icons/flat/16x16/glabels-align-bottom.svg</file>
<file>icons/flat/16x16/glabels-align-hcenter.svg</file>
<file>icons/flat/16x16/glabels-align-left.svg</file>
<file>icons/flat/16x16/glabels-align-right.svg</file>
<file>icons/flat/16x16/glabels-align-top.svg</file>
<file>icons/flat/16x16/glabels-align-vcenter.svg</file>
<file>icons/flat/16x16/glabels-arrow.svg</file>
<file>icons/flat/16x16/glabels-barcode.svg</file>
<file>icons/flat/16x16/glabels-box.svg</file>
<file>icons/flat/16x16/glabels-center.svg</file>
<file>icons/flat/16x16/glabels-center-horiz.svg</file>
<file>icons/flat/16x16/glabels-center-vert.svg</file>
<file>icons/flat/16x16/glabels-edit-clear.svg</file>
<file>icons/flat/16x16/glabels-edit-copy.svg</file>
<file>icons/flat/16x16/glabels-edit-cut.svg</file>
<file>icons/flat/16x16/glabels-edit-paste.svg</file>
<file>icons/flat/16x16/glabels-ellipse.svg</file>
<file>icons/flat/16x16/glabels-file-new.svg</file>
<file>icons/flat/16x16/glabels-file-open.svg</file>
<file>icons/flat/16x16/glabels-file-recent.svg</file>
<file>icons/flat/16x16/glabels-file-save.svg</file>
<file>icons/flat/16x16/glabels-file-save-as.svg</file>
<file>icons/flat/16x16/glabels-flip-horiz.svg</file>
<file>icons/flat/16x16/glabels-flip-vert.svg</file>
<file>icons/flat/16x16/glabels-image.svg</file>
<file>icons/flat/16x16/glabels-line.svg</file>
<file>icons/flat/16x16/glabels-order-bottom.svg</file>
<file>icons/flat/16x16/glabels-order-top.svg</file>
<file>icons/flat/16x16/glabels-rotate-left.svg</file>
<file>icons/flat/16x16/glabels-rotate-right.svg</file>
<file>icons/flat/16x16/glabels-text.svg</file>
<file>icons/flat/16x16/glabels-zoom-in.svg</file>
<file>icons/flat/16x16/glabels-zoom-one-to-one.svg</file>
<file>icons/flat/16x16/glabels-zoom-out.svg</file>
<file>icons/flat/16x16/glabels-zoom-to-fit.svg</file>
<file>icons/apps/16x16/glabels.svg</file>
<file>icons/flat/22x22/glabels-align-text-center.svg</file>
<file>icons/flat/22x22/glabels-align-text-left.svg</file>
<file>icons/flat/22x22/glabels-align-text-right.svg</file>
<file>icons/flat/22x22/glabels-arrow.svg</file>
<file>icons/flat/22x22/glabels-barcode.svg</file>
<file>icons/flat/22x22/glabels-box.svg</file>
<file>icons/flat/22x22/glabels-edit-copy.svg</file>
<file>icons/flat/22x22/glabels-edit-cut.svg</file>
<file>icons/flat/22x22/glabels-edit-paste.svg</file>
<file>icons/flat/22x22/glabels-ellipse.svg</file>
<file>icons/flat/22x22/glabels-file-new.svg</file>
<file>icons/flat/22x22/glabels-file-open.svg</file>
<file>icons/flat/22x22/glabels-file-recent.svg</file>
<file>icons/flat/22x22/glabels-file-save.svg</file>
<file>icons/flat/22x22/glabels-file-save-as.svg</file>
<file>icons/flat/22x22/glabels-format-text-bold.svg</file>
<file>icons/flat/22x22/glabels-format-text-italic.svg</file>
<file>icons/flat/22x22/glabels-format-text-underline.svg</file>
<file>icons/flat/22x22/glabels-image.svg</file>
<file>icons/flat/22x22/glabels-line.svg</file>
<file>icons/flat/22x22/glabels-text.svg</file>
<file>icons/flat/22x22/glabels-valign-text-bottom.svg</file>
<file>icons/flat/22x22/glabels-valign-text-middle.svg</file>
<file>icons/flat/22x22/glabels-valign-text-top.svg</file>
<file>icons/flat/22x22/glabels-view-grid.svg</file>
<file>icons/flat/22x22/glabels-view-list.svg</file>
<file>icons/flat/22x22/glabels-zoom-in.svg</file>
<file>icons/flat/22x22/glabels-zoom-one-to-one.svg</file>
<file>icons/flat/22x22/glabels-zoom-out.svg</file>
<file>icons/flat/22x22/glabels-zoom-to-fit.svg</file>
<file>icons/apps/22x22/glabels.svg</file>
<file>icons/flat/24x24/glabels-align-text-center.svg</file>
<file>icons/flat/24x24/glabels-align-text-left.svg</file>
<file>icons/flat/24x24/glabels-align-text-right.svg</file>
<file>icons/flat/24x24/glabels-arrow.svg</file>
<file>icons/flat/24x24/glabels-barcode.svg</file>
<file>icons/flat/24x24/glabels-box.svg</file>
<file>icons/flat/24x24/glabels-edit-copy.svg</file>
<file>icons/flat/24x24/glabels-edit-cut.svg</file>
<file>icons/flat/24x24/glabels-edit-paste.svg</file>
<file>icons/flat/24x24/glabels-ellipse.svg</file>
<file>icons/flat/24x24/glabels-file-new.svg</file>
<file>icons/flat/24x24/glabels-file-open.svg</file>
<file>icons/flat/24x24/glabels-file-recent.svg</file>
<file>icons/flat/24x24/glabels-file-save.svg</file>
<file>icons/flat/24x24/glabels-file-save-as.svg</file>
<file>icons/flat/24x24/glabels-format-text-bold.svg</file>
<file>icons/flat/24x24/glabels-format-text-italic.svg</file>
<file>icons/flat/24x24/glabels-format-text-underline.svg</file>
<file>icons/flat/24x24/glabels-image.svg</file>
<file>icons/flat/24x24/glabels-line.svg</file>
<file>icons/flat/24x24/glabels-object-properties.svg</file>
<file>icons/flat/24x24/glabels-text.svg</file>
<file>icons/flat/24x24/glabels-valign-text-bottom.svg</file>
<file>icons/flat/24x24/glabels-valign-text-middle.svg</file>
<file>icons/flat/24x24/glabels-valign-text-top.svg</file>
<!-- flat icon theme index -->
<file>icons/glabels-flat/index.theme</file>
<file>icons/flat/32x32/glabels-collated.svg</file>
<file>icons/flat/32x32/glabels-file-new.svg</file>
<file>icons/flat/32x32/glabels-file-open.svg</file>
<file>icons/flat/32x32/glabels-file-recent.svg</file>
<file>icons/flat/32x32/glabels-label-orientation-horiz.svg</file>
<file>icons/flat/32x32/glabels-label-orientation-vert.svg</file>
<file>icons/flat/32x32/glabels-merge-group-contiguous.svg</file>
<file>icons/flat/32x32/glabels-merge-group-page.svg</file>
<file>icons/flat/32x32/glabels-print.svg</file>
<file>icons/flat/32x32/glabels-select-product.svg</file>
<file>icons/flat/32x32/glabels-uncollated.svg</file>
<file>icons/apps/32x32/glabels.svg</file>
<!-- flat: 16 x 16 -->
<file>icons/glabels-flat/16x16/actions/glabels-align-bottom.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-align-hcenter.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-align-left.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-align-right.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-align-top.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-align-vcenter.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-arrow.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-barcode.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-box.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-center-horiz.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-center.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-center-vert.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-edit-clear.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-edit-copy.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-edit-cut.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-edit-paste.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-ellipse.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-file-new.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-file-open.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-file-recent.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-file-save-as.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-file-save.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-flip-horiz.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-flip-vert.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-image.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-line.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-order-bottom.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-order-top.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-rotate-left.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-rotate-right.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-text.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-zoom-in.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-zoom-one-to-one.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-zoom-out.svg</file>
<file>icons/glabels-flat/16x16/actions/glabels-zoom-to-fit.svg</file>
<file>icons/flat/48x48/glabels-edit.svg</file>
<file>icons/flat/48x48/glabels-merge.svg</file>
<file>icons/flat/48x48/glabels-print.svg</file>
<file>icons/flat/48x48/glabels-properties.svg</file>
<file>icons/flat/48x48/glabels-variables.svg</file>
<file>icons/apps/48x48/glabels.svg</file>
<file>icons/glabels-flat/16x16/apps/glabels.svg</file>
<file>icons/apps/128x128/glabels.svg</file>
<file>icons/apps/scalable/glabels.svg</file>
<!-- flat: 22 x 22 -->
<file>icons/glabels-flat/22x22/actions/glabels-align-text-center.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-align-text-left.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-align-text-right.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-arrow.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-barcode.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-box.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-edit-copy.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-edit-cut.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-edit-paste.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-ellipse.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-file-new.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-file-open.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-file-recent.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-file-save-as.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-file-save.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-format-text-bold.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-format-text-italic.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-format-text-underline.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-image.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-line.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-text.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-valign-text-bottom.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-valign-text-middle.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-valign-text-top.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-view-grid.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-view-list.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-zoom-in.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-zoom-one-to-one.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-zoom-out.svg</file>
<file>icons/glabels-flat/22x22/actions/glabels-zoom-to-fit.svg</file>
<file>icons/glabels-flat/22x22/apps/glabels.svg</file>
<!-- flat: 24 x 24 -->
<file>icons/glabels-flat/24x24/actions/glabels-align-text-center.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-align-text-left.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-align-text-right.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-arrow.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-barcode.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-box.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-edit-copy.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-edit-cut.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-edit-paste.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-ellipse.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-file-new.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-file-open.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-file-recent.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-file-save-as.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-file-save.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-format-text-bold.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-format-text-italic.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-format-text-underline.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-image.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-line.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-object-properties.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-text.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-valign-text-bottom.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-valign-text-middle.svg</file>
<file>icons/glabels-flat/24x24/actions/glabels-valign-text-top.svg</file>
<!-- flat: 32 x 32 -->
<file>icons/glabels-flat/32x32/actions/glabels-collated.svg</file>
<file>icons/glabels-flat/32x32/actions/glabels-file-new.svg</file>
<file>icons/glabels-flat/32x32/actions/glabels-file-open.svg</file>
<file>icons/glabels-flat/32x32/actions/glabels-file-recent.svg</file>
<file>icons/glabels-flat/32x32/actions/glabels-label-orientation-horiz.svg</file>
<file>icons/glabels-flat/32x32/actions/glabels-label-orientation-vert.svg</file>
<file>icons/glabels-flat/32x32/actions/glabels-merge-group-contiguous.svg</file>
<file>icons/glabels-flat/32x32/actions/glabels-merge-group-page.svg</file>
<file>icons/glabels-flat/32x32/actions/glabels-print.svg</file>
<file>icons/glabels-flat/32x32/actions/glabels-select-product.svg</file>
<file>icons/glabels-flat/32x32/actions/glabels-uncollated.svg</file>
<file>icons/glabels-flat/32x32/apps/glabels.svg</file>
<!-- flat: 48 x 48 -->
<file>icons/glabels-flat/48x48/actions/glabels-edit.svg</file>
<file>icons/glabels-flat/48x48/actions/glabels-merge.svg</file>
<file>icons/glabels-flat/48x48/actions/glabels-print.svg</file>
<file>icons/glabels-flat/48x48/actions/glabels-properties.svg</file>
<file>icons/glabels-flat/48x48/actions/glabels-variables.svg</file>
<file>icons/glabels-flat/48x48/apps/glabels.svg</file>
<!-- flat: 128 x 128 -->
<file>icons/glabels-flat/128x128/apps/glabels.svg</file>
<!-- flat: scalable -->
<file>icons/glabels-flat/scalable/apps/glabels.svg</file>
<!-- mimetypes -->
<file>icons/mimetypes/16x16/x-glabels-project.svg</file>
<file>icons/mimetypes/22x22/x-glabels-project.svg</file>
<file>icons/mimetypes/24x24/x-glabels-project.svg</file>
<file>icons/mimetypes/scalable/x-glabels-project.svg</file>
</qresource>
</RCC>

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Before

Width:  |  Height:  |  Size: 625 B

After

Width:  |  Height:  |  Size: 625 B

Before

Width:  |  Height:  |  Size: 623 B

After

Width:  |  Height:  |  Size: 623 B

Before

Width:  |  Height:  |  Size: 623 B

After

Width:  |  Height:  |  Size: 623 B

Before

Width:  |  Height:  |  Size: 625 B

After

Width:  |  Height:  |  Size: 625 B

Before

Width:  |  Height:  |  Size: 623 B

After

Width:  |  Height:  |  Size: 623 B

Before

Width:  |  Height:  |  Size: 623 B

After

Width:  |  Height:  |  Size: 623 B

Before

Width:  |  Height:  |  Size: 308 B

After

Width:  |  Height:  |  Size: 308 B

Before

Width:  |  Height:  |  Size: 584 B

After

Width:  |  Height:  |  Size: 584 B

Before

Width:  |  Height:  |  Size: 231 B

After

Width:  |  Height:  |  Size: 231 B

Before

Width:  |  Height:  |  Size: 636 B

After

Width:  |  Height:  |  Size: 636 B

Before

Width:  |  Height:  |  Size: 636 B

After

Width:  |  Height:  |  Size: 636 B

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

Before

Width:  |  Height:  |  Size: 443 B

After

Width:  |  Height:  |  Size: 443 B

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

Before

Width:  |  Height:  |  Size: 503 B

After

Width:  |  Height:  |  Size: 503 B

Before

Width:  |  Height:  |  Size: 833 B

After

Width:  |  Height:  |  Size: 833 B

Before

Width:  |  Height:  |  Size: 214 B

After

Width:  |  Height:  |  Size: 214 B

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

Before

Width:  |  Height:  |  Size: 403 B

After

Width:  |  Height:  |  Size: 403 B

Before

Width:  |  Height:  |  Size: 428 B

After

Width:  |  Height:  |  Size: 428 B

Before

Width:  |  Height:  |  Size: 635 B

After

Width:  |  Height:  |  Size: 635 B

Before

Width:  |  Height:  |  Size: 500 B

After

Width:  |  Height:  |  Size: 500 B

Before

Width:  |  Height:  |  Size: 544 B

After

Width:  |  Height:  |  Size: 544 B

Before

Width:  |  Height:  |  Size: 544 B

After

Width:  |  Height:  |  Size: 544 B

Before

Width:  |  Height:  |  Size: 402 B

After

Width:  |  Height:  |  Size: 402 B

Before

Width:  |  Height:  |  Size: 204 B

After

Width:  |  Height:  |  Size: 204 B

Before

Width:  |  Height:  |  Size: 367 B

After

Width:  |  Height:  |  Size: 367 B

Before

Width:  |  Height:  |  Size: 367 B

After

Width:  |  Height:  |  Size: 367 B

Before

Width:  |  Height:  |  Size: 552 B

After

Width:  |  Height:  |  Size: 552 B

Before

Width:  |  Height:  |  Size: 555 B

After

Width:  |  Height:  |  Size: 555 B

Before

Width:  |  Height:  |  Size: 235 B

After

Width:  |  Height:  |  Size: 235 B

Before

Width:  |  Height:  |  Size: 699 B

After

Width:  |  Height:  |  Size: 699 B

Before

Width:  |  Height:  |  Size: 773 B

After

Width:  |  Height:  |  Size: 773 B

Before

Width:  |  Height:  |  Size: 665 B

After

Width:  |  Height:  |  Size: 665 B

Before

Width:  |  Height:  |  Size: 965 B

After

Width:  |  Height:  |  Size: 965 B

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Before

Width:  |  Height:  |  Size: 485 B

After

Width:  |  Height:  |  Size: 485 B

Before

Width:  |  Height:  |  Size: 487 B

After

Width:  |  Height:  |  Size: 487 B

Before

Width:  |  Height:  |  Size: 485 B

After

Width:  |  Height:  |  Size: 485 B

Before

Width:  |  Height:  |  Size: 311 B

After

Width:  |  Height:  |  Size: 311 B

Before

Width:  |  Height:  |  Size: 784 B

After

Width:  |  Height:  |  Size: 784 B

Before

Width:  |  Height:  |  Size: 231 B

After

Width:  |  Height:  |  Size: 231 B

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Before

Width:  |  Height:  |  Size: 505 B

After

Width:  |  Height:  |  Size: 505 B

Before

Width:  |  Height:  |  Size: 957 B

After

Width:  |  Height:  |  Size: 957 B

Before

Width:  |  Height:  |  Size: 216 B

After

Width:  |  Height:  |  Size: 216 B

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Before

Width:  |  Height:  |  Size: 414 B

After

Width:  |  Height:  |  Size: 414 B

Before

Width:  |  Height:  |  Size: 438 B

After

Width:  |  Height:  |  Size: 438 B

Before

Width:  |  Height:  |  Size: 638 B

After

Width:  |  Height:  |  Size: 638 B

Before

Width:  |  Height:  |  Size: 502 B

After

Width:  |  Height:  |  Size: 502 B

Before

Width:  |  Height:  |  Size: 402 B

After

Width:  |  Height:  |  Size: 402 B

Before

Width:  |  Height:  |  Size: 403 B

After

Width:  |  Height:  |  Size: 403 B

Before

Width:  |  Height:  |  Size: 509 B

After

Width:  |  Height:  |  Size: 509 B

Before

Width:  |  Height:  |  Size: 402 B

After

Width:  |  Height:  |  Size: 402 B

Before

Width:  |  Height:  |  Size: 204 B

After

Width:  |  Height:  |  Size: 204 B

Before

Width:  |  Height:  |  Size: 244 B

After

Width:  |  Height:  |  Size: 244 B

Before

Width:  |  Height:  |  Size: 399 B

After

Width:  |  Height:  |  Size: 399 B

Before

Width:  |  Height:  |  Size: 513 B

After

Width:  |  Height:  |  Size: 513 B

Before

Width:  |  Height:  |  Size: 403 B

After

Width:  |  Height:  |  Size: 403 B

Before

Width:  |  Height:  |  Size: 483 B

After

Width:  |  Height:  |  Size: 483 B

Before

Width:  |  Height:  |  Size: 681 B

After

Width:  |  Height:  |  Size: 681 B

Before

Width:  |  Height:  |  Size: 715 B

After

Width:  |  Height:  |  Size: 715 B

Before

Width:  |  Height:  |  Size: 777 B

After

Width:  |  Height:  |  Size: 777 B

Before

Width:  |  Height:  |  Size: 669 B

After

Width:  |  Height:  |  Size: 669 B

Before

Width:  |  Height:  |  Size: 973 B

After

Width:  |  Height:  |  Size: 973 B

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Before

Width:  |  Height:  |  Size: 485 B

After

Width:  |  Height:  |  Size: 485 B

Before

Width:  |  Height:  |  Size: 487 B

After

Width:  |  Height:  |  Size: 487 B

Before

Width:  |  Height:  |  Size: 486 B

After

Width:  |  Height:  |  Size: 486 B

Before

Width:  |  Height:  |  Size: 311 B

After

Width:  |  Height:  |  Size: 311 B

Before

Width:  |  Height:  |  Size: 784 B

After

Width:  |  Height:  |  Size: 784 B

Before

Width:  |  Height:  |  Size: 231 B

After

Width:  |  Height:  |  Size: 231 B

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Before

Width:  |  Height:  |  Size: 506 B

After

Width:  |  Height:  |  Size: 506 B

Before

Width:  |  Height:  |  Size: 957 B

After

Width:  |  Height:  |  Size: 957 B

Before

Width:  |  Height:  |  Size: 216 B

After

Width:  |  Height:  |  Size: 216 B

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Before

Width:  |  Height:  |  Size: 415 B

After

Width:  |  Height:  |  Size: 415 B

Before

Width:  |  Height:  |  Size: 438 B

After

Width:  |  Height:  |  Size: 438 B

Before

Width:  |  Height:  |  Size: 641 B

After

Width:  |  Height:  |  Size: 641 B

Before

Width:  |  Height:  |  Size: 503 B

After

Width:  |  Height:  |  Size: 503 B

Before

Width:  |  Height:  |  Size: 403 B

After

Width:  |  Height:  |  Size: 403 B

Before

Width:  |  Height:  |  Size: 403 B

After

Width:  |  Height:  |  Size: 403 B

Before

Width:  |  Height:  |  Size: 509 B

After

Width:  |  Height:  |  Size: 509 B

Before

Width:  |  Height:  |  Size: 404 B

After

Width:  |  Height:  |  Size: 404 B

Before

Width:  |  Height:  |  Size: 204 B

After

Width:  |  Height:  |  Size: 204 B

Before

Width:  |  Height:  |  Size: 561 B

After

Width:  |  Height:  |  Size: 561 B

Before

Width:  |  Height:  |  Size: 245 B

After

Width:  |  Height:  |  Size: 245 B

Before

Width:  |  Height:  |  Size: 404 B

After

Width:  |  Height:  |  Size: 404 B

Some files were not shown because too many files have changed in this diff Show More