diff options
Diffstat (limited to 'src/widgets/categorycombobox.h')
-rw-r--r-- | src/widgets/categorycombobox.h | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/src/widgets/categorycombobox.h b/src/widgets/categorycombobox.h new file mode 100644 index 0000000..4cc99aa --- /dev/null +++ b/src/widgets/categorycombobox.h @@ -0,0 +1,59 @@ +/*************************************************************************** +* Copyright (C) 2003 by * +* Unai Garro (ugarro@users.sourceforge.net) * +* Cyril Bosselut (bosselut@b1project.com) * +* Jason Kivlighn (jkivlighn@gmail.com) * +* * +* 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. * +***************************************************************************/ + +#ifndef CATEGORYCOMBOBOX_H +#define CATEGORYCOMBOBOX_H + +#include <kcombobox.h> + +#include <tqmap.h> + +#include "datablocks/element.h" + +class RecipeDB; +class CategoryTree; + +class CategoryComboBox : public KComboBox +{ + TQ_OBJECT + +public: + CategoryComboBox( TQWidget *parent, RecipeDB *db ); + + void reload(); + int id( int row ); + +public slots: + void loadNextGroup(); + void loadPrevGroup(); + +protected: + virtual void popup(); + +private slots: + void createCategory( const Element &element, int /*parent_id*/ ); + void removeCategory( int id ); + void modifyCategory( const Element &element ); + void mergeCategories( int /*to_id*/, int from_id ); + + int findInsertionPoint( const TQString &name ); + +private: + void loadCategories( CategoryTree *categoryList, int &row ); + + RecipeDB *database; + TQMap<int, int> categoryComboRows; // Contains the category id for every given row in the category combobox + int m_offset; +}; + +#endif //CATEGORYCOMBOBOX_H + |