• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 915
  • Last Modified:

mfc: CDHtmlDialog question

Dear expert,

I am working on an application that needs a functionality to compare two files content. I found code for an application that does it. That application renders the results in html format. But I need to be able to select random lines and process the content. So I was going to just redo the application to render the results in e.g. multiline Edit control. But I bumped into CDHtmlDialog. I have never used it, but it seems that it could allow me to render my html in it. Could you please tell me if that dialog will allow me to select lines and get the selected content etc.? Maybe you could give me even an exampe?
Thanks.
0
tantormedia
Asked:
tantormedia
  • 4
  • 4
1 Solution
 
sarabandeCommented:
what is the connection between files to compare and html dialog? are the files html code? are the lines to compare lines of the (text) files or visible text of a web page or web control?

Sara
0
 
tantormediaAuthor Commented:
I wrote about comparing texts only to give the general context of my work. The files are not html code, but the result is rendered as html in a browser. Instead, it should be rendered somehow in a dialog box so that the user could select lines and accept or reject changes of random lines.
I guess I would have to use just two listboxes...
0
 
sarabandeCommented:
there is not much to 'render' when displaying lines in a listbox. read the lines from textfile by calling

     getline(file, strline);

where file is an opened std::ifstream and strline is a std::string. then you can add the strings to a listbox by

   m_listbox1.AddString(strline.c_str());

you also could think of a list control what would allow to add line numbers or a checkbox for each row.

Sara
0
Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
tantormediaAuthor Commented:
Sara, I was thinking about CListCtrl, but not sure if it could handle very long lines. With CListBox, I know how to add horizontal scroll.
0
 
tantormediaAuthor Commented:
Also, I need to have lines of either text or backrgound of different colors based of kind of change detected, if any, e.g. Green for added, Red for deleted, Yellow for modified.
0
 
sarabandeCommented:
you can resize the list control column widths by mouse  and have a horizontal scroll as well. however that is only practical if you not really need to see all text in most cases.

another thought is to have two static text controls with horizontal scrollbar  and no verical scrollbar on them. then add a separate vertical scrollbar as an own control where you would do the vertical scrolling for both textboxes yourself.

Sara
0
 
tantormediaAuthor Commented:
Two static text controls will not let me select randorm records... Or add line numbers, as you said...
0
 
sarabandeCommented:
i once made a own tree control and base class was owner-draw CListBox if i remember correctly. i mean to remember that i added ON_WM_VSCROLL to message map of the control which would need an override of the

   afx_msg void OnVScroll( UINT nSBCode, UINT nPos, CScrollBar* pScrollBar );

you might try whether you get this message handler being called.

Sara
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

  • 4
  • 4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now