Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion src/iptux/DialogBase.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,21 +14,25 @@
#include "config.h"
#include "DialogBase.h"

#include "UiCoreThread.h"
#include "UiModels.h"
#include <glib/gi18n.h>
#include <glog/logging.h>
#include <sys/stat.h>

#include "iptux-utils/output.h"
#include "iptux-utils/utils.h"
#include "iptux/UiCoreThread.h"
#include "iptux/UiHelper.h"
#include "iptux/callback.h"

using namespace std;

namespace iptux {

enum {
InputAreaMinHeight = 50,
};

DialogBase::DialogBase(Application* app, GroupInfo* grp)
: app(app),
progdt(app->getProgramData()),
Expand Down Expand Up @@ -238,6 +242,7 @@ GtkWidget* DialogBase::CreateInputArea() {
GtkWidget *widget, *window;

frame = gtk_frame_new(NULL);
gtk_widget_set_size_request(frame, -1, InputAreaMinHeight);
gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
box = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add(GTK_CONTAINER(frame), box);
Expand Down
21 changes: 12 additions & 9 deletions src/iptux/DialogPeer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@

#include "UiModels.h"
#include "iptux-core/Models.h"
#include <cinttypes>

#include <sys/socket.h>
#include <unistd.h>
Expand All @@ -36,6 +35,10 @@ using namespace std;

namespace iptux {

enum {
InfoAreaMinWidth = 100,
};

/**
* 类构造函数.
* @param grp 好友群组信息
Expand Down Expand Up @@ -276,15 +279,16 @@ GtkWidget* DialogPeer::CreateAllArea() {
g_signal_connect(vpaned, "notify::position", G_CALLBACK(PanedDivideChanged),
&dtset);
gtk_paned_pack1(GTK_PANED(vpaned), CreateHistoryArea(), TRUE, TRUE);
gtk_paned_pack2(GTK_PANED(vpaned), CreateInputArea(), FALSE, TRUE);
gtk_paned_pack2(GTK_PANED(vpaned), CreateInputArea(), FALSE, FALSE);
/* 加入好友信息&附件区域 */
vpaned = gtk_paned_new(GTK_ORIENTATION_VERTICAL);
gtk_widget_set_size_request(vpaned, InfoAreaMinWidth, -1);
g_object_set_data(G_OBJECT(vpaned), "position-name",
(gpointer) "infoenclosure-paned-divide");
position = GPOINTER_TO_INT(
g_datalist_get_data(&dtset, "infoenclosure-paned-divide"));
gtk_paned_set_position(GTK_PANED(vpaned), position);
gtk_paned_pack2(GTK_PANED(hpaned), vpaned, FALSE, TRUE);
gtk_paned_pack2(GTK_PANED(hpaned), vpaned, FALSE, FALSE);
g_signal_connect(vpaned, "notify::position", G_CALLBACK(PanedDivideChanged),
&dtset);
gtk_paned_pack1(GTK_PANED(vpaned), CreateInfoArea(), TRUE, TRUE);
Expand All @@ -298,30 +302,29 @@ GtkWidget* DialogPeer::CreateAllArea() {
* @return 主窗体
*/
GtkWidget* DialogPeer::CreateInfoArea() {
GtkWidget *frame, *sw;
GtkWidget* sw;
GtkWidget* widget;
GtkTextBuffer* buffer;

frame = gtk_frame_new(_("Info."));
g_datalist_set_data(&widset, "info-frame", frame);
gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
sw = gtk_scrolled_window_new(NULL, NULL);
g_datalist_set_data(&widset, "info-frame", sw);
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw),
GTK_SHADOW_ETCHED_IN);
gtk_container_add(GTK_CONTAINER(frame), sw);

buffer = gtk_text_buffer_new(app->getCoreThread()->tag_table());
FillPalInfoToBuffer(buffer, grpinf->getMembers()[0].get());
widget = gtk_text_view_new_with_buffer(buffer);
g_object_set(widget, "left-margin", 10, "right-margin", 10, "top-margin", 10,
"bottom-margin", 10, NULL);
gtk_text_view_set_cursor_visible(GTK_TEXT_VIEW(widget), FALSE);
gtk_text_view_set_editable(GTK_TEXT_VIEW(widget), FALSE);
gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(widget), GTK_WRAP_WORD_CHAR);
gtk_container_add(GTK_CONTAINER(sw), widget);
g_datalist_set_data(&widset, "info-textview-widget", widget);

return frame;
return sw;
}

/**
Expand Down
Loading