Guitar
Static Public Member Functions | List of all members
misc Class Reference

#include <misc.h>

Static Public Member Functions

static int stricmp (char const *s1, char const *s2)
 
static int strnicmp (char const *s1, char const *s2, size_t n)
 
static QString getApplicationDir ()
 
static QStringList splitLines (QByteArray const &ba, std::function< QString(char const *ptr, size_t len)> const &tos)
 QByteArrayの文字列を行に分割する。 More...
 
static QStringList splitLines (QString const &text)
 文字列を行に分割する。 More...
 
static void splitLines (char const *begin, char const *end, std::vector< std::string > *out, bool keep_newline)
 文字列を行に分割する。 More...
 
static void splitLines (std::string const &text, std::vector< std::string > *out, bool need_crlf)
 
static QStringList splitWords (QString const &text)
 文字列を単語に分割する。 More...
 
static QString getFileName (QString const &path)
 
static QString makeDateTimeString (const QDateTime &dt)
 
static bool starts_with (std::string const &str, std::string const &with)
 
static std::string mid (std::string const &str, int start, int length=-1)
 
static QString normalizePathSeparator (QString const &str)
 
static QString joinWithSlash (QString const &left, QString const &right)
 
static void setFixedSize (QWidget *w)
 
static void drawFrame (QPainter *pr, int x, int y, int w, int h, QColor color_topleft, QColor color_bottomright=QColor())
 矩形のフレームを描画する。 More...
 
static void dump (const uint8_t *ptr, size_t len)
 メモリダンプを16進数で表示する。 More...
 
static void dump (QByteArray const *in)
 
static bool isText (QString const &mimetype)
 
static bool isImage (QString const &mimetype)
 
static bool isSVG (QString const &mimetype)
 
static bool isPSD (QString const &mimetype)
 
static QString abbrevBranchName (QString const &name)
 ブランチ名を短縮形に変換する。 More...
 
static std::string makeProxyServerURL (std::string text)
 
static QString makeProxyServerURL (QString text)
 
static QPoint contextMenuPos (QWidget *w, QContextMenuEvent *e)
 
static bool isExecutable (QString const &cmd)
 
static QString complementRemoteURL (QString url, bool toggle)
 リモートURLの形式を補完または変換する。 More...
 
static QString collapseWhitespace (QString const &source)
 文字列内の連続する空白文字を1つのスペースにまとめる。 More...
 
static bool isValidMailAddress (const QString &email)
 文字列が有効なメールアドレスか判定する More...
 
static bool isValidMailAddress (const std::string &email)
 文字列が有効なメールアドレスか判定する More...
 
static std::string_view trimmed (std::string_view const &s)
 文字列の両端から空白文字を取り除く More...
 
static std::string bin_to_hex_string (const void *begin, const void *end)
 バイナリデータを16進数文字列に変換する More...
 
static std::vector< uint8_t > hex_string_to_bin (std::string_view const &s, const char *sep=nullptr)
 16進数文字列をバイナリデータに変換する More...
 
static int compare (uint8_t const *a, size_t n, uint8_t const *b, size_t m)
 
static int compare (std::vector< uint8_t > const &a, std::vector< uint8_t > const &b)
 

Member Function Documentation

◆ abbrevBranchName()

QString misc::abbrevBranchName ( QString const &  name)
static

ブランチ名を短縮形に変換する。

入力されたブランチ名を短縮形に変換します。ブランチ名の各パス要素の先頭文字を抽出し、 最後のパス要素を除いて短縮形にします。

Parameters
name短縮形に変換する対象のブランチ名。
Returns
短縮されたブランチ名。

◆ bin_to_hex_string()

std::string misc::bin_to_hex_string ( const void *  begin,
const void *  end 
)
static

バイナリデータを16進数文字列に変換する

Parameters
begin
end
Returns

◆ collapseWhitespace()

QString misc::collapseWhitespace ( QString const &  source)
static

文字列内の連続する空白文字を1つのスペースにまとめる。

入力された文字列内の連続する空白文字を1つのスペースにまとめ、結果の文字列を返します。

Parameters
source連続する空白文字をまとめる対象のQStringオブジェクト。
Returns
連続する空白文字が1つのスペースにまとめられたQStringオブジェクト。

◆ compare() [1/2]

int misc::compare ( std::vector< uint8_t > const &  a,
std::vector< uint8_t > const &  b 
)
static
Here is the call graph for this function:

◆ compare() [2/2]

int misc::compare ( uint8_t const *  a,
size_t  n,
uint8_t const *  b,
size_t  m 
)
static

◆ complementRemoteURL()

QString misc::complementRemoteURL ( QString  url,
bool  toggle 
)
static

リモートURLの形式を補完または変換する。

入力されたリモートURLの形式を補完または変換します。 以下の3つのパターンが対象です。

  1. "https://github.com/" で始まるURLを "git@github.com:" 形式に変換
  2. "git@github.com:" で始まるURLを "https://github.com/" 形式に変換
  3. "github" で始まるURLを "https://github.com/" 形式に補完
Parameters
url変換または補完対象のリモートURL。
toggle変換オプション。trueの場合、変換を実行。falseの場合、補完のみ実行。
Returns
変換または補完されたリモートURL。
Here is the call graph for this function:

◆ contextMenuPos()

QPoint misc::contextMenuPos ( QWidget *  w,
QContextMenuEvent *  e 
)
static

◆ drawFrame()

void misc::drawFrame ( QPainter *  pr,
int  x,
int  y,
int  w,
int  h,
QColor  color_topleft,
QColor  color_bottomright = QColor() 
)
static

矩形のフレームを描画する。

