#include "font_files_dialog.h"
#include "lib/font.h"
#include "lib/content.h"
-#include "lib/caption_content.h"
+#include "lib/text_content.h"
#include <wx/wx.h>
#include <boost/foreach.hpp>
#include <iostream>
using std::cout;
using boost::shared_ptr;
-FontsDialog::FontsDialog (wxWindow* parent, shared_ptr<Content> content)
+FontsDialog::FontsDialog (wxWindow* parent, shared_ptr<Content> content, shared_ptr<TextContent> caption)
: wxDialog (parent, wxID_ANY, _("Fonts"))
, _content (content)
+ , _caption (caption)
{
_fonts = new wxListCtrl (this, wxID_ANY, wxDefaultPosition, wxSize (550, 200), wxLC_REPORT | wxLC_SINGLE_SEL);
FontsDialog::setup ()
{
shared_ptr<Content> content = _content.lock ();
- if (!content) {
+ shared_ptr<TextContent> caption = _caption.lock ();
+ if (!content || !caption) {
return;
}
_fonts->DeleteAllItems ();
size_t n = 0;
- BOOST_FOREACH (shared_ptr<Font> i, content->caption->fonts ()) {
+ BOOST_FOREACH (shared_ptr<Font> i, caption->fonts ()) {
wxListItem item;
item.SetId (n);
_fonts->InsertItem (item);
FontsDialog::edit_clicked ()
{
shared_ptr<Content> content = _content.lock ();
- if (!content) {
+ shared_ptr<TextContent> caption = _caption.lock ();
+ if (!content || !caption) {
return;
}
int const item = _fonts->GetNextItem (-1, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
string const id = wx_to_std (_fonts->GetItemText (item, 0));
shared_ptr<Font> font;
- BOOST_FOREACH (shared_ptr<Font> i, content->caption->fonts()) {
+ BOOST_FOREACH (shared_ptr<Font> i, caption->fonts()) {
if (i->id() == id) {
font = i;
}