Add generic templates (#307)
- Add generic full-page templates. (This feature from 3.4 was missing)
- Also add generic half-page, quarter-page, and envelope templates.
- Add several more common envelope sizes to page-sizes.xml
- Qt print backend does not need pwg_size.
- Replace with pwg_class, to distinguish between ISO and NA sizes
This commit is contained in:
@@ -207,6 +207,7 @@ namespace glabels
|
|||||||
if ( auto* tItem = dynamic_cast<TemplatePickerItem *>( mModel->item( i, 0 ) ) )
|
if ( auto* tItem = dynamic_cast<TemplatePickerItem *>( mModel->item( i, 0 ) ) )
|
||||||
{
|
{
|
||||||
bool nameMask = tItem->tmplate().name().contains( searchString, Qt::CaseInsensitive );
|
bool nameMask = tItem->tmplate().name().contains( searchString, Qt::CaseInsensitive );
|
||||||
|
bool descMask = tItem->tmplate().description().contains( searchString, Qt::CaseInsensitive );
|
||||||
|
|
||||||
bool sizeMask =
|
bool sizeMask =
|
||||||
(isoMask && tItem->tmplate().isSizeIso()) ||
|
(isoMask && tItem->tmplate().isSizeIso()) ||
|
||||||
@@ -228,7 +229,7 @@ namespace glabels
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if ( nameMask && sizeMask && categoryMask )
|
if ( (nameMask||descMask) && sizeMask && categoryMask )
|
||||||
{
|
{
|
||||||
setRowHidden( i, false );
|
setRowHidden( i, false );
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ set (Model_sources
|
|||||||
FramePath.cpp
|
FramePath.cpp
|
||||||
FrameRect.cpp
|
FrameRect.cpp
|
||||||
FrameRound.cpp
|
FrameRound.cpp
|
||||||
|
GenericTemplate.cpp
|
||||||
Handle.cpp
|
Handle.cpp
|
||||||
Layout.cpp
|
Layout.cpp
|
||||||
Markup.cpp
|
Markup.cpp
|
||||||
|
|||||||
+27
-5
@@ -24,6 +24,7 @@
|
|||||||
#include "Config.hpp"
|
#include "Config.hpp"
|
||||||
#include "StrUtil.hpp"
|
#include "StrUtil.hpp"
|
||||||
#include "FileUtil.hpp"
|
#include "FileUtil.hpp"
|
||||||
|
#include "GenericTemplate.hpp"
|
||||||
#include "Settings.hpp"
|
#include "Settings.hpp"
|
||||||
#include "XmlCategoryParser.hpp"
|
#include "XmlCategoryParser.hpp"
|
||||||
#include "XmlPaperParser.hpp"
|
#include "XmlPaperParser.hpp"
|
||||||
@@ -87,6 +88,7 @@ namespace glabels::model
|
|||||||
readCategories();
|
readCategories();
|
||||||
readVendors();
|
readVendors();
|
||||||
readTemplates();
|
readTemplates();
|
||||||
|
createGenericTemplates();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -470,11 +472,12 @@ namespace glabels::model
|
|||||||
for ( auto& paper : mPapers )
|
for ( auto& paper : mPapers )
|
||||||
{
|
{
|
||||||
qDebug() << "paper "
|
qDebug() << "paper "
|
||||||
<< "id=" << paper.id() << ", "
|
<< "id=" << paper.id() << ", "
|
||||||
<< "name=" << paper.name() << ", "
|
<< "name=" << paper.name() << ", "
|
||||||
<< "width=" << paper.width().pt() << "pts, "
|
<< "width=" << paper.width().pt() << "pts, "
|
||||||
<< "height=" << paper.height().pt() << "pts, "
|
<< "height=" << paper.height().pt() << "pts, "
|
||||||
<< "pwg_size=" << paper.pwgSize();
|
<< "pwg_class=" << paper.pwgClass()
|
||||||
|
<< "type=" << paper.type();
|
||||||
}
|
}
|
||||||
|
|
||||||
qDebug();
|
qDebug();
|
||||||
@@ -697,6 +700,25 @@ namespace glabels::model
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void Db::createGenericTemplates()
|
||||||
|
{
|
||||||
|
for ( auto& paper : papers() )
|
||||||
|
{
|
||||||
|
if ( paper.type() == Paper::SHEET )
|
||||||
|
{
|
||||||
|
registerTemplate( GenericTemplate::fullPage( paper ) );
|
||||||
|
registerTemplate( GenericTemplate::halfPage1x2( paper ) );
|
||||||
|
registerTemplate( GenericTemplate::halfPage2x1( paper ) );
|
||||||
|
registerTemplate( GenericTemplate::quarterPage2x2( paper ) );
|
||||||
|
}
|
||||||
|
else if ( paper.type() == Paper::ENVELOPE )
|
||||||
|
{
|
||||||
|
registerTemplate( GenericTemplate::envelope( paper ) );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void Db::readUserTemplatesFromDir( const QDir& dir )
|
void Db::readUserTemplatesFromDir( const QDir& dir )
|
||||||
{
|
{
|
||||||
QStringList filters;
|
QStringList filters;
|
||||||
|
|||||||
@@ -114,6 +114,8 @@ namespace glabels::model
|
|||||||
static void readTemplatesFromDir( const QDir& dir );
|
static void readTemplatesFromDir( const QDir& dir );
|
||||||
static void registerTemplate( const Template& tmplate );
|
static void registerTemplate( const Template& tmplate );
|
||||||
|
|
||||||
|
static void createGenericTemplates();
|
||||||
|
|
||||||
static void readUserTemplatesFromDir( const QDir& dir );
|
static void readUserTemplatesFromDir( const QDir& dir );
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,134 @@
|
|||||||
|
// GenericTemplate.cpp
|
||||||
|
//
|
||||||
|
// Copyright (C) 2026 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 "GenericTemplate.hpp"
|
||||||
|
|
||||||
|
#include "FrameRect.hpp"
|
||||||
|
|
||||||
|
#include <QDebug>
|
||||||
|
|
||||||
|
|
||||||
|
namespace glabels::model
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
Template GenericTemplate::fullPage( const Paper& paper )
|
||||||
|
{
|
||||||
|
// TRANSLATORS
|
||||||
|
//: %1 = page size. (e.g. A4)
|
||||||
|
return sheetTemplate( paper, 1, 1, QString( tr( "%1 full-page labels" ) ).arg( paper.name() ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Template GenericTemplate::halfPage1x2( const Paper& paper )
|
||||||
|
{
|
||||||
|
// TRANSLATORS
|
||||||
|
//: %1 = page size. (e.g. A4)
|
||||||
|
return sheetTemplate( paper, 1, 2, QString( tr( "%1 half-page labels" ) ).arg( paper.name() ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Template GenericTemplate::halfPage2x1( const Paper& paper )
|
||||||
|
{
|
||||||
|
return sheetTemplate( paper, 2, 1, QString( tr( "%1 half-page labels" ) ).arg( paper.name() ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Template GenericTemplate::quarterPage2x2( const Paper& paper )
|
||||||
|
{
|
||||||
|
// TRANSLATORS
|
||||||
|
//: %1 = page size. (e.g. A4)
|
||||||
|
return sheetTemplate( paper, 2, 2, QString( tr( "%1 quarter-page labels" ) ).arg( paper.name() ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Template GenericTemplate::envelope( const Paper& paper )
|
||||||
|
{
|
||||||
|
// TRANSLATORS
|
||||||
|
//: %1 = envelope size. (e.g. DL)
|
||||||
|
QString description = QString( tr( "%1 envelope" ) ).arg( paper.name() );
|
||||||
|
|
||||||
|
Template tmplate( tr("Generic"),
|
||||||
|
paper.id() + "-ENV",
|
||||||
|
description,
|
||||||
|
paper.id(),
|
||||||
|
paper.width(),
|
||||||
|
paper.height() );
|
||||||
|
|
||||||
|
FrameRect frame( paper.width(),
|
||||||
|
paper.height(),
|
||||||
|
Distance::pt( 0 ),
|
||||||
|
Distance::pt( 0 ),
|
||||||
|
Distance::pt( 0 ) );
|
||||||
|
|
||||||
|
Layout layout( 1,
|
||||||
|
1,
|
||||||
|
Distance::pt( 0 ),
|
||||||
|
Distance::pt( 0 ),
|
||||||
|
Distance::pt( 0 ),
|
||||||
|
Distance::pt( 0 ) );
|
||||||
|
|
||||||
|
frame.addLayout( layout );
|
||||||
|
tmplate.addFrame( frame );
|
||||||
|
|
||||||
|
tmplate.addCategory( "mail" );
|
||||||
|
|
||||||
|
return tmplate;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Template GenericTemplate::sheetTemplate( const Paper& paper,
|
||||||
|
int nx,
|
||||||
|
int ny,
|
||||||
|
const QString& description )
|
||||||
|
{
|
||||||
|
Template tmplate( tr("Generic"),
|
||||||
|
QString( "%1-%2x%3" ).arg(paper.id()).arg(nx).arg(ny),
|
||||||
|
description,
|
||||||
|
paper.id(),
|
||||||
|
paper.width(),
|
||||||
|
paper.height() );
|
||||||
|
|
||||||
|
FrameRect frame( paper.width()/nx,
|
||||||
|
paper.height()/ny,
|
||||||
|
Distance::pt( 0 ),
|
||||||
|
Distance::pt( 0 ),
|
||||||
|
Distance::pt( 0 ) );
|
||||||
|
|
||||||
|
Layout layout( nx,
|
||||||
|
ny,
|
||||||
|
Distance::pt( 0 ),
|
||||||
|
Distance::pt( 0 ),
|
||||||
|
paper.width()/nx,
|
||||||
|
paper.height()/ny );
|
||||||
|
|
||||||
|
frame.addLayout( layout );
|
||||||
|
tmplate.addFrame( frame );
|
||||||
|
|
||||||
|
tmplate.addCategory( "label" );
|
||||||
|
tmplate.addCategory( "rectangle-label" );
|
||||||
|
tmplate.addCategory( "card" );
|
||||||
|
|
||||||
|
return tmplate;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,59 @@
|
|||||||
|
// GenericTemplate.hpp
|
||||||
|
//
|
||||||
|
// Copyright (C) 2026 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 model_GenericTemplate_hpp
|
||||||
|
#define model_GenericTemplate_hpp
|
||||||
|
|
||||||
|
|
||||||
|
#include "Template.hpp"
|
||||||
|
#include "Paper.hpp"
|
||||||
|
|
||||||
|
#include <QCoreApplication>
|
||||||
|
|
||||||
|
|
||||||
|
namespace glabels::model
|
||||||
|
{
|
||||||
|
|
||||||
|
class GenericTemplate
|
||||||
|
{
|
||||||
|
Q_DECLARE_TR_FUNCTIONS(GenericTemplate)
|
||||||
|
|
||||||
|
public:
|
||||||
|
GenericTemplate() = delete;
|
||||||
|
|
||||||
|
static Template fullPage( const Paper& paper );
|
||||||
|
static Template halfPage1x2( const Paper& paper );
|
||||||
|
static Template halfPage2x1( const Paper& paper );
|
||||||
|
static Template quarterPage2x2( const Paper& paper );
|
||||||
|
|
||||||
|
static Template envelope( const Paper& paper );
|
||||||
|
|
||||||
|
|
||||||
|
private:
|
||||||
|
static Template sheetTemplate( const Paper& paper,
|
||||||
|
int nx,
|
||||||
|
int ny,
|
||||||
|
const QString& description );
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#endif // model_GenericTemplate_hpp
|
||||||
+14
-6
@@ -29,12 +29,14 @@ namespace glabels::model
|
|||||||
const QString& name,
|
const QString& name,
|
||||||
Distance width,
|
Distance width,
|
||||||
Distance height,
|
Distance height,
|
||||||
const QString& pwgSize )
|
const QString& pwgClass,
|
||||||
|
Type type )
|
||||||
: mId(id),
|
: mId(id),
|
||||||
mName(name),
|
mName(name),
|
||||||
mWidth(width),
|
mWidth(width),
|
||||||
mHeight(height),
|
mHeight(height),
|
||||||
mPwgSize(pwgSize)
|
mPwgClass(pwgClass),
|
||||||
|
mType(type)
|
||||||
{
|
{
|
||||||
// empty
|
// empty
|
||||||
}
|
}
|
||||||
@@ -64,21 +66,27 @@ namespace glabels::model
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QString Paper::pwgSize() const
|
QString Paper::pwgClass() const
|
||||||
{
|
{
|
||||||
return mPwgSize;
|
return mPwgClass;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Paper::Type Paper::type() const
|
||||||
|
{
|
||||||
|
return mType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool Paper::isSizeIso() const
|
bool Paper::isSizeIso() const
|
||||||
{
|
{
|
||||||
return mPwgSize.startsWith( "iso_" );
|
return mPwgClass == "iso";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool Paper::isSizeUs() const
|
bool Paper::isSizeUs() const
|
||||||
{
|
{
|
||||||
return mPwgSize.startsWith( "na_" );
|
return mPwgClass == "na";
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+19
-4
@@ -32,13 +32,23 @@ namespace glabels::model
|
|||||||
|
|
||||||
class Paper
|
class Paper
|
||||||
{
|
{
|
||||||
|
public:
|
||||||
|
enum Type
|
||||||
|
{
|
||||||
|
SHEET,
|
||||||
|
ENVELOPE,
|
||||||
|
ROLL
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
Paper() = default;
|
Paper() = default;
|
||||||
Paper( const QString& id,
|
Paper( const QString& id,
|
||||||
const QString& name,
|
const QString& name,
|
||||||
Distance width,
|
Distance width,
|
||||||
Distance height,
|
Distance height,
|
||||||
const QString& pwgSize );
|
const QString& pwgClass,
|
||||||
|
Type type = SHEET );
|
||||||
~Paper() = default;
|
~Paper() = default;
|
||||||
|
|
||||||
QString id() const;
|
QString id() const;
|
||||||
@@ -50,18 +60,23 @@ namespace glabels::model
|
|||||||
/* Height */
|
/* Height */
|
||||||
Distance height() const;
|
Distance height() const;
|
||||||
|
|
||||||
/* PWG 5101.1-2002 size name */
|
/* PWG 5101.1-2023 class */
|
||||||
QString pwgSize() const;
|
QString pwgClass() const;
|
||||||
|
|
||||||
|
Type type() const;
|
||||||
|
|
||||||
bool isSizeIso() const;
|
bool isSizeIso() const;
|
||||||
bool isSizeUs() const;
|
bool isSizeUs() const;
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QString mId;
|
QString mId;
|
||||||
QString mName;
|
QString mName;
|
||||||
Distance mWidth;
|
Distance mWidth;
|
||||||
Distance mHeight;
|
Distance mHeight;
|
||||||
QString mPwgSize;
|
QString mPwgClass;
|
||||||
|
Type mType;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -99,9 +99,25 @@ namespace glabels::model
|
|||||||
Distance width = XmlUtil::getLengthAttr( node, "width", Distance(0) );
|
Distance width = XmlUtil::getLengthAttr( node, "width", Distance(0) );
|
||||||
Distance height = XmlUtil::getLengthAttr( node, "height", Distance(0) );
|
Distance height = XmlUtil::getLengthAttr( node, "height", Distance(0) );
|
||||||
|
|
||||||
QString pwgSize = XmlUtil::getStringAttr( node, "pwg_size", "" );
|
QString pwgClass = XmlUtil::getStringAttr( node, "pwg_class", "iso" );
|
||||||
|
|
||||||
return Paper( id, name, width, height, pwgSize );
|
Paper::Type type;
|
||||||
|
QString typeString = XmlUtil::getStringAttr( node, "type", "sheet" );
|
||||||
|
if ( typeString == "sheet" )
|
||||||
|
{
|
||||||
|
type = Paper::SHEET;
|
||||||
|
}
|
||||||
|
else if ( typeString == "envelope" )
|
||||||
|
{
|
||||||
|
type = Paper::ENVELOPE;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
qWarning() << "Warning: unknown paper type: " << typeString << ".";
|
||||||
|
type = Paper::SHEET;
|
||||||
|
}
|
||||||
|
|
||||||
|
return Paper( id, name, width, height, pwgClass, type );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -7,8 +7,8 @@
|
|||||||
<!-- =================================================================== -->
|
<!-- =================================================================== -->
|
||||||
<Template brand="Dymo" part="30252" _description="Address labels"
|
<Template brand="Dymo" part="30252" _description="Address labels"
|
||||||
size="roll" roll_width="31mm" width="28mm" height="89mm" >
|
size="roll" roll_width="31mm" width="28mm" height="89mm" >
|
||||||
<Meta category="label" />
|
<Meta category="label"/>
|
||||||
<Meta category="mail" />
|
<Meta category="mail"/>
|
||||||
<Label-rectangle id="0" width="28mm" height="89mm" round="1mm" x_waste="0mm" y_waste="0mm" >
|
<Label-rectangle id="0" width="28mm" height="89mm" round="1mm" x_waste="0mm" y_waste="0mm" >
|
||||||
<Markup-rect x1="1mm" y1="6mm" w="26mm" h="77mm" />
|
<Markup-rect x1="1mm" y1="6mm" w="26mm" h="77mm" />
|
||||||
<Layout nx="1" ny="1" x0="0" y0="0" dx="0" dy="0" />
|
<Layout nx="1" ny="1" x0="0" y0="0" dx="0" dy="0" />
|
||||||
@@ -39,8 +39,8 @@
|
|||||||
<!-- =================================================================== -->
|
<!-- =================================================================== -->
|
||||||
<Template brand="Dymo" part="30915" _description="Postage stamp labels"
|
<Template brand="Dymo" part="30915" _description="Postage stamp labels"
|
||||||
size="roll" roll_width="51mm" width="41mm" height="31mm" >
|
size="roll" roll_width="51mm" width="41mm" height="31mm" >
|
||||||
<Meta category="label" />
|
<Meta category="label"/>
|
||||||
<Meta category="mail" />
|
<Meta category="mail"/>
|
||||||
<Label-path id="0" x_waste="0mm" y_waste="0mm" d_units="mm"
|
<Label-path id="0" x_waste="0mm" y_waste="0mm" d_units="mm"
|
||||||
d="M 0 1
|
d="M 0 1
|
||||||
l 1 -1 l 1 1 l 1 -1 l 1 1 l 1 -1 l 1 1 l 1 -1 l 1 1 l 1 -1 l 1 1
|
l 1 -1 l 1 1 l 1 -1 l 1 1 l 1 -1 l 1 1 l 1 -1 l 1 1 l 1 -1 l 1 1
|
||||||
|
|||||||
@@ -8,6 +8,8 @@
|
|||||||
<!-- =================================================================== -->
|
<!-- =================================================================== -->
|
||||||
|
|
||||||
<Template brand="Felga" part="EP1220" size="other" width="210mm" height="261mm" description="Plant labels">
|
<Template brand="Felga" part="EP1220" size="other" width="210mm" height="261mm" description="Plant labels">
|
||||||
|
<Meta category="label"/>
|
||||||
|
<Meta category="rectangle-label"/>
|
||||||
<Label-rectangle id="0" width="20mm" height="100mm" round="0mm" x_waste="0mm" y_waste="0mm">
|
<Label-rectangle id="0" width="20mm" height="100mm" round="0mm" x_waste="0mm" y_waste="0mm">
|
||||||
<Markup-margin size="0mm"/>
|
<Markup-margin size="0mm"/>
|
||||||
<Layout nx="10" ny="2" x0="5mm" y0="5mm" dx="20mm" dy="130mm"/>
|
<Layout nx="10" ny="2" x0="5mm" y0="5mm" dx="20mm" dy="130mm"/>
|
||||||
@@ -15,7 +17,8 @@
|
|||||||
</Template>
|
</Template>
|
||||||
|
|
||||||
<Template brand="Felga" part="ES210" size="other" width="595.276pt" height="793.701pt" description="Plant labels">
|
<Template brand="Felga" part="ES210" size="other" width="595.276pt" height="793.701pt" description="Plant labels">
|
||||||
<Meta category="user-defined"/>
|
<Meta category="label"/>
|
||||||
|
<Meta category="rectangle-label"/>
|
||||||
<Label-rectangle id="0" width="595.276pt" height="36pt" round="0pt" x_waste="0pt" y_waste="0pt">
|
<Label-rectangle id="0" width="595.276pt" height="36pt" round="0pt" x_waste="0pt" y_waste="0pt">
|
||||||
<Markup-margin size="0pt"/>
|
<Markup-margin size="0pt"/>
|
||||||
<Layout nx="1" ny="22" x0="0pt" y0="0pt" dx="595.276pt" dy="36pt"/>
|
<Layout nx="1" ny="22" x0="0pt" y0="0pt" dx="595.276pt" dy="36pt"/>
|
||||||
@@ -23,6 +26,8 @@
|
|||||||
</Template>
|
</Template>
|
||||||
|
|
||||||
<Template brand="Felga" part="EY210" size="A4" description="Plant labels">
|
<Template brand="Felga" part="EY210" size="A4" description="Plant labels">
|
||||||
|
<Meta category="label"/>
|
||||||
|
<Meta category="rectangle-label"/>
|
||||||
<Label-rectangle id="0" width="210mm" height="19mm" round="0mm" x_waste="0mm" y_waste="0mm">
|
<Label-rectangle id="0" width="210mm" height="19mm" round="0mm" x_waste="0mm" y_waste="0mm">
|
||||||
<Markup-margin size="0mm"/>
|
<Markup-margin size="0mm"/>
|
||||||
<Layout nx="1" ny="14" x0="0mm" y0="0mm" dx="210mm" dy="19mm"/>
|
<Layout nx="1" ny="14" x0="0mm" y0="0mm" dx="210mm" dy="19mm"/>
|
||||||
@@ -30,6 +35,8 @@
|
|||||||
</Template>
|
</Template>
|
||||||
|
|
||||||
<Template brand="Felga" part="PETFO-A5" size="A4" description="Plant labels">
|
<Template brand="Felga" part="PETFO-A5" size="A4" description="Plant labels">
|
||||||
|
<Meta category="label"/>
|
||||||
|
<Meta category="rectangle-label"/>
|
||||||
<Label-rectangle id="0" width="210mm" height="148.5mm" round="0mm" x_waste="0mm" y_waste="0mm">
|
<Label-rectangle id="0" width="210mm" height="148.5mm" round="0mm" x_waste="0mm" y_waste="0mm">
|
||||||
<Markup-margin size="0mm"/>
|
<Markup-margin size="0mm"/>
|
||||||
<Layout nx="1" ny="2" x0="0mm" y0="0mm" dx="210mm" dy="148.5mm"/>
|
<Layout nx="1" ny="2" x0="0mm" y0="0mm" dx="210mm" dy="148.5mm"/>
|
||||||
@@ -37,6 +44,8 @@
|
|||||||
</Template>
|
</Template>
|
||||||
|
|
||||||
<Template brand="Felga" part="R1074" size="A4" description="Plant labels">
|
<Template brand="Felga" part="R1074" size="A4" description="Plant labels">
|
||||||
|
<Meta category="label"/>
|
||||||
|
<Meta category="rectangle-label"/>
|
||||||
<Label-rectangle id="0" width="105mm" height="74.25mm" round="2mm" x_waste="0mm" y_waste="0mm">
|
<Label-rectangle id="0" width="105mm" height="74.25mm" round="2mm" x_waste="0mm" y_waste="0mm">
|
||||||
<Markup-margin size="0mm"/>
|
<Markup-margin size="0mm"/>
|
||||||
<Layout nx="2" ny="4" x0="0mm" y0="0mm" dx="105mm" dy="74.25mm"/>
|
<Layout nx="2" ny="4" x0="0mm" y0="0mm" dx="105mm" dy="74.25mm"/>
|
||||||
|
|||||||
@@ -157,9 +157,10 @@
|
|||||||
id %STRING_TYPE; #REQUIRED
|
id %STRING_TYPE; #REQUIRED
|
||||||
name %STRING_TYPE; #IMPLIED
|
name %STRING_TYPE; #IMPLIED
|
||||||
_name %STRING_TYPE; #IMPLIED
|
_name %STRING_TYPE; #IMPLIED
|
||||||
pwg_size %STRING_TYPE; #REQUIRED
|
pwg_class %STRING_TYPE; #IMPLIED
|
||||||
width %LENGTH_TYPE; #REQUIRED
|
width %LENGTH_TYPE; #REQUIRED
|
||||||
height %LENGTH_TYPE; #REQUIRED
|
height %LENGTH_TYPE; #REQUIRED
|
||||||
|
type %STRING_TYPE; #IMPLIED
|
||||||
>
|
>
|
||||||
|
|
||||||
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
|
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
|
||||||
|
|||||||
+47
-40
@@ -3,55 +3,62 @@
|
|||||||
<Glabels-paper-sizes>
|
<Glabels-paper-sizes>
|
||||||
|
|
||||||
<!-- Most popular (at top of list) -->
|
<!-- Most popular (at top of list) -->
|
||||||
<Paper-size id="A4" name="A4" pwg_size="iso_a4" width="210mm" height="297mm"/>
|
<Paper-size id="A4" name="A4" pwg_class="iso" width="210mm" height="297mm" />
|
||||||
<Paper-size id="US-Letter" name="US Letter" pwg_size="na_letter" width="8.5in" height="11in"/>
|
<Paper-size id="US-Letter" name="US Letter" pwg_class="na" width="8.5in" height="11in" />
|
||||||
|
|
||||||
<!-- Other US paper sizes -->
|
<!-- Other US paper sizes -->
|
||||||
<Paper-size id="US-Legal" name="US Legal" pwg_size="na_legal" width="8.5in" height="14in"/>
|
<Paper-size id="US-Legal" name="US Legal" pwg_class="na" width="8.5in" height="14in" />
|
||||||
<Paper-size id="US-Executive" name="US Executive" pwg_size="na_executive" width="7.25in" height="10.5in"/>
|
<Paper-size id="US-Executive" name="US Executive" pwg_class="na" width="7.25in" height="10.5in" />
|
||||||
|
|
||||||
<!-- Other ISO A series sizes -->
|
<!-- Other ISO A series sizes -->
|
||||||
<Paper-size id="A0" name="A0" pwg_size="iso_a0" width="841mm" height="1189mm"/>
|
<Paper-size id="A0" name="A0" pwg_class="iso" width="841mm" height="1189mm" />
|
||||||
<Paper-size id="A1" name="A1" pwg_size="iso_a1" width="594mm" height="841mm"/>
|
<Paper-size id="A1" name="A1" pwg_class="iso" width="594mm" height="841mm" />
|
||||||
<Paper-size id="A2" name="A2" pwg_size="iso_a2" width="420mm" height="594mm"/>
|
<Paper-size id="A2" name="A2" pwg_class="iso" width="420mm" height="594mm" />
|
||||||
<Paper-size id="A3" name="A3" pwg_size="iso_a3" width="297mm" height="420mm"/>
|
<Paper-size id="A3" name="A3" pwg_class="iso" width="297mm" height="420mm" />
|
||||||
<Paper-size id="A5" name="A5" pwg_size="iso_a5" width="148mm" height="210mm"/>
|
<Paper-size id="A5" name="A5" pwg_class="iso" width="148mm" height="210mm" />
|
||||||
<Paper-size id="A6" name="A6" pwg_size="iso_a6" width="105mm" height="148mm"/>
|
<Paper-size id="A6" name="A6" pwg_class="iso" width="105mm" height="148mm" />
|
||||||
<Paper-size id="A7" name="A7" pwg_size="iso_a7" width="74mm" height="105mm"/>
|
<Paper-size id="A7" name="A7" pwg_class="iso" width="74mm" height="105mm" />
|
||||||
<Paper-size id="A8" name="A8" pwg_size="iso_a8" width="52mm" height="74mm"/>
|
<Paper-size id="A8" name="A8" pwg_class="iso" width="52mm" height="74mm" />
|
||||||
<Paper-size id="A9" name="A9" pwg_size="iso_a9" width="37mm" height="52mm"/>
|
<Paper-size id="A9" name="A9" pwg_class="iso" width="37mm" height="52mm" />
|
||||||
<Paper-size id="A10" name="A10" pwg_size="iso_a10" width="26mm" height="37mm"/>
|
<Paper-size id="A10" name="A10" pwg_class="iso" width="26mm" height="37mm" />
|
||||||
|
|
||||||
<!-- ISO B series sizes -->
|
<!-- ISO B series sizes -->
|
||||||
<Paper-size id="B0" name="B0" pwg_size="iso_b0" width="1000mm" height="1414mm"/>
|
<Paper-size id="B0" name="B0" pwg_class="iso" width="1000mm" height="1414mm" />
|
||||||
<Paper-size id="B1" name="B1" pwg_size="iso_b1" width="707mm" height="1000mm"/>
|
<Paper-size id="B1" name="B1" pwg_class="iso" width="707mm" height="1000mm" />
|
||||||
<Paper-size id="B2" name="B2" pwg_size="iso_b2" width="500mm" height="707mm"/>
|
<Paper-size id="B2" name="B2" pwg_class="iso" width="500mm" height="707mm" />
|
||||||
<Paper-size id="B3" name="B3" pwg_size="iso_b3" width="353mm" height="500mm"/>
|
<Paper-size id="B3" name="B3" pwg_class="iso" width="353mm" height="500mm" />
|
||||||
<Paper-size id="B4" name="B4" pwg_size="iso_b4" width="250mm" height="353mm"/>
|
<Paper-size id="B4" name="B4" pwg_class="iso" width="250mm" height="353mm" />
|
||||||
<Paper-size id="B5" name="B5" pwg_size="iso_b5" width="176mm" height="250mm"/>
|
<Paper-size id="B5" name="B5" pwg_class="iso" width="176mm" height="250mm" />
|
||||||
<Paper-size id="B6" name="B6" pwg_size="iso_b6" width="125mm" height="176mm"/>
|
<Paper-size id="B6" name="B6" pwg_class="iso" width="125mm" height="176mm" />
|
||||||
<Paper-size id="B7" name="B7" pwg_size="iso_b7" width="88mm" height="125mm"/>
|
<Paper-size id="B7" name="B7" pwg_class="iso" width="88mm" height="125mm" />
|
||||||
<Paper-size id="B8" name="B8" pwg_size="iso_b8" width="62mm" height="88mm"/>
|
<Paper-size id="B8" name="B8" pwg_class="iso" width="62mm" height="88mm" />
|
||||||
<Paper-size id="B9" name="B9" pwg_size="iso_b9" width="44mm" height="62mm"/>
|
<Paper-size id="B9" name="B9" pwg_class="iso" width="44mm" height="62mm" />
|
||||||
<Paper-size id="B10" name="B10" pwg_size="iso_b10" width="31mm" height="44mm"/>
|
<Paper-size id="B10" name="B10" pwg_class="iso" width="31mm" height="44mm" />
|
||||||
|
|
||||||
<!-- Envelopes -->
|
<!-- Envelopes -->
|
||||||
<Paper-size id="number10" name="#10 Envelope" pwg_size="na_number-10" width="4.125in" height="9.5in"/>
|
<Paper-size id="personal" name="Personal" pwg_class="na" width="3.625in" height="6.5in" type="envelope" />
|
||||||
<Paper-size id="monarch" name="Monarch Envelope" pwg_size="na_monarch" width="3.875in" height="7.5in"/>
|
<Paper-size id="monarch" name="Monarch" pwg_class="na" width="3.875in" height="7.5in" type="envelope" />
|
||||||
<Paper-size id="c5" name="C5" pwg_size="iso_c5" width="162mm" height="229mm"/>
|
<Paper-size id="no9" name="#9" pwg_class="na" width="3.875in" height="8.875in" type="envelope" />
|
||||||
<Paper-size id="c6" name="C6" pwg_size="iso_c6" width="114mm" height="162mm"/>
|
<Paper-size id="no10" name="#10" pwg_class="na" width="4.125in" height="9.5in" type="envelope" />
|
||||||
<Paper-size id="dl" name="DL" pwg_size="iso_dl" width="110mm" height="220mm"/>
|
<Paper-size id="no11" name="#11" pwg_class="na" width="4.5in" height="10.375in" type="envelope" />
|
||||||
|
<Paper-size id="no12" name="#12" pwg_class="na" width="4.75in" height="11in" type="envelope" />
|
||||||
|
<Paper-size id="no14" name="#14" pwg_class="na" width="5in" height="11.5in" type="envelope" />
|
||||||
|
<Paper-size id="dl" name="DL" pwg_class="iso" width="110mm" height="220mm" type="envelope" />
|
||||||
|
<Paper-size id="c4" name="C4" pwg_class="iso" width="229mm" height="324mm" type="envelope" />
|
||||||
|
<Paper-size id="c5" name="C5" pwg_class="iso" width="162mm" height="229mm" type="envelope" />
|
||||||
|
<Paper-size id="c6" name="C6" pwg_class="iso" width="114mm" height="162mm" type="envelope" />
|
||||||
|
<Paper-size id="b6" name="B6" pwg_class="iso" width="125mm" height="176mm" type="envelope" />
|
||||||
|
|
||||||
<!-- ISO 217 -->
|
<!-- ISO 217 -->
|
||||||
<Paper-size id="RA0" name="RA0" pwg_size="iso_ra0" width="860mm" height="1220mm"/>
|
<Paper-size id="RA0" name="RA0" pwg_class="iso" width="860mm" height="1220mm" />
|
||||||
<Paper-size id="RA1" name="RA1" pwg_size="iso_ra1" width="610mm" height="860mm"/>
|
<Paper-size id="RA1" name="RA1" pwg_class="iso" width="610mm" height="860mm" />
|
||||||
<Paper-size id="RA2" name="RA2" pwg_size="iso_ra2" width="430mm" height="610mm"/>
|
<Paper-size id="RA2" name="RA2" pwg_class="iso" width="430mm" height="610mm" />
|
||||||
<Paper-size id="RA3" name="RA3" pwg_size="iso_ra3" width="305mm" height="430mm"/>
|
<Paper-size id="RA3" name="RA3" pwg_class="iso" width="305mm" height="430mm" />
|
||||||
<Paper-size id="RA4" name="RA4" pwg_size="iso_ra4" width="215mm" height="305mm"/>
|
<Paper-size id="RA4" name="RA4" pwg_class="iso" width="215mm" height="305mm" />
|
||||||
<Paper-size id="SRA0" name="SRA0" pwg_size="iso_sra0" width="900mm" height="1280mm"/>
|
<Paper-size id="SRA0" name="SRA0" pwg_class="iso" width="900mm" height="1280mm" />
|
||||||
<Paper-size id="SRA1" name="SRA1" pwg_size="iso_sra1" width="640mm" height="900mm"/>
|
<Paper-size id="SRA1" name="SRA1" pwg_class="iso" width="640mm" height="900mm" />
|
||||||
<Paper-size id="SRA2" name="SRA2" pwg_size="iso_sra2" width="450mm" height="640mm"/>
|
<Paper-size id="SRA2" name="SRA2" pwg_class="iso" width="450mm" height="640mm" />
|
||||||
<Paper-size id="SRA3" name="SRA3" pwg_size="iso_sra3" width="320mm" height="450mm"/>
|
<Paper-size id="SRA3" name="SRA3" pwg_class="iso" width="320mm" height="450mm" />
|
||||||
<Paper-size id="SRA4" name="SRA4" pwg_size="iso_sra4" width="225mm" height="320mm"/>
|
<Paper-size id="SRA4" name="SRA4" pwg_class="iso" width="225mm" height="320mm" />
|
||||||
|
|
||||||
</Glabels-paper-sizes>
|
</Glabels-paper-sizes>
|
||||||
|
|||||||
@@ -271,6 +271,33 @@
|
|||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
|
<context>
|
||||||
|
<name>GenericTemplate</name>
|
||||||
|
<message>
|
||||||
|
<source>Generic</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>%1 full-page labels</source>
|
||||||
|
<extracomment>%1 = page size. (e.g. A4)</extracomment>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>%1 envelope</source>
|
||||||
|
<extracomment>%1 = envelope size. (e.g. DL)</extracomment>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>%1 half-page labels</source>
|
||||||
|
<extracomment>%1 = page size. (e.g. A4)</extracomment>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>%1 quarter-page labels</source>
|
||||||
|
<extracomment>%1 = page size. (e.g. A4)</extracomment>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>MergeView</name>
|
<name>MergeView</name>
|
||||||
<message>
|
<message>
|
||||||
|
|||||||
Reference in New Issue
Block a user