指定された位置とサイズの矩形のフレームを描画します。フレームの上辺と左辺は、 color_topleftで指定された色で描画され、右辺と下辺はcolor_bottomrightで指定された色で描画されます。

Parameters
prフレームを描画する対象のQPainterオブジェクトへのポインタ。
x矩形の左上隅のX座標。
y矩形の左上隅のY座標。
w矩形の幅。
h矩形の高さ。
color_topleftフレームの上辺と左辺の色。
color_bottomrightフレームの右辺と下辺の色。

◆ dump() [1/2]

void misc::dump ( const uint8_t *  ptr,
size_t  len 
)
static

メモリダンプを16進数で表示する。

与えられたメモリ領域を16進数でダンプし、表示します。ダンプは、 アドレス、16進数データ、ASCII文字列の3つの列で構成されます。

Parameters
ptrダンプするメモリ領域の先頭ポインタ。
lenダンプするメモリ領域の長さ。

◆ dump() [2/2]

void misc::dump ( QByteArray const *  in)
static
Here is the call graph for this function:

◆ getApplicationDir()

QString misc::getApplicationDir ( )
static

◆ getFileName()

QString misc::getFileName ( QString const &  path)
static

◆ hex_string_to_bin()

std::vector< uint8_t > misc::hex_string_to_bin ( std::string_view const &  s,
const char *  sep = nullptr 
)
static

16進数文字列をバイナリデータに変換する

Parameters
s
sep
Returns

◆ isExecutable()

bool misc::isExecutable ( QString const &  cmd)
static

◆ isImage()

bool misc::isImage ( QString const &  mimetype)
static
Here is the call graph for this function:

◆ isPSD()

bool misc::isPSD ( QString const &  mimetype)
static

◆ isSVG()

bool misc::isSVG ( QString const &  mimetype)
static

◆ isText()

bool misc::isText ( QString const &  mimetype)
static

◆ isValidMailAddress() [1/2]

bool misc::isValidMailAddress ( const QString &  email)
static

文字列が有効なメールアドレスか判定する

Parameters
email
Returns

◆ isValidMailAddress() [2/2]

bool misc::isValidMailAddress ( const std::string &  email)
static

文字列が有効なメールアドレスか判定する

Parameters
email
Returns
Here is the call graph for this function:

◆ joinWithSlash()

QString misc::joinWithSlash ( QString const &  left,
QString const &  right 
)
static
Here is the call graph for this function:

◆ makeDateTimeString()

QString misc::makeDateTimeString ( const QDateTime &  dt)
static

◆ makeProxyServerURL() [1/2]

QString misc::makeProxyServerURL ( QString  text)
static

◆ makeProxyServerURL() [2/2]

std::string misc::makeProxyServerURL ( std::string  text)
static

◆ mid()

std::string misc::mid ( std::string const &  str,
int  start,
int  length = -1 
)
static

◆ normalizePathSeparator()

QString misc::normalizePathSeparator ( QString const &  str)
static

◆ setFixedSize()

void misc::setFixedSize ( QWidget *  w)
static

◆ splitLines() [1/4]

void misc::splitLines ( char const *  begin,
char const *  end,
std::vector< std::string > *  out,
bool  keep_newline 
)
static

文字列を行に分割する。

与えられた文字列を行に分割し、std::vector<std::string>として返します。 分割は、改行文字 ('
' または '\r
') を区切りとして行われます。

Parameters
begin分割する対象の文字列の先頭ポインタ。
end分割する対象の文字列の終端ポインタ。
[out]out分割された行を格納するstd::vectorへのポインタ。
keep_newline改行文字を含めて行を格納する場合はtrue、そうでない場合はfalse。

◆ splitLines() [2/4]

QStringList misc::splitLines ( QByteArray const &  ba,
std::function< QString(char const *ptr, size_t len)> const &  tos 
)
static

QByteArrayの文字列を行に分割する。

与えられたQByteArrayの文字列を行に分割し、QStringListとして返します。 分割は、改行文字 ('
' または '\r
') を区切りとして行われます。 また、与えられた変換関数を使用して、charの配列をQStringに変換します。

Parameters
ba分割する対象のQByteArray。
tos文字列を変換する関数。charの配列とその長さを引数に取り、QStringを返す関数。
Returns
分割された行のリスト。

◆ splitLines() [3/4]

QStringList misc::splitLines ( QString const &  text)
static

文字列を行に分割する。

与えられた文字列を行に分割し、QStringListとして返します。 分割は、改行文字 ('
' または '\r
') を区切りとして行われます。

Parameters
text分割する対象の文字列。
Returns
分割された行のリスト。

◆ splitLines() [4/4]

void misc::splitLines ( std::string const &  text,
std::vector< std::string > *  out,
bool  need_crlf 
)
static
Here is the call graph for this function:

◆ splitWords()

QStringList misc::splitWords ( QString const &  text)
static

文字列を単語に分割する。

与えられた文字列を単語に分割し、QStringListとして返します。分割は、空白文字を 区切りとして行われます。

Parameters
text分割する対象の文字列。
Returns
分割された単語のリスト。

◆ starts_with()

bool misc::starts_with ( std::string const &  str,
std::string const &  with 
)
static

◆ stricmp()

static int misc::stricmp ( char const *  s1,
char const *  s2 
)
inlinestatic

◆ strnicmp()

static int misc::strnicmp ( char const *  s1,
char const *  s2,
size_t  n 
)
inlinestatic

◆ trimmed()

std::string_view misc::trimmed ( std::string_view const &  s)
static

文字列の両端から空白文字を取り除く

Parameters
s
Returns

The documentation for this class was generated from the following files: