// $Id: installreffile.h,v 1.21 2008/02/19 21:03:02 hvengel Exp $
//  Little cms Profiler
// Copyright (C) 2005-2007 Hal Engel
//
// THIS SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
// EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
// WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
//
// IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
// INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
// OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
// WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
// LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
// OF THIS SOFTWARE.
//
// 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 3 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, see <http://www.gnu.org/licenses/>.
//
// Version 1.11

#ifndef INSTALLREFFILE_H
#define INSTALLREFFILE_H

#include <lprofmain.h>
#include <ui_installreffilebase.h>
#include <q3urloperator.h>

class Q3NetworkOperation;

enum TemplateType
{
    hct,
    It8_kodak,
    It8_19column,
    It8_22column,
    colorChecker_SG,
    colorChecker_DC,
    colorChecker_24,
    i1_scanner_14,
    DigitaL_TargeT_003,
    invalid
};

class InstallRefFile : public QDialog, private Ui::InstallRefFileBase
{
    Q_OBJECT

public:

    InstallRefFile(QWidget *parent = 0);
    ~InstallRefFile();

private:	
    void ConvertHCTrefToCGATS();
    QString CreateCustomHCTtemplate();
    TemplateType CheckTemplateType();
    void CopyTemplateFunction(TemplateType templateCatagory);
    void ColorCheckerConvert();
    void logoConvert();
    void CleanKEYWORDS(QString inFile, QString outFile);
    bool refNotToOld();

    Q3UrlOperator urlOp;
    int copyNum;
    ref_file_parms dirs;
    targetTemplate files;
    QSettings* settings;

private slots:
    void slotOK();
    void slotCancel();
    void slotHelpButton();
    void slotFileCopied( Q3NetworkOperation * );
    void slotTargetSelectorChanged();

};

#endif
