/*------------------------------------------------------------------------------
 src/plugin/djImageIoTiff/widget.h
 
 Copyright (c) 2004-2006 Darby Johnston.
 All rights reserved.
 Use is subject to license terms.
------------------------------------------------------------------------------*/

#ifndef DJ_IMAGE_IO_TIFF_WIDGET_H
#define DJ_IMAGE_IO_TIFF_WIDGET_H
#include "io.h"
#include <djEnumWidget.h>
#include <djImageIoWidget.h>

namespace djImageIoTiff {

// Image save widget.
//
class SaveWidget : public ImageSaveWidget {
public:

  SaveWidget();
  
  const Str name() const { return djImageIoTiff::name(); }
  Plugin * copy() const { return new SaveWidget; }
  
  void set(ImageSave *);
  void widgetUpdate();
  
private:

  DJ_CALLBACK(SaveWidget, compressCallback, Save::COMPRESS)
  DJ_CALLBACK(SaveWidget, channelsCallback, Save::CHANNELS)

  EnumWidget<Save::COMPRESS> * _compressWidget;
  EnumWidget<Save::CHANNELS> * _channelsWidget;
  bool _callbacks;
};

}

#endif
