Dialog added to edit CD properties
git-svn-id: https://svn.code.sf.net/p/qlscribe/svn/trunk@53 cac9541e-1b8d-4bfa-827e-589bba606050
This commit is contained in:
+8
-5
@@ -18,14 +18,17 @@
|
||||
#
|
||||
# $Id$
|
||||
|
||||
SET( QLSCRIBE_SRCS main.cpp mainwindow.cpp qcdscene.cpp qcdview.cpp qdialogpixmap.cpp qdialogroundtext.cpp
|
||||
qdialogtext.cpp qlightroundtextitem.cpp qlightscribe.cpp qshapefactory.cpp
|
||||
qlighttextitem.cpp qlightpixmapitem.cpp qdialogprint.cpp qdialogprogress.cpp )
|
||||
SET( QLSCRIBE_SRCS main.cpp mainwindow.cpp qcdscene.cpp qcdview.cpp
|
||||
qdialogpixmap.cpp qdialogroundtext.cpp qdialogtext.cpp qlightroundtextitem.cpp
|
||||
qlightscribe.cpp qshapefactory.cpp qlighttextitem.cpp qlightpixmapitem.cpp
|
||||
qdialogprint.cpp qdialogprogress.cpp qdialogcdproperties.cpp)
|
||||
|
||||
SET( QLSCRIBE_UIS qdialogtext.ui qdialogroundtext.ui qdialogpixmap.ui qdialogprint.ui qdialogprogress.ui )
|
||||
SET( QLSCRIBE_UIS qdialogtext.ui qdialogroundtext.ui qdialogpixmap.ui
|
||||
qdialogprint.ui qdialogprogress.ui qdialogcdproperties.ui)
|
||||
|
||||
SET( QLSCRIBE_MOC_HDRS mainwindow.h qcdscene.h qdialogpixmap.h qdialogroundtext.h
|
||||
qdialogtext.h qlightscribe.h qdialogprint.h qdialogprogress.h )
|
||||
qdialogtext.h qlightscribe.h qdialogprint.h qdialogprogress.h
|
||||
qdialogcdproperties.h)
|
||||
|
||||
ADD_DEFINITIONS( -Wall )
|
||||
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
#include "qlightscribe.h"
|
||||
#include "qdialogprint.h"
|
||||
#include "qdialogprogress.h"
|
||||
#include "qdialogcdproperties.h"
|
||||
|
||||
#include <QMenuBar>
|
||||
#include <QStatusBar>
|
||||
@@ -83,6 +84,12 @@ MainWindow::MainWindow( bool enablePrint )
|
||||
|
||||
m_menuFile->addSeparator();
|
||||
|
||||
m_menuFile->addAction( tr( "Label properties...", "Menu item \"Label propeties...\"" ),
|
||||
this,
|
||||
SLOT(onMenuProperties()) );
|
||||
|
||||
m_menuFile->addSeparator();
|
||||
|
||||
m_menuFile->addAction( tr( "Print preview...", "Menu item \"Print preview\"" ),
|
||||
this,
|
||||
SLOT(onMenuPrintPreview()) );
|
||||
@@ -278,6 +285,13 @@ void MainWindow::onMenuSaveAs()
|
||||
saveSceneAs( scene );
|
||||
}
|
||||
|
||||
void MainWindow::onMenuProperties()
|
||||
{
|
||||
QCDScene *scene = getScene( m_mdiArea );
|
||||
if( scene )
|
||||
QDialogCDProperties::exec( this, scene );
|
||||
}
|
||||
|
||||
void MainWindow::onMenuPrintPreview()
|
||||
{
|
||||
QCDScene *cdscene = getScene( m_mdiArea );
|
||||
|
||||
@@ -43,6 +43,7 @@ private slots:
|
||||
void onMenuOpen();
|
||||
void onMenuSave();
|
||||
void onMenuSaveAs();
|
||||
void onMenuProperties();
|
||||
void onMenuPrintPreview();
|
||||
void onMenuPrint();
|
||||
void onMenuInsert( int id );
|
||||
|
||||
+3
-1
@@ -88,12 +88,14 @@ void QCDScene::setLabelMode( LabelMode mode )
|
||||
{
|
||||
m_labelMode = mode;
|
||||
update();
|
||||
setChanged();
|
||||
}
|
||||
|
||||
void QCDScene::setCDColor( const QColor &color )
|
||||
{
|
||||
m_cdColor = color;
|
||||
update();
|
||||
setChanged();
|
||||
}
|
||||
|
||||
void QCDScene::setName()
|
||||
@@ -121,7 +123,7 @@ void QCDScene::setChanged()
|
||||
|
||||
void QCDScene::updateTitles() const
|
||||
{
|
||||
QString name = m_name;
|
||||
QString name = tr( "Label: ", "Window title \"Label\"" ) + m_name;
|
||||
if( !m_saved )
|
||||
name += " *";
|
||||
|
||||
|
||||
@@ -0,0 +1,95 @@
|
||||
/* qlscribe - Qt based application to print lightScribe discs
|
||||
|
||||
Copyright (C) 2009 Vyacheslav Kononenko <vyacheslav@kononenko.net>
|
||||
|
||||
This program 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 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program 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 this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
$Id$ */
|
||||
|
||||
#include "qdialogcdproperties.h"
|
||||
#include "ui_qdialogcdproperties.h"
|
||||
|
||||
#include "qcdscene.h"
|
||||
|
||||
#include <QColorDialog>
|
||||
|
||||
QDialogCDProperties::QDialogCDProperties(QWidget *parent) :
|
||||
QDialog(parent),
|
||||
m_ui(new Ui::QDialogCDProperties)
|
||||
{
|
||||
m_ui->setupUi(this);
|
||||
connect( m_ui->btnColor, SIGNAL(clicked()), this, SLOT(onColor()) );
|
||||
connect( m_ui->radioModeFull, SIGNAL(toggled(bool)), this, SLOT(onChangeMode()) );
|
||||
connect( m_ui->radioModeContent, SIGNAL(toggled(bool)), this, SLOT(onChangeMode()) );
|
||||
connect( m_ui->radioModeTitle, SIGNAL(toggled(bool)), this, SLOT(onChangeMode()) );
|
||||
}
|
||||
|
||||
bool QDialogCDProperties::exec( QWidget *parent, QCDScene *scene )
|
||||
{
|
||||
QCDScene lscene;
|
||||
lscene.setLabelMode( scene->labelMode() );
|
||||
lscene.setCDColor( scene->cdColor() );
|
||||
|
||||
QDialogCDProperties dialog( parent );
|
||||
dialog.setWindowTitle( tr( "Label properties: ", "Dialog title \"Label properties: \"" )
|
||||
+ scene->name() );
|
||||
dialog.m_ui->cdView->setScene( &lscene );
|
||||
|
||||
if( dialog.QDialog::exec() == Rejected ) return false;
|
||||
|
||||
scene->setLabelMode( lscene.labelMode() );
|
||||
scene->setCDColor( lscene.cdColor() );
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
QDialogCDProperties::~QDialogCDProperties()
|
||||
{
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
void QDialogCDProperties::changeEvent(QEvent *e)
|
||||
{
|
||||
switch (e->type()) {
|
||||
case QEvent::LanguageChange:
|
||||
m_ui->retranslateUi(this);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void QDialogCDProperties::onChangeMode()
|
||||
{
|
||||
QCDScene *scene = m_ui->cdView->scene();
|
||||
if( m_ui->radioModeFull->isChecked() )
|
||||
scene->setLabelMode( modeFull );
|
||||
|
||||
if( m_ui->radioModeTitle->isChecked() )
|
||||
scene->setLabelMode( modeTitle );
|
||||
|
||||
if( m_ui->radioModeContent->isChecked() )
|
||||
scene->setLabelMode( modeContent );
|
||||
}
|
||||
|
||||
void QDialogCDProperties::onColor()
|
||||
{
|
||||
QCDScene *scene = m_ui->cdView->scene();
|
||||
QColor color = QColorDialog::getColor( scene->cdColor(), this );
|
||||
if( color.isValid() ){
|
||||
scene->setCDColor( color );
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
/* qlscribe - Qt based application to print lightScribe discs
|
||||
|
||||
Copyright (C) 2009 Vyacheslav Kononenko <vyacheslav@kononenko.net>
|
||||
|
||||
This program 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 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program 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 this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
$Id$ */
|
||||
|
||||
|
||||
#ifndef QDIALOGCDPROPERTIES_H
|
||||
#define QDIALOGCDPROPERTIES_H
|
||||
|
||||
#include <QtGui/QDialog>
|
||||
|
||||
namespace Ui {
|
||||
class QDialogCDProperties;
|
||||
}
|
||||
|
||||
class QCDScene;
|
||||
|
||||
class QDialogCDProperties : public QDialog {
|
||||
Q_OBJECT
|
||||
Q_DISABLE_COPY(QDialogCDProperties)
|
||||
public:
|
||||
static bool exec( QWidget *parent, QCDScene *scene );
|
||||
|
||||
protected:
|
||||
virtual void changeEvent(QEvent *e);
|
||||
|
||||
private slots:
|
||||
void onChangeMode();
|
||||
void onColor();
|
||||
|
||||
private:
|
||||
explicit QDialogCDProperties(QWidget *parent = 0);
|
||||
virtual ~QDialogCDProperties();
|
||||
|
||||
Ui::QDialogCDProperties *m_ui;
|
||||
};
|
||||
|
||||
#endif // QDIALOGCDPROPERTIES_H
|
||||
@@ -0,0 +1,191 @@
|
||||
<ui version="4.0" >
|
||||
<class>QDialogCDProperties</class>
|
||||
<widget class="QDialog" name="QDialogCDProperties" >
|
||||
<property name="windowModality" >
|
||||
<enum>Qt::NonModal</enum>
|
||||
</property>
|
||||
<property name="geometry" >
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>398</width>
|
||||
<height>532</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle" >
|
||||
<string>Label properties</string>
|
||||
</property>
|
||||
<property name="modal" >
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_3" >
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout" >
|
||||
<item>
|
||||
<widget class="QFrame" name="frame" >
|
||||
<property name="frameShape" >
|
||||
<enum>QFrame::StyledPanel</enum>
|
||||
</property>
|
||||
<property name="frameShadow" >
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<property name="lineWidth" >
|
||||
<number>3</number>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_4" >
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout" >
|
||||
<item>
|
||||
<layout class="QFormLayout" name="formLayout" >
|
||||
<item row="0" column="0" >
|
||||
<widget class="QLabel" name="label" >
|
||||
<property name="text" >
|
||||
<string>Label mode:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1" >
|
||||
<widget class="QFrame" name="frame_2" >
|
||||
<property name="frameShape" >
|
||||
<enum>QFrame::StyledPanel</enum>
|
||||
</property>
|
||||
<property name="frameShadow" >
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_3" >
|
||||
<item>
|
||||
<widget class="QRadioButton" name="radioModeFull" >
|
||||
<property name="text" >
|
||||
<string>Full</string>
|
||||
</property>
|
||||
<property name="checked" >
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QRadioButton" name="radioModeTitle" >
|
||||
<property name="text" >
|
||||
<string>Title</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QRadioButton" name="radioModeContent" >
|
||||
<property name="text" >
|
||||
<string>Content</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="btnColor" >
|
||||
<property name="text" >
|
||||
<string>Change color...</string>
|
||||
</property>
|
||||
<property name="autoDefault" >
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer" >
|
||||
<property name="orientation" >
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0" >
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCDView" name="cdView" >
|
||||
<property name="sizePolicy" >
|
||||
<sizepolicy vsizetype="Expanding" hsizetype="Expanding" >
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>2</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="baseSize" >
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="interactive" >
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QDialogButtonBox" name="buttonBox" >
|
||||
<property name="orientation" >
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="standardButtons" >
|
||||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>QCDView</class>
|
||||
<extends>QGraphicsView</extends>
|
||||
<header>qcdview.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<tabstops>
|
||||
<tabstop>buttonBox</tabstop>
|
||||
</tabstops>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>accepted()</signal>
|
||||
<receiver>QDialogCDProperties</receiver>
|
||||
<slot>accept()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel" >
|
||||
<x>258</x>
|
||||
<y>582</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel" >
|
||||
<x>157</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
<connection>
|
||||
<sender>buttonBox</sender>
|
||||
<signal>rejected()</signal>
|
||||
<receiver>QDialogCDProperties</receiver>
|
||||
<slot>reject()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel" >
|
||||
<x>326</x>
|
||||
<y>582</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel" >
|
||||
<x>286</x>
|
||||
<y>274</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
||||
@@ -69,6 +69,9 @@ QLightDrive *QDialogPrint::exec( QWidget *parent, QLightScribe::PrintParameters
|
||||
|
||||
params = QLightScribe::PrintParameters(); // reset to default
|
||||
|
||||
if( dialog.m_ui->radioModeFull->isChecked() )
|
||||
params.m_labelMode = modeFull;
|
||||
|
||||
if( dialog.m_ui->radioModeTitle->isChecked() )
|
||||
params.m_labelMode = modeTitle;
|
||||
|
||||
|
||||
+2
-2
@@ -32,8 +32,8 @@ QDialogText::QDialogText(QWidget *parent) :
|
||||
m_item( 0 )
|
||||
{
|
||||
m_ui->setupUi(this);
|
||||
connect( m_ui->btnFont, SIGNAL(clicked()), this, SLOT(onFont()) );
|
||||
connect( m_ui->btnColor, SIGNAL(clicked()), this, SLOT(onColor()) );
|
||||
connect( m_ui->btnFont, SIGNAL(clicked()), this, SLOT(onFont()) );
|
||||
connect( m_ui->btnColor, SIGNAL(clicked()), this, SLOT(onColor()) );
|
||||
}
|
||||
|
||||
QDialogText::~QDialogText()
|
||||
|
||||
+6
-3
@@ -18,7 +18,8 @@ SOURCES += main.cpp \
|
||||
qdialogprint.cpp \
|
||||
qdialogprogress.cpp \
|
||||
qlighttextitem.cpp \
|
||||
qlightpixmapitem.cpp
|
||||
qlightpixmapitem.cpp \
|
||||
qdialogcdproperties.cpp
|
||||
QMAKE_LIBS += -llightscribe
|
||||
HEADERS += mainwindow.h \
|
||||
qlightroundtextitem.h \
|
||||
@@ -33,9 +34,11 @@ HEADERS += mainwindow.h \
|
||||
qdialogprogress.h \
|
||||
qlighttextitem.h \
|
||||
qlightpixmapitem.h \
|
||||
qlscribe.h
|
||||
qlscribe.h \
|
||||
qdialogcdproperties.h
|
||||
FORMS += qdialogtext.ui \
|
||||
qdialogroundtext.ui \
|
||||
qdialogpixmap.ui \
|
||||
qdialogprint.ui \
|
||||
qdialogprogress.ui
|
||||
qdialogprogress.ui \
|
||||
qdialogcdproperties.ui
|
||||
|
||||
Reference in New Issue
Block a user