ocaldialogs.h revision 59fcfe31f52e21ff358b18d8ca157b8df91a867a
/** @file
* @brief Open Clip Art Library integration dialogs
*/
/* Authors:
* Bruno Dilly <bruno.dilly@gmail.com>
* Inkscape Guys
*
* Copyright (C) 2007 Bruno Dilly <bruno.dilly@gmail.com>
* Released under GNU GPL, read the file 'COPYING' for more information
*/
#ifndef __OCAL_DIALOG_H__
#define __OCAL_DIALOG_H__
#include <glibmm.h>
#include <vector>
#include <gtkmm.h>
#include "filedialogimpl-gtkmm.h"
//General includes
#include <unistd.h>
#include <errno.h>
#include <set>
//Gtk includes
//Temporary ugly hack
//Remove this after the get_filter() calls in
//show() on both classes are fixed
#include <gtk/gtkfilechooser.h>
//Another hack
#include <gtk/gtkentry.h>
#include <gtk/gtkexpander.h>
#ifdef WITH_GNOME_VFS
#include<libgnomevfs/gnome-vfs.h>
#endif
//Inkscape includes
#include "inkscape.h"
#include "svg-view-widget.h"
#include "gc-core.h"
//For export dialog
#include "ui/widget/scalar-unit.h"
{
{
{
/*#########################################################################
### F I L E D I A L O G O C A L B A S E C L A S S
#########################################################################*/
/**
* This class is the base implementation for export to OCAL.
*/
{
/**
* Constructor
*/
FileDialogOCALBase(const Glib::ustring &title, Gtk::Window& parent) : Gtk::Dialog(title, parent, true)
{}
/*
* Destructor
*/
{}
void cleanup( bool showConfirmed );
/**
* What type of 'open' are we? (open, import, place, etc)
*/
};
//########################################################################
//# F I L E E X P O R T T O O C A L
//########################################################################
/**
* Our implementation of the FileExportToOCALDialog interface.
*/
/*
class FileExportToOCALDialog : public FileDialogOCALBase
{
public:
*/
/**
* Constructor
* @param fileTypes one of FileDialogTypes
* @param title the title of the dialog
* @param key a list of file types from which the user can select
*/
/*
FileExportToOCALDialog(Gtk::Window& parentWindow,
FileDialogType fileTypes,
const Glib::ustring &title);
*/
/**
* Destructor.
* Perform any necessary cleanups.
*/
/*
~FileExportToOCALDialog();
*/
/**
* Show an SaveAs file selector.
* @return the selected path if user selected one, else NULL
*/
/*
bool show();
Glib::ustring getFilename();
Glib::ustring myFilename;
*/
/**
* Change the window title.
*/
/*
void change_title(const Glib::ustring& title);
private:
*/
/**
* Fix to allow the user to type the file name
*/
/*
Gtk::Entry *fileNameEntry;
*/
/**
* Data mirror of the combo box
*/
/*
std::vector<FileType> fileTypes;
// Child widgets
Gtk::HBox childBox;
Gtk::VBox checksBox;
Gtk::HBox fileBox;
*/
/**
* The extension to use to write this file
*/
/*
Inkscape::Extension::Extension *extension;
*/
/**
* Callback for user input into fileNameEntry
*/
/*
void fileNameEntryChangedCallback();
*/
/**
* List of known file extensions.
*/
/*
std::set<Glib::ustring> knownExtensions;
}; //FileExportToOCAL
*/
//########################################################################
//# F I L E E X P O R T T O O C A L P A S S W O R D
//########################################################################
/**
* Our implementation of the FileExportToOCALPasswordDialog interface.
*/
/*
class FileExportToOCALPasswordDialog : public FileDialogOCALBase
{
public:
*/
/**
* Constructor
* @param title the title of the dialog
*/
/*
FileExportToOCALPasswordDialog(Gtk::Window& parentWindow,
const Glib::ustring &title);
*/
/**
* Destructor.
* Perform any necessary cleanups.
*/
/*
~FileExportToOCALPasswordDialog();
*/
/**
* Show 2 entry to input username and password.
*/
/*
bool show();
Glib::ustring getUsername();
Glib::ustring getPassword();
*/
/**
* Change the window title.
*/
/*
void change_title(const Glib::ustring& title);
Glib::ustring myUsername;
Glib::ustring myPassword;
private:
*/
/**
* Fix to allow the user to type the file name
*/
/*
Gtk::Entry *usernameEntry;
Gtk::Entry *passwordEntry;
// Child widgets
Gtk::VBox entriesBox;
Gtk::HBox userBox;
Gtk::HBox passBox;
}; //FileExportToOCALPassword
*/
//#########################################################################
//### F I L E I M P O R T F R O M O C A L
//#########################################################################
/**
* Our implementation class for filesListView
*/
{
FileListViewText(guint columns_count, SVGPreview& filesPreview, Gtk::Label& description, Gtk::Button& okButton)
{
myLabel = &description;
}
void on_cursor_changed();
};
/**
* Our implementation class for the FileImportFromOCALDialog interface..
*/
{
/**
* Constructor
* @param path the directory where to start searching
* @param fileTypes one of FileDialogTypes
* @param title the title of the dialog
*/
/**
* Destructor.
* Perform any necessary cleanups.
*/
/**
* Show an OpenFile file selector.
* @return the selected path if user selected one, else NULL
*/
bool show();
/**
* Return the 'key' (filetype) of the selection, if any
* @return a pointer to a string if successful (which must
* be later freed with g_free(), else NULL.
*/
/**
* Allow the user to type the tag to be searched
*/
// Child widgets
/**
* Callback for user input into searchTagEntry
*/
void on_entry_search_changed();
/**
* Prints the names of the all the xml elements
* that are siblings or children of a given xml node
*/
/**
* The extension to use to write this file
*/
}; //FileImportFromOCALDialog
} //namespace Dialog
} //namespace UI
} //namespace Inkscape
#endif /* __OCAL_DIALOG_H__ */
/*
Local Variables:
mode:c++
c-file-style:"stroustrup"
c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
indent-tabs-mode:nil
fill-column:99
End:
*/
// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